리눅스 및 유닉스의 디렉토리 관리에 대해 알아 보자~

|
728x90

리눅스 및 유닉스의 디렉토리 관리

 

1. 파일의 종류

  • 일반 파일 : 데이터 또는 프로그램 코드와 같은 바이트 스트림의로 구성되며 표준 파일 입출력 시스템 호출을 통해 참조됨.
  • 디렉토리 : 파일명과 파일의 정보를 가지고 있는 I-node number 목록이 있는 특수한 파일로 디렉토리의 명시적인 시스템 호출을 통해 참조됨.
  • 특수 파일 : 표준 입출력 시스템 호출을 통해 참조됨. 
    1. 파이프, 소켓 - 프로세스간 통신
    2. 블럭 장치 파일(버퍼링) - 주변장치 사용을 위한 장치 파일로 블럭 단위 입출력
    3. 문자 장치 파일(비 버퍼링) - 주변장치 사용을 위한 장비 파일로 문자 단위로 입출력

 

2. 디렉토리 관리 기능

  • 디렉토리 삭제(rmdir)
    1. rmdir [-p] directory name : 디렉토리 삭제(-p 옵션은 계층적인 구조를 갖는 디렉토리 모두 삭제)
  • 디렉토리 생성(mkdir)
    1. mkdir [-m mode] [-p] directory name : 디렉토리 생성(-m 옵션은 접근권한을 선언하며, -p 옵션은 계층적인 구조의 디렉토리 생성)
  • 디렉토리 간 이동(cd)
    1. cd directory name : 선택한 디렉토리로 이동
    2. '.' : 현재 디렉토리, '..' : 상위 디렉토리, '~' : 홈 디렉토리, '/' : 루트 디렉토리
  • 디렉토리 정보 확인(ls)
    1. 디렉토리 내에 있는 디렉토리, 파일의 목록을 보여주고 옵션을 통해 만든 시간, 소유주, 크기, 이름, 접근권한 등의 정보 제공
    2. 옵션 : -l(목록 형태로 정보를 자세히 제공), -a(모든 디렉토리와 파일 정보 제공), -R(하위 디렉토리까지 제공), -F(디렉토리인지 어떤 종류의 파일인지 알려 줌), -i(i-node number를 보여 줌)
    3. "ls -alFi" 명령 실행 결과             필드 설명 : ①inode 번호 ②파일종류 및 접근권한 ③하드링크수 ④소유주 ⑤소유자그룹 ⑥크기 ⑦최종수정일 ⑧최종수정시간⑨파일이름
    4. 파일의 종류
    5.  문자값

      디렉토리 및 파일의 종류 

       d

       디렉토리

       b

       블록 장치 파일

       c

       문자 장치 파일

       l

       심볼릭 링크 파일

       p

       네임드 파이프

       s

       유닉스 도메인 소켓

       -

       정규(일반) 파일

    6. 접근권한
      • 권한 구분 - user(소유자권한), group(소유그룹권한), others(기타사용자권한)
      • 접근권한의 종류

        문자값

        접근권한

        r(4)

        파일 읽기 권한, 디렉토리 내 파일명 읽기 권한

        w(2)

        파일 쓰기 권한, 디렉토리 파일 생성/삭제 권한

        x(1)

        파일 실행 권한, 디렉토리 내 탐색을 위해 이동 권한

        -

        r, w, x에 대한 권한이 없음

      • 정규(일반) 파일 생성 시 기본 접근권한은 666(rw-rw-rw-)으로, 디렉토리 생성 시 기본 접근 권한은 777(rwxrwxrwx)로 설정 됨(다만 umask로 지정한 권한만큼 기본 접근권한에서 제거한 권한이 최종 접근 권한이 됨)
    7. 하드링크 수(링크 카운트) : 동일한 i-node를 참조하는 파일의 갯수
    8. 소유자 : 해당 파일 및 디렉토리 소유자를 의미하며 생성한 사요자 계정이 지정(chown 명령을 통해 소유자 변경 가능)
    9. 소유 그룹 : 소유자가 소속된 기본 그룹명이 지정(chgrp 명령을 통해 변경 가능)

 

 

And