TIL) UNIX - 파일 시스템

oatraspberry·2023년 10월 18일
post-thumbnail

💻파일 시스템

  • 운영체제가 디스크(파티션) 상에 파일들을 구성하는 방식
  • 파일과 디렉터리의 집합을 구조적으로 관리하는 체계
  • 다양한 형식의 파일 시스템이 존재한다.
  • 리눅스는 전체 파일 시스템을 1개의 트리 구조로 관리한다.
    • 1개의 루트(/)디렉터리만 있다.

⚠️명령어

1. ls

  • 파일과 서브 디렉터리 목록을 나열(list)하는 명령이다.
  • 옵션에 따라 파일(또는 디렉터리)이 가지는 속성도 확인할 수 있다.
  • ls [options] [names]

2. file

  • 파일의 종류를 알려주는 명령이다.

3. pwd

  • 절대 경로 방식으로 현재 작업 디렉터리를 알려주는 명령이다.

4. cd

  • 작업 디렉터리를 이동하는 명령이다.
  • 디렉터리를 지정하지 않으면 사용자의 홈 디렉터리로 이동한다.

5. mkdir

  • 디렉터리를 만드는 명령이다.

> 옵션

  • -p는 필요한 경우 상위 디렉터리를 만든다.
  • -m은 디렉터리를 만들면서 접근권한을 설정한다.

6. rmdir

  • 디렉터리를 삭제하는 명령이다.
  • 비어 있는 디렉터리만 삭제할 수 있다.
  • 디렉터리를 무조건 삭제하려면 rm -r dir 또는 rm -rf dir를 사용해야 한다.

> 옵션

  • -p는 비어있는 디렉터리를 삭제하면서 부모 디렉터리가 비게 되는 경우 사용한다.

7. cp

  • 파일이나 디렉터리를 복사하는 명령
  • cp [options] file1 file2
    • 대상 파일이 존재한다면 덮어쓰기가 수행된다.
  • cp [options] files directory
    • 마지막 인자가 디렉터리인 경우 여러 파일을 지정된 디렉터리에 같은 이름으로 복사한다.
  • cp -r [options] directory1 directory2
    • 디렉터리를 재귀적으로 복사할 때 -r 옵션을 사용한다.
    • 대상 디렉터리가 존재하는 경우, 그 곳에 디렉터리 자체가 복사된다.

8. mv

  • 파일(또는 디렉터리)의 이름을 변경하는 명령 또는 다른 디렉터리로 이동하는 명령
  • mv [options] source target
    • 파일 혹은 디렉터리 이름을 변경한다. 대상 파일이 존재한다면 덮어쓰기가 수행된다.
    • 대상 디렉터리가 존재하면 서브 디렉터리로 이동된다.
    • 마지막 인자가 존재하는 디렉터리인 경우, 여러 파일을 지정된 디렉터리로 이동한다.

9. rm

  • 파일을 삭제하는 명령
  • 기본적으로 파일만 삭제한다

> 옵션

  • -r 옵션은 디렉터리를 모두 삭제한다.
  • -i 옵션은 삭제 전에 물어본다.
  • -f 옵션은 물어보지 않고 무조건 삭제한다.

10. chmod

  • 파일 소유자가 파일의 접근권한을 변경하는 명령이다.
  • chmod [options] mode files
    • -R 옵션을 디렉터리에 적용하면 포함된 모든 파일과 서브 디렉터리까지 권한을 변경한다.

11. umask

  • 파일이나 디렉터리 접근권한의 기본값을 출력하거나 설정하는 명령

12. chown

  • root 사용자가 파일이나 디렉터리의 소유자 또는 소유 그룹을 변경하는 명령
  • 파일(또는 디렉터리)의 소유자는 파일을 생성한 사용자로, 소유 그룹은 그 사용자가 속한 그룹으로 기본 설정된다.

13. more

  • 파일의 내용을 화면 단위로 출력하는 명령
  • 한 화면을 보여주고 일단 멈춘다.

14. head

  • 파일의 맨 앞 부분을 출력하는 명령(기본 10라인)
  • head [options] [files]

15. tail

  • 파일의 마지막 부분을 출력하는 명령(기본 10라인)
  • tail [options] [files]

16. cat

  • 하나의 파일 또는 여러 파일을 연결(concatenate)시켜 화면에 출력
  • cat [options] [files]

⚠️파일 접근권한

  • 권한이 없는 사용자의 접근을 막기 위해 접근권한을 설정한다.

권한

  1. 읽기(r): 파일의 내용 보기
  2. 쓰기(w): 파일의 내용 수정과 삭제 또는 파일 이름 바꾸기
  3. 실행(x): 파일을 실행하기

⚠️디렉터리 접근권한

권한

  1. 읽기(r): 디렉터리가 가진 파일과 서브 디렉터리의 목록 보기
  2. 쓰기(w): 파일과 디렉터리를 만들거나 삭제하기
  3. 실행(x): 디렉터리로 이동하거나 디렉터리에서 프로그램을 실행하기 또는 파일의 메타 정보 보기
  • 디렉터리를 자유롭게 사용하려면 읽기/쓰기/실행 권한 모두 가져야 한다.
  • 적어도 읽기와 실행 권한을 가지고 있어야 해당 디렉터리로 이동하거나 해당 디렉터리에서 ls -l 명령을 수행할 수 있다.
profile
개발자가 될테야

0개의 댓글