[리눅스] 기본 디렉토리 구조
주요 디렉토리
리눅스의 디렉토리 혹은 파일 시스템 구조는 윈도우와는 조금 다른 구조를 가지고 있습니다.
기본적으로 디렉토리를 구분하는 ‘/’(슬래시)는 리눅스에서 사용하고 윈도우는 반대인 ‘'(역슬래시)를 사용합니다.
디렉토리 또한 그 명칭을 리눅스에서는 디렉토리
(directory), 윈도우에서는 폴더(folder)라고 지칭합니다.
리눅스 시스템의 디렉토리 구조는 전체적으로 역 트리(tree) 구조를 하고 있습니다.
그리고 명령어의 종류와 성격, 사용권한등에 따라 각각의 디렉토리들로 구분됩니다.
리눅스 배포판들은 ‘리눅스 파일시스템 표준’ 인 FSSTND
(LINUX FILE System Standard) 라는 표준을 준수하므로 대부분의 리눅스 배포판들은 그 기본 골격이 같습니다.
/(루트)
최상
의 디렉토리인 루트 디렉토리를 의미하며, 리눅스의 모든 디렉토리들의 시작점
이다.
모든 디렉토리들을 절대경로로 표기할 때에 이 디렉토리로부터 시작해야 한다.
/bin
Binary
의 약자로 기본
적인 명령어
가 저장된 디렉토리.
리눅스 시스템사용에 있어 가장 기본적이라고 할 수 있는 mv, cp, rm… 등과 같은 명령어들이 이 디렉토리에 존재하며
root 사용자와 일반사용자가 함께 사용할 수 있는 명령어 디렉토리이다.
/sbin
bin과 유사하나 ifconfig, e2fsck, ethtool, halt 등과 같이 주로 시스템 관리자 또는 루트 유저들이 사용하는 시스템관리자용
명령어(시스템 점검, 복구, 초기, 종료 명령 등)를 저장하고 있는 디렉토리.
/boot
리눅스 부트로더
(Boot Loader)가 존재하는 디렉토리.
GRUB 과 같은 부트로더에 관한 파일들(grub.conf 등)이 이 디렉토리에 존재한다.
/dev
시스템 디바이스(Device)
파일을 저장하고 있는 디렉토리.
하드디스크 장치파일 /dev/sda, CD-ROM 장치파일 /dev/cdrom 등과 같은 장치파일들이 존재하는 디렉토리이다.
/etc
대부분의 환경설정
파일이 존재하는 디렉토리.
네트워크 관련 설정 파일, 사용자 정보 및 암호정보, 파일 시스템 정보, 보안파일, 시스템 초기화 파일 등 중요 설정 파일들이 위치.
/etc/sysconfig(시스템 제어판용 설정파일),
/etc/passwd(사용자관리 설정파일),
/etc/named.conf(DNS 설정파일) 등과 같은 파일들이 존재한다.
/etc/mai/
sendmail.cf 나 access 파일등의 sendmail 의 설정파일들이 존재하는 디렉토리.
/etc/ssh/
SSH 서비스, 즉 sshd 데몬에서 사용하는 각종 설정파일들이 존재하는 디렉토리.
/etc/squid/
squid 프록시서버의 설정파일들이 저장된 디렉토리.
/etc/samba/
삼바관련 설정파일들이 저장된 디렉토리
/etc/gnome/
GTK+ 정의파일들이 있음
/etc/skel/
계정사용자 생성시의 초기화파일들이 저장된 디렉토리(useradd 에서 사용함)
/etc/rc.d/
부팅레벨별 부팅스크립트파일들이 존재하는 디렉토리.
/etc/rc.d/init.d/
시스템 초기화 파일들의 실제파일들이 존재함.
/etc/pam.d/
PAM 설정 정보파일들이 저장된 디렉토리.
/etc/security
터미널 보안에 관련된 설정이 있음
/etc/httpd/
RPM 으로 설치된 아파치 설정파일(httpd.conf 등)들이 저장된 디렉토리.
/etc/cron.d/, /etc/cron.daily/, /etc/cron.hourly/, /etc/cron.monthly/, /etc/cron.weekly/
모두 크론설정파일이 존재하는 디렉토리임.
/etc/xinetd.d/
xinetd 수퍼데몬에 의해 서비스되는 서비스설정파일이 존재함.
/home
사용자의 홈디렉토리, useradd 명령어로 새로운 사용자를 생성하면 대부분 사용자의 ID와 동일한 이름의 디렉토리가 자동으로 생성됨.
/lib
커널모듈파일
과 라이브러리파일
.
커널이 필요로하는 커널모듈파일들과 프로그램(C, C++ 등)에 필요한 각종 라이브러리 파일들이 존재하는 디렉토리.
/media
DVD, CD-ROM, USB 등과 같은 탈부착이 가능한 장치들의 마운트포인트
로 사용되는 디렉토리.
/mnt
/media 디렉토리와 비슷한 용도로 사용되나, 다른점은 사용자가 직접
마운트를 경로로 사용
/srv
서버를 위한 폴더. FTP/SFTP/RSync와 같은 프로토콜을 이용하여 외부 사용자와의 공유를 위해 사용
/sys
실제 디스크의 물리적 영역이 아닌 RAM을 기반으로 한 파일시스템.
커널 데이터에 대한 구조 속성 등 시스템 전반
에 대한 내용을 제공
/proc
일명 가상파일시스템
이라고 하는 곳으로 현재 메모리에 존재하는 모든 작업들이 파일형태로 존재하는 곳이다.
디스크상에 실제 존재하는 것이 아니라 메모리상
에 존재하기 때문에 가상파일시스템이라고 부른다.
현재 시스템 정보을 제공하며 존재하는 파일들 가운데 실행중인 커널(kernel)의 옵션 값을 즉시 변경할 수 있는 파라미터파일들이 있기 때문에 시스템 운용에 있어 매우 중요한 의미를 가진다.
/root
시스템 최고관리자인 root 사용자의 개인 홈 디렉토리.
/tmp
공용디렉토리
. 시스템을 사용하는 모든 사용자들이 공동으로 사용하는 디렉토리.
/opt
응용프로그램 패키지 설치 장소
.
패키지 매니저가 자체적으로 설치 및 삭제를 수행
/usr
User System Resource
의 약자로 일반사용자들이 주로 사용하는 디렉토리.
각 유저 이름에 맞는 폴더이름이 생성되어 있으며 각 폴더마다 bin/sbin/shared/lib와 같이 각 유저들이 사용할 수 있는 폴더들이 위치
/usr/bin/
일반 사용자들이 사용가능한 명령어 파일들이 존재하는 디렉토리.
/usr/sbin/
/bin 에 제외된 명령어와 네트워크관련 명령어가 들어있는 디렉토리.
/usr/X11R6/
X 윈도우 시스템의 루트 디렉토리.
/usr/include/
C 프로그램에 필요한 헤드파일(*.h) 디렉토리.
/usr/lib/
/usr/bin과 /usr/sbin에 있는 실행 바이너리를 실행하기 위한 라이브러리 디렉토리
/usr/src/
프로그램 소스 및 주로 커널 소스가 저장되는 디렉토리.
/usr/local/
새로운 프로그램들이 설치되는 곳 (windows의 Program Files 와 유사)
/usr/share/man/
명령어들의 도움말을 주는 메뉴얼(manual)페이지 디렉토리.
이 디렉토리에는 시스템에서 사용하는 모든 맨페이지파일(man page)이 존재함.
/var
시스템 운용중에 생성되었다가 삭제되는 동적
인 데이터를 일시적으로 저장하기 위한 디렉토리.
거의 모든 시스템 로그파일은 /var/log 에 저장되고,
DNS 의 zone 설정파일은 /var/named 에 저장되고,
메일파일은 /var/spool/mail 에 저장되며,
크론설정파일은 /var/spool/cron 디렉토리에 각각 저장됨.
/var/tmp/
/tmp 디렉토리와 같은 공용디렉토리.
/tmp 디렉토리와 /var/tmp 디렉토리의 퍼미션은 1777 로서 sticky bit 가 설정되어 있는 공용디렉토리이다.
리눅스 시스템에서 공용디렉토리는 /tmp 와 /var/tmp 둘뿐이다.
/var/log/
시스템로그파일(messages, secure, xferlog 파일등)이 저장되는 디렉토리.
/var/ftp/
vsftp 등과 같은 FTP 서비스를 위한 다운로드될 파일들
/var/named/
BIND 즉, DNS 에서 사용하는 zone 파일들이 저장되는 디렉토리.
/var/spool/mail/
각 계정사용자들의 메일파일이 저장되는 디렉토리.
/var/spool/lpd/
프린트를 하기 위한 임시 디렉토리(스풀링 디렉토리).
/var/spool/mqueue/
발송을 위한 메일 일시저장 디렉토리.
/var/spool/cron/
각 사용자들의 cron 설정파일들이 저장된 디렉토리.
/var/spool/at/
예약작업에 관한 파일들이 저장되는 디렉토리.
/lost+found
부팅시 파일시스템 손상이 되었을 때 사용되는 디렉토리.
평소에는 파일에 이상이 없으면 비어있음
댓글남기기