/ 레드햇

3.2 Essential File Management Tasks

레드햇 rhcsa ls 명령어 df 명령어 findmnt 명령어
https://4am.kr/3-2-essential-file-management-tasks/

df -Th 커맨드

  • df -Th 커맨드는 마운트된 장치에 사용가능한 공간을 보여주는 경우에 사용된다.
  • 이 커맨드는 대부분의 시스템 마운트를 포함한다. 따라서 현재의 시스템 마운트를 보는 데 있어 간편한 방법이다.
  • -h : 사람이 읽을 수 있도록 커맨드의 출력을 요약해주는 옵션이다.
  • 기본적으로 df커맨드는 kibibyte 형태로 출력된다. -h 옵션을 통해 사람이 읽을 수 있는 KiB, MiB, GiB, TiB, 또는 PiB 형태로 나타나게 된다.
  • -T : 각각의 마운트에 대해 파일 시스템 타입을 표시하는 옵션이다.
df -Th 예시

df -Th examples

Filesystem:
  • 사용되고 있는 디스크 장치와 연관된 장치 파일 이름이다.
  • 실제 장치는 '/dev'로 시작한다(장치 파일이 있는 디렉토리를 참조한다).
  • 커널 장치로 램에 임시 파일 시스템을 생성하는데에 사용되는 여러개의 tmpfs 장치를 볼 수 있다.
Type:
  • 사용된 파일 시스템의 타입이다.
Size:
  • 마운트된 장치의 용량이다.
Used:
  • 디스크 장치에서 사용중인 공간이다.
Avail:
  • 디스크 장치에서 사용하지 않은 공간이다.
Use%:
  • 현재 사용하고 있는 디스크 장치에서의 비율이다.
Mounted on:
  • 현재 디바이스가 마운트된 디렉토리이다.

findmnt 커맨드

  • findmnt 커맨드는 마운트들과 각 마운트들간의 관계를 보여준다.
    findmnt examples

  • mount 커맨드를 통해서도 같은 내용을 볼 수 있지만 다음과 같이 복잡하게 보기 힘들게 출력되므로 findmnt 커맨드를 사용하는 것이 좋다.
    mount examples

디렉토리를 관리하거나 작업하기

기타

cd
  • Change Directory
  • 디렉토리로 이동한다.
pwd
  • Paint Working Directory
  • 현재 디렉토리의 전체 경로를 출력한다.
파일과 디렉토리를 생성하기
touch
  • 새 파일을 생성, (이미 파일이 있는 경우)파일의 최종 수정 시간을 변경.
mkdir
  • Make Directory
  • 새로운 디렉토리를 생성한다.
파일과 디렉토리를 복사하기
cp
  • Copy
  • 파일이나 디렉토리를 복사한다.
파일과 디렉토리를 이동하기
mv
  • Move
  • 디렉토리의 이름을 변경하거나 디렉토리를 이동한다.
파일과 디렉토리를 삭제하기
rmdir
  • Remove Directory
  • 디렉토리를 삭제한다. 해당 디렉토리가 비어있어야 삭제가 가능하다.
rm
  • Remove
  • 파일이나 디렉토리를 삭제한다.
  • 디렉토리가 비어있지 않은 경우 rmdir 커맨드가 아닌 rm -rf 커맨드를 통해 삭제해야 한다.
사용 예
  1. 일반 사용자로 쉘을 연다. cd를 입력한다. 그리고 pwd를 입력한다. 이 커맨드는 현재 디렉토리를 출력해 준다. 지금의 경우에는 홈 디렉토리(/home/<username>)를 출력하게 된다.

  2. touch file1을 입력한다. 이 커맨드는 file1 이라는 이름을 가진 빈 파일을 생성한다. 현재 작업하고 있는 디렉토리인 사용자의 홈 디렉토리에 생성된다. 만들고자 하는 어떤 파일이든지 만들 수 있다.

  3. cd /를 입력한다. 이 커맨드는 현재 디렉토리에서 루트 디렉토리로 이동하는 커맨드이다. touch file2를 입력한다. permission denied라는 메시지를 보게 될 것이다. 일반 사용자는 권한이 있는 디렉토리 안에서만 파일을 생성할 수 있다.

  4. cd /tmp를 입력한다. 이 커맨드는 현재 디렉토리에서 /tmp 디렉토리를 이동하는 커맨드이다. /tmp 디렉토리는 모든 사용자가 쓰기 권한을 가지고 있다. 다시 touch file2를 입력한다. 만약 다른 사용자가 file2를 가지고 있지 않다면 커맨드에 의해 생성된 파일을 볼 수 있을 것이다.

  5. 어떠한 인자도 없이 cd를 입력한다. 이 커맨드는 홈 디렉토리로 돌아오게 해주는 커맨드이다.

  6. mkdir files를 입력한다. 이 커맨드는 files라는 이름을 가진 디렉토리를 현재 디렉토리 아래에 생성한다. mkdir 커맨드는 상대경로 기준으로 디렉토리 생성을 한다.

  7. mkdir /home/$USER/files를 입력한다. $USER는 현재 사용자명으로 치환된다. 생성하고자 하는 절대 경로 기준으로 완벽한 인자를 입력하였지만, 현재 존재하는 디렉토리이므로 "file exists" 경고 메시지를 보게 될 것이다.

  8. 방금 생성하였던 디렉토리를 rmdir files를 입력하여 삭제한다. 이 커맨드는 해당 디렉토리가 비어있고, 어떤 파일도 포함하지 않을 때에만 디렉토리 삭제가 가능하다.

파일과 디렉토리 리스팅하기
  • 일반적으로 ls 커맨드를 해당 목적으로 사용한다.
일반적인 ls 커맨드의 옵션
커맨드 사용
ls -l 긴 리스트로 보여준다. 생성일과 권한 같은 파일 속성 정보와 같은 정보를 포함한다.
ls -a 숨겨진 파일을 포함한 모든 파일을 보여준다.
ls -lrt 매우 유용한 커맨드로 수정일 기준으로 정렬해 보여준다. 가장 최근에 수정된 파일이 가장 리스트의 마지막에 있는 것을 볼 수 있다.
ls -d (모든 디렉토리의 내용이 아닌) wildcard를 통해 match된 디렉토리의 이름을 보여준다.
ls -R 현재 디렉토리의 내용을 보여준다. 추가로 서브 디렉토리와 모든 내용을 보여준다. 이 커맨드는 재귀적으로 모든 서브 디렉토리를 내려가게 된다.