리눅스 디렉토리 구조, 설명

Windows에서 온 경우 Linux 파일 시스템 구조가 특히 낯설어 보일 수 있습니다. C : \ 드라이브 및 드라이브 문자는 사라지고 / 및 암호처럼 들리는 디렉토리로 대체되었습니다. 대부분의 경우 세 문자 이름이 있습니다.

FHS (Filesystem Hierarchy Standard)는 Linux 및 기타 UNIX 유사 운영 체제에서 파일 시스템의 구조를 정의합니다. 그러나 Linux 파일 시스템에는 아직 표준에 정의되지 않은 일부 디렉토리도 포함되어 있습니다.

/ – 루트 디렉토리

Linux 시스템의 모든 항목은 루트 디렉토리로 알려진 / 디렉토리 아래에 있습니다. / 디렉토리는 Windows의 C : \ 디렉토리와 비슷하다고 생각할 수 있습니다. 그러나 Linux에는 드라이브 문자가 없기 때문에 이것은 엄격하게 사실이 아닙니다. 다른 파티션은 Windows의 D : \에 있지만이 다른 파티션은 Linux의 / 아래에있는 다른 폴더에 나타납니다.

/ bin – 필수 사용자 바이너리

/ bin 디렉토리에는 시스템이 단일 사용자 모드로 마운트 될 때 존재해야하는 필수 사용자 바이너리 (프로그램)가 포함되어 있습니다. Firefox와 같은 응용 프로그램은 / usr / bin에 저장되고 bash 쉘과 같은 중요한 시스템 프로그램 및 유틸리티는 / bin에 있습니다. / usr 디렉토리는 다른 파티션에 저장 될 수 있습니다.이 파일을 / bin 디렉토리에두면 다른 파일 시스템이 마운트되지 않은 경우에도 시스템이 이러한 중요한 유틸리티를 갖게됩니다. / sbin 디렉토리는 유사합니다. 여기에는 필수 시스템 관리 바이너리가 포함되어 있습니다.

/ boot – 정적 부팅 파일

/ boot 디렉토리에는 시스템을 부팅하는 데 필요한 파일이 포함되어 있습니다. 예를 들어 GRUB 부트 로더의 파일과 Linux 커널이 여기에 저장됩니다. 하지만 부트 로더의 설정 파일은 여기에 있지 않습니다. 다른 설정 파일과 함께 / etc에 있습니다.

/ cdrom – CD-ROM의 기록 마운트 지점

/ cdrom 디렉토리는 FHS 표준의 일부가 아니지만 Ubuntu 및 기타 운영 체제에서 여전히 찾을 수 있습니다. 시스템에 삽입 된 CD-ROM의 임시 위치입니다. 그러나 임시 미디어의 표준 위치는 / media 디렉토리 안에 있습니다.

/ dev – 장치 파일

Linux는 장치를 파일로 노출하고 / dev 디렉토리에는 장치를 나타내는 여러 특수 파일이 포함되어 있습니다. 이것은 우리가 알고있는 실제 파일이 아니지만 파일로 나타납니다. 예를 들어 / dev / sda는 시스템의 첫 번째 SATA 드라이브를 나타냅니다. 파티션을 나누고 싶다면 파티션 편집기를 시작하고 / dev / sda를 편집하도록 지시 할 수 있습니다.

이 디렉토리에는 실제로 하드웨어에 해당하지 않는 가상 장치 인 의사 장치도 포함되어 있습니다. 예를 들어, / dev / random은 난수를 생성합니다. / dev / null은 출력을 생성하지 않고 모든 입력을 자동으로 삭제하는 특수 장치입니다. 명령의 출력을 / dev / null로 파이프하면 해당 장치가 삭제됩니다.

/ etc – 구성 파일

/ etc 디렉토리에는 일반적으로 텍스트 편집기에서 수동으로 편집 할 수있는 구성 파일이 포함되어 있습니다. / etc / 디렉토리에는 시스템 전체의 구성 파일이 포함되어 있습니다. 사용자 별 구성 파일은 각 사용자의 홈 디렉토리에 있습니다.

/ home – 홈 폴더

/ home 디렉토리에는 각 사용자의 홈 폴더가 있습니다. 예를 들어, 사용자 이름이 bob 인 경우 / home / bob에 홈 폴더가 있습니다. 이 홈 폴더에는 사용자의 데이터 파일과 사용자 별 구성 파일이 포함되어 있습니다. 각 사용자는 자신의 홈 폴더에 대한 쓰기 권한 만 가지며 시스템의 다른 파일을 수정하려면 높은 권한 (루트 사용자가 됨)을 얻어야합니다.

/ lib – 필수 공유 라이브러리

/ lib 디렉토리에는 / bin 및 / sbin 폴더의 필수 바이너리에 필요한 라이브러리가 포함되어 있습니다. / usr / bin 폴더의 바이너리에 필요한 라이브러리는 / usr / lib에 있습니다.

/ lost + found – 복구 된 파일

각 Linux 파일 시스템에는 lost + found 디렉토리가 있습니다. 파일 시스템이 충돌하면 다음 부팅시 파일 시스템 검사가 수행됩니다. 발견 된 모든 손상된 파일은 lost + found 디렉토리에 저장되므로 가능한 한 많은 데이터를 복구 할 수 있습니다.

/ media – 이동식 미디어

/ media 디렉토리에는 컴퓨터에 삽입 된 이동식 미디어 장치가 마운트되는 하위 디렉토리가 있습니다. 예를 들어, Linux 시스템에 CD를 넣으면 / media 디렉토리에 디렉토리가 자동으로 생성됩니다. 이 디렉토리에있는 CD의 내용에 액세스 할 수 있습니다.

/ mnt – 임시 마운트 지점

역사적으로 / mnt 디렉토리는 시스템 관리자가 임시 파일 시스템을 사용하는 동안 마운트하는 곳입니다. 예를 들어, 일부 파일 복구 작업을 수행하기 위해 Windows 파티션을 마운트하는 경우 / mnt / windows에 마운트 할 수 있습니다. 그러나 시스템의 모든 위치에 다른 파일 시스템을 마운트 할 수 있습니다.

/ opt – 선택적 패키지

/ opt 디렉토리에는 선택적 소프트웨어 패키지에 대한 하위 디렉토리가 있습니다. 일반적으로 표준 파일 시스템 계층 구조를 따르지 않는 독점 소프트웨어에서 사용됩니다. 예를 들어, 독점 프로그램을 설치할 때 해당 파일을 / opt / application에 덤프 할 수 있습니다.

/ proc – 커널 및 프로세스 파일

/ proc 디렉토리는 표준 파일을 포함하지 않기 때문에 / dev 디렉토리와 유사합니다. 여기에는 시스템 및 프로세스 정보를 나타내는 특수 파일이 포함되어 있습니다.

/ root – 루트 홈 디렉토리

/ root 디렉토리는 루트 사용자의 홈 디렉토리입니다. / home / root에있는 대신 / root에 있습니다. 이것은 시스템 루트 디렉토리 인 /와 다릅니다.

/ run – 응용 프로그램 상태 파일

/ run 디렉토리는 상당히 새롭고 응용 프로그램에 소켓 및 프로세스 ID와 같이 필요한 임시 파일을 저장할 수있는 표준 위치를 제공합니다. 이러한 파일은 / tmp에있는 파일이 삭제 될 수 있으므로 / tmp에 저장할 수 없습니다.

/ sbin – 시스템 관리 바이너리

/ sbin 디렉토리는 / bin 디렉토리와 유사합니다. 일반적으로 시스템 관리를 위해 루트 사용자가 실행하도록 고안된 필수 바이너리가 포함되어 있습니다.

/ selinux – SELinux 가상 파일 시스템

Linux 배포에서 보안을 위해 SELinux를 사용하는 경우 (예 : Fedora 및 Red Hat) / selinux 디렉토리에는 SELinux에서 사용하는 특수 파일이 포함됩니다. / proc과 유사합니다. Ubuntu는 SELinux를 사용하지 않으므로 Ubuntu에이 폴더가 있으면 버그로 보입니다.

/ srv – 서비스 데이터

/ srv 디렉토리에는 "시스템에서 제공하는 서비스에 대한 데이터"가 있습니다. Apache HTTP 서버를 사용하여 웹 사이트를 제공하는 경우 웹 사이트의 파일을 / srv 디렉토리 내의 디렉토리에 저장할 수 있습니다.

/ tmp – 임시 파일

응용 프로그램은 / tmp 디렉토리에 임시 파일을 저장합니다. 이러한 파일은 일반적으로 시스템을 다시 시작할 때마다 삭제되며 tmpwatch와 같은 유틸리티에 의해 언제든지 삭제 될 수 있습니다.

/ usr – 사용자 바이너리 및 읽기 전용 데이터

/ usr 디렉토리에는 시스템에서 사용하는 응용 프로그램 및 파일과 달리 사용자가 사용하는 응용 프로그램 및 파일이 포함됩니다. 예를 들어, 비 필수 응용 프로그램은 / bin 디렉토리가 아닌 / usr / bin 디렉토리에 있으며 비 필수 시스템 관리 바이너리는 / sbin 디렉토리 대신 / usr / sbin 디렉토리에 있습니다. 각각의 라이브러리는 / usr / lib 디렉토리에 있습니다. / usr 디렉토리에는 다른 디렉토리도 포함되어 있습니다. 예를 들어 그래픽과 같은 아키텍처 독립적 파일은 / usr / share에 있습니다.

/ usr / local 디렉토리는 로컬로 컴파일 된 응용 프로그램이 기본적으로 설치되는 위치입니다. 이로 인해 시스템의 나머지 부분이 엉망이되는 것을 방지 할 수 있습니다.

/ var – 가변 데이터 파일

/ var 디렉토리는 / usr 디렉토리에 대한 쓰기 가능한 대응이며 정상 작동시 읽기 전용이어야합니다. 로그 파일과 정상 작동 중에 정상적으로 / usr에 기록되는 기타 모든 내용은 / var 디렉토리에 기록됩니다. 예를 들어 / var / log에서 로그 파일을 찾을 수 있습니다.

Linux 파일 시스템 계층에 대한 자세한 기술 정보는 Filesystem Hierarchy Standard 문서를 참조하십시오.