Linux 명령어 | Linux 소개 | Linux 디렉터리
드라이브
Windows에서는 “C:”, “D:“와 같은 드라이브라는 개념이 있지만 Unix/Linux에는 없다. 추가 하드 디스크, CD-ROM 등은 /dev/hda
및 /dev/cdrom
과 같은 경로 이름으로 액세스된다.
디렉터리
Windows에서 말하는 “폴더"와 거의 같은 의미이다. 디렉터리(폴더)의 구분은, Windows에서는 \Program Files\Microsoft Office\...
등 백슬래시(\
)를 사용하지만, Unix/Linux
에서는 /home/devkuma/public_html/index.html
등 슬래시(/
) 를 사용한다.
home
└── devkuma
└── pubilc_html
├── image
│ ├── aaa.gif
│ └── bbb.gif
└── js
├── xxx.js
└── zzz.js
루트 디렉터리
디렉터리 계층 구조의 최상위 디렉터리를 루트 디렉터리라고 한다. 첫 번째 슬래시(/)는 루트 디렉터리를 나타낸다.
/
홈 디렉터리
Unix/Linux에서는 각 사용자에게 별도의 디렉터리가 할당된다. 이를 “홈 디렉터리"라고 한다. Linux에서는 “/home/{사용자 이름}”, Mac OS X에서는 “/Users/{사용자 이름}”, 오래된 Unix계 OS에서는 “/usr/{사용자 이름}” 등이 주로 사용되지만, 다른 디렉터리를 사용할 수도 있다.
/home/devkuma
현재 디렉터리
현재 자신이 있는 디렉터리를 현재 디렉터리라고 한다. pwd 명령을 실행하면 현재 어떤 디렉터리에 있는지, 현재 디렉터리를 알 수 있다. 예를 들어, public_html
디렉터리에 있는 상태에서 pwd 명령을 실행하면 다음과 같이 표시도된다.
/home/devkuma/public_html
상위 디렉터리
루트 디렉터리를 제외한 모든 디렉터리에는 상위 디렉터리가 있다. 상위 디렉터리는 ..
로 표시된다. ../xxx.html
은 현재 현재 디렉터리의 상위 디렉터리에 있는 xxx.html
이다. /home/users/../users/devkuma
는 /home/users/devkuma
와 같은 의미가 된다.
경로명
어느 디렉터리안에 있는 파일의 위치를 /home/foo/index.html
(와)과 같이 나타낸 것을 패스명이라고 부른다. 이는 home 디렉터리내의, foo 디렉터리안의, index.html 라고 하는 파일을 나타낸다.
절대 경로명
경로명이 슬래시(/
)로 시작되는 경우는 루트 디렉터리로부터의 상대 위치를 나타낸다. 이는 절대 패스명이나, 풀 패스명이라고 부른다.
URL의 설명과 약간 다를 수 있다. 예를 들어, /home/devkuma/public_html/index.htm
이라는 절대 경로 이름이 URL에서 /index.htm
이라는 가상 경로 이름에 매핑된다.
또, BIGLOBE와 같이, FTP로 로그인할 때와, CGI 스크립트가 동작할 때의 루트 디렉터리가 다른 경우가 있으므로 주의가 필요하다.
상대 경로 이름
경로명이 슬래시(/
) 이외로 시작되는 경우는 현재 디렉터리로부터의 상대 위치를 나타낸다. 이를 상대 경로 이름이라고 한다.
예를 들어, 현재 디렉터리가 /home/users
일 때, devkuma/index.html을 작성하면 /home/users/devkuma/index.html이 표시된다.
가상 경로 이름
이것은 UNIX 용어보다는 WWW 용어인데, http://서버명/패스명
의 /패스명
의 부분을 가상 패스명이라고 부른다. 앞에서 설명한 것처럼 절대 경로 이름과 다르다.
주요 디렉터리
/
리눅스 상에 존재하는 모든 파일과 디렉터리의 최상위에 위치하는 최상위 디렉터리이다.
시스템의 근본이 되는 가장 중요한 디렉터리이다.
문자열 가장 앞의 /는 최상위를 나타내고, 그 이후의 /는 디렉터리 구분자이다. 문자열 마지막의 /는 보통 생략한다.
/boot
리눅스 커널의 메모리 이미지와 부팅 과정에서 필요한 정보 파일들이 있다.
/bin
리눅스의 기본적인 명령어 실행파일이 들어있다.
/root
슈퍼유저 root의 홈 디렉터리이다.
/home
관리자 이외의 사용자의 홈 디렉터리가 생성되는 디렉터리이다.
일반 사용자 계정 생성 시 기본적으로 이 디렉터리 하위에 생성한다.
/etc
시스템이나 사용자 관리를 위한 자료 파일과 관리자용 명령들을 가지고 있다.
시스템 설정 파일, 계정 정보들이 들어있고, backup 1순위 디렉터리이다.
/dev
장치 파일이라고 하는 파일시스템과 하드웨어 간의 인터페이스를 담당하는 파일이 있다.
플로피 디스크, 하드 디스크, CD-ROM 등의 각종 장치 파일들이 들어있다.
/lib
각종 언어를 위한 라이브러리를 가진다.
시스템 공유 라이브러리 디렉터리로, 프로그램에 필요한 라이브러리 파일이 존재한다.
/mnt
Remote Device를 이용하기 위한 디렉터리이다.
시스템에서 사용할 각 장치들의 마운트 포인터가 존재한다.
마운트를 하지 않은 상태에서는 아무런 내용이 나타나지 않지만 특정 디바이스로 마운트 하면 그 내용이 표시된다.
/media
Local Device를 이용하기 위한 디렉터리이다.
/sbin
시스템 운영 및 관리를 위한 명령 파일들이 있고 관리자 만이 사용할 수 있다. 부팅 과정에 필요한 명령들은 여기에 있고 정상 동작 상태에서 필요한 크기가 큰 명령들은 /user/sbin에 있다.
/user
리눅스가 구동하는데 필요한 대부분의 파일이 담겨있고 각 계정의 사용자들이 설치하는 패키지들이 존재한다.
용량이 큰 파일들 존재한다.
/proc
커널과 프로세스 정보를 얻을 수 있는 가상 파일 시스템으로 메모리상에 저장되어 있다.
프로세스의 정보를 나타내는 디렉터리로 ps 명령어로 프로세스 상태를 확인할 경우 이 디렉터리에 포함된 내용을 보여줌
/proc/cpuinfo
cpu에 대한 정보가 들어있다.
/proc/devices
디바이스 드라이버에 대한 정보가 들어있다.
/proc/kmsg
커널로부터 출력하는 메시지가 들어있다.
/proc/meminfp
실제 메모리와 가상 메모리에 대한 정보가 들어있다.
/proc/net
네트워크에 대한 정보가 들어있다.
/tmp
잠시 사용되는 임시 파일들이 저장되는 곳으로 PHP에서 파일 업로드 시 우선 저장되는 곳이고 세션 정보 등이 임시로 보관되는 디렉터리이다.
/var
가변 파일 디렉터리로 시스템 운영 중에 생성되거나 변경되는 파일이 존재한다.
메일, 스풀, 네임서버, 기타 보안사항에 관련되는 내용들이 기록된다.
/var/log
로그파일이 존재하는 디렉터리이다.
- /var/log/cron : 주기 예약 작업 로그
- /var/log/maillog : 메일 로그
- /var/log/messages : 시스템 메시지 로그
- /var/log/secure : 접속 및 인증 관련 로그 (★)
- /var/log/spooler : 프린터 연결 로그
- /var/log/dmesg : 시스템 장치 및 파일 시스템 부팅 메시지 로그
- /var/log/boot.log : 부팅 시 시스템 장치 및 데몬 실행 상태 확인 로그
/var/spool/mail
주고받는 메일이 저장되는 디렉터리이다.