Linux 디렉토리 구조
1. / (root) 디렉토리 : 가장 중요한 디렉토리
2. / 디렉토리의 하위 디렉토리
* 각 디렉토리의 역할
bin : 일반 사용자들을 위한 명령어들이 있다.
boot : 부트로더와 부팅을 위한 파일들이 있다.
dev : 장치 파일들이 있다.
etc : 시스템 혹은 프로그램들의 환경 설정 파일들이 있다.
home : 사용자들의 홈 디렉토리
lib : 공유 라이브러리와 커널 모듈이 있다.
media : 이동식 디스크가 마운트 되는 곳이다.
mnt : 파일 시스템이 임시로 마운트 되는 곳이다.
opt : 응용 프로그램이 설치되는 곳이다.
proc : 실행중인 프로세스의 정보와 CPU, 메모리 등의 시스템 정보가 가상의 파일로 저장되어 있다.
sbin : 시스템 관리 명령어들이 있다.
srv : 시스템이 제공하는 서비스를 위한 파일들이 있다.
tmp : 임시 파일들이 저장되는 곳이다.
usr : 응용 프로그램이 설치되는 곳이다.
var : 시스템 운영중 자주 변경되는 파일들이 있다.
lost+found : 부팅시 파일 시스템에 문제가 생길 경우 fsck 명령어로 복구할 때 사용된다.
- bin : /bin 디렉토리는 시스템 관리자가 혹은 일반 사용자가 실행할 수 있는 수많은 명령어들이 들어 있다.
cat : 파일의 내용을 출력
chmod : 파일의 퍼미션(권한) 변경
date : 현재 시간을 출력
env : 현재 환경설정내역 출력
ls : 파일 목록 출력
mkdir : 디렉토리 생성
rm : 파일 삭제
touch : 빈 파일을 생성
vi : 텍스트 편집기
- boot : 이 디렉토리는 파일들이 손상되거나 삭제되면 부팅이 되지 않으므로 특별한 목적이 없다면 건드리지 않는 것이 좋다.
- dev : /dev 디렉토리에는 시스템 디바이스 파일들이 있다. 이곳에는 시스템에 있는 모든 장치가 파일로 표현되어 있다.
udev라는 데몬이 이곳의 디바이스들을 관리한다. 실제 /dev에는 많은 장치들이 파일로 표현되어 있다.
/dev/had : Master IDE 하드디스크
/dev/hdb : Slave IDE 하드디스크
/dev/sda : 첫 번째 SCSI 혹은 S-SATA 하드디스크
/dev/cdrom : cdrom 드라이브
/dev/tty0 : 첫번째 가상 콘솔
- etc : /etc 디렉토리는 시스템 혹은 각종 프로그램들의 환경설정 파일들이 들어있다.
시스템을 관리하다 보면 이곳에 위치한 파일들을 수정하는 일이 많이 발생한다.
간혹 백업을 해두지 않은 상태에서 환경설정 파일을 수정한 후 시스템이 망가져 버리는 경우가 발생하므로
이곳에 위치한 파일을 수정하기 전에 반드시 백업을 해두는 것이 좋다.
/etc/fstab : 파일 시스템 관리
/etc/group : 유저 그룹 관리
/etc/inittab : init 관리
/etc/passwd : 유저 관리
/etc/services : 포트 정보 관리
/etc/issue : 로그인 메시지 관리
/etc/sysconfig/i18n : 시스템 언어 설정
/etc/sysconfig/iptables : 방화벽 설정
/etc/sysconfig/network-scripts/ifcfg-eth0 : 네트워크 카드 설정
- home : /home 디렉토리에는 유저들의 홈 디렉토리가 하위 디렉토리 형식으로 위치한다. 아이디가 testid라는 사용자를
생성하면 홈 디렉토리는 /home/testid가 된다.
- lib : /lib 디렉토리에는 시스템이 있는 프로그램들이 실행할 때 필요한 공유 라이브러리들이 들어있다.
특별한 목적이 없다면 파일들을 변경하거나 삭제하지 않는 것이 좋다.
- media : /media 디렉토리에는 플로피 디스크, CDROM, DVD 등과 같은 이동식 디스크들이 마운트되는 곳이다.
이동식 디스크 삽입시 자동으로 마운트 해주는 Automount가 실행되어 있으면 이동식 디스크가 삽인되면 자동으로 검색하여
/media/미디어이름 형식으로 마운트 된다.
- mnt : /mnt 디렉토리에는 NFS와 같은 파일 시스템이 임시로 마운트 되는 곳이다. CD나 USB 같은 이동식 디스크등은
/media 디렉토리를 이용하는 것이 좋다.
- opt : 애드온 소프트웨어를 설치할 수 있도록 만들어진 디렉토리이다.
- proc : /proc 디렉토리에는 실행중인 프로세스의 정보와 CPU, 메모리등의 시스템 정보가 가상의 파일로 저장되어 있다.
대부분 읽기 전용이나, 일부 파일 중에는 쓰기가 가능한 파일이 있는데 이런 파일을 이용하여 커널의 기능을 변경할 수 있다.
/proc/cpuinfo : cpu의 정보
/proc/devices : 현재 커널에 설정되어 있는 장치의 목록
/proc/dma : 현재 사용중인 DMA 채널
/proc/filesystems : 현재 커널에 설정되어 있는 파일 시스템 목록
/proc/interrupts : 현재 사용중인 인터럽트에 대한 정보
/proc/ioports : 현재 사용중인 I/O 포트 정보
/proc/kmesg : 커널이 출력하는 메시지
/proc/kallsyms : 커널이 사용하는 심벌표
/proc/loadavg : 시스템의 평균 부하량
/proc/meminfo : 메모리 정보
/proc/modules : 현재 사용되고 있는 커널 모듈 목록
/proc/stat : 시스템 상태
/proc/uptime : 시스템이 켜져있는 시간
/proc/version : 현재 커널의 버전
/proc/net/ : 네트워크 관련 정보를 볼 수 있는 파일들이 있는 디렉토리
- root : /root는 root 계정의 홈 디렉토리이다.
- sbin : /sbin 디렉토리에는 시스템 관리자용 명령어들이 있다. 이 곳의 명령어들을 이용하여 시스템의 수정, 복구등
많은 작업을 할 수 있다. 그러므로 일반 사용자가 이곳의 명령어를 쓰지 못하게 보안에 각별히 신경써야 한다.
간혹 악의적인 목적으로 비정상적인 방법으로 root의 권한을 획득하여 이곳의 명령어들을 이용해 시스템을 손상시키는
경우도 있다.
ifconfig : 네트워크 설정/확인
reboot : 시스템 재부팅
shutdown : 시스템 종료
mount : 장치 마운트
fsck : 디스크 점검
mkfs : 디스크 포멧
iptables : 방화벽 설정
- srv : /srv 디렉토리는 서비스 디렉토리로 주로 ftp,http,cvs 등의 데이터가 있다.
- sys : /sys 디렉토리에는 시스템이 필요로 하는 파일들이 있다. 특별한 경우가 아니면 수정/삭제 하지 않는 것이 좋다.
- tmp : /tmp 디렉토리에는 임시로 파일을 만들고 삭제하는 공간이다.
- usr : /usr 디렉토리에는 일반 사용자들을 위한 대부분의 프로그램들이 위치한다.
/usr/bin : 응용 프로그램의 실행 파일들이 있다.
/usr/include : C 언어의 헤더파일이 있다.
/usr/lib : /usr/bin과 /usr/sbin에 있는 실행 파일들을 위한 라이브러리들이 있다.
/usr/local : 대부분의 일반적으로 프로그램은 이곳에 설치한다.(APM)
/usr/share/man : 매뉴얼 페이지를 저장하고 있는 곳이다.
/usr/sbin : 시스템 관리를 위한 명령어들이 있다.
/usr/src : 대부분의 RPM, 소스 파일들을 이곳에 저장하여 사용한다.
/usr/X11R6 : X-window 시스템에 관련된 파일이 있다.
- var : /var 디렉토리에는 log 파일 등 수시로 업데이트되는 파일들이 위치한다. 또한 시스템 운영에 중요한 파일들도
위치 하기 때문에 수정 또는 삭제시 주의해야 한다.
/var/log 에는 각종 log파일이 저장된다. log 파일의 경우 시간이 지날수록 파일의 용량이 증가하므로 주기적인 관리가 필요하다.
만약 로그 파일의 크기가 커진다면 시스템이 느려질 수 있고, 디스크 용량이 남아있지 않다면 시스템 부팅이 되지 않는 경우도
발생한다.
- lost+found : /lost+found 디렉토리에는 부팅시 파일 시스템에 문제가 생길 경우 fsck 명령어로 복구할 때 사용되는 디렉토리이다. 이 디렉토리는 파티션 마다 하나씩 존재하며, 삭제하지 않는 것이 좋다.
댓글