반응형

Linux 디렉토리들


리눅스는 모든 장치들을 파일화 하여 사용하는데, 어쩔 땐 편하지만 또 어쩔 땐 불편한 점이 되기도 한다.

아래는 리눅스 디렉토리들이다.

 



/ : 리눅스에서 최상위 디렉토리이다. 루트 디렉토리라고 한다.

/bin : bin은 binary의 약자로, 우리가 흔히 말하는 "명령어" 들이 들어있고 보통 PATH가 설정된다.(cp, mkdir, rmdir, mv 등등) [기본적인 실행 파일들이 들어있다.]

/etc : 시스템 환경설정 및 부팅과 관련된 여러가지 스크립트 파일들이 들어있다. [리눅스의 설정 파일들이 들어있다.]

/tmp : 각종 프로그램이나 소켓파일, 프로세스 작업을 할 때 임시로 생성되는 파일을 저장하는 공간이다. 보통 모든 유저들에게 접근이 가능하게 한다. [누구나 이곳에 파일을 올릴 수 있는 파일공간 이다.]

/home : root권한이 아닌 개인 사용자들이 파일이나 디렉토리를 만들어서 사용할 수 있는 티렉토리이다. 홈 디렉토리라고 부른다. [일반 사용자들의 아이디와 그룹의 작업공간이다.]

/boot : 부팅 이미지 파일이나 커널 등 시스템 부팅시 필요한 파일이 들어있는 디렉토리이다.(최근 리눅스 버전에서는 GRUB관련 파일도 이 공간에 들어있다.) [부팅시 필요한 파일들이 들어있다.]

/dev : 하드디스크, CD-ROM, 터미널 등과 같이 실제로 존재하는 물리적인 장치들을 파일화 하여 관리하는 디렉토리이다.

/lib : 각종 라이브러리가 저장되어 있는 디렉토리로 커널 모듈도 들어있다.

/lost+found : fsck 명령어를 이용하여 파일 시스템을 복구할 때 작업하는 공간이다.(RHEL7 버전부터는 사용되지 않는다.)

/mnt : CD-ROM, 플로피디스크, 하드디스크, 네트워크 파일 시스템을 마운트 할 때 포인터가 되는 디렉토리이다.(최근 리눅스 버전에서는 마운트할 장치가 늘어남에 따라 /media , /net 등을 추가로 제공한다.)

/misc : 자동 마운트 프로그램인 autofs에 의해 사용되는 디렉토리이다.

/opt : 응용 프로그램들의 설치를 위해 사용되는 디렉토리이다.

/proc : 가상 파일 시스템으로, 시스템에서 운영되고 있는 다양한 프로세스의 상태정보, 하드웨어 정보, 기타 시스템 정보 등을 담고 있다.

/root : 시스템 관리자인 root 사용자의 홈 디렉토리 이다.

/sbin : "System binary"의 약자로서, 주로 시스템 관리에 대한 명령어들이 들어 있는 디렉토리로 보통 슈퍼유저인 root가 사용한다. (시스테 종료 명령, 네트워크 인터페이스 설정 변경, 시스템 점검과 복구 등의 명령어 들이 들어있다.)

/usr : 시스템 운영에 필요한 명령, 응용 프로그램들이 위치하는 공간이다.

(커널 소스, C언어 헤더파일, C 컴파일러와 같은 개발도구들, X-window, 리눅스에서 서버 관리를 위해 사용하는 apache나 MySql,php 등이 모두 이곳의 하위 디렉토리에 설치된다.)

(응용 프로그램들의 명령은 /usr/bin과 /usr/sbin 디렉토리에 있다.)

/var : 시스템 운영 로그 파일과 스풀링과 같은 가변적인 데이터를 보관하는 디렉토리이다.

(메일 서버로 운영하는 경우 도착한 메일이 이곤의 하위 디렉토리에 존재하게 된다.)


+(추가된) 디렉토리들

 

/media : 이동식 장치인 CD-ROM, floppy 등을 마운트 하기 위해서 제공되는 디렉토리이다.

(RHEL3 버전까지는 CD-ROM, floppy 등을 포함해서 하드디스크 등 모든 장치들이 /mnt 디렉토리를 이용했지만 2.6커널 기반인 RHEL4부터 추가로 이 디렉토리를 제공하여 사용한다.)

/selinux : RHEL4 부터 보안 강화를 위해 사용되는 SELinux 관련 디렉토리이다.

/srs : 2.6 커널에서 사용되는 가상 파일시스템인 sysfs에서 사용하는 디렉토리로, USB처럼 hot plug 하드웨어 정보를 가지고 있다. /proc 디렉토리에서 기본적인 하드웨어 정보를 제공하나 이 디렉토리에서는 계층적인 구조로 정보를 제공한다.

/srv : RHEL4 부터 등장한 공간으로, 사이트에서 생성되는 데이터들을 저장하는 공간으로 알려져 있다.

(앞으로 /var 디렉토리의 역할은 /srv 디렉토리로 대체 할 가능성이 있다.)

[FTP, WWW, CVS 등과 같은 서비스에 의해 생성되는 데이터를 저장하는 디렉토리이다.]

/cgroup : cgroup(control group)은 시스템 상에 동작중인 테스크들을 임의로 그룹지어 제어 할 수 있도록 도와주는 기능을 제공하는데 관련 정보를 담고있다.

/lib64 : 64비트용 리눅스(X86_64)를 설치하는 경우에 생성되는 디렉토리로 64비트 기반의 라이브러리 관련 디렉토리이다.

/run : 부팅 이후에 동작중인 프로세스의 런타임(Runtime) 데이터를 저장하고 있는 디렉토리이다.

(RHEL7 버전부터 등장하였고, 프로세스 ID 파일과 락 파일(Lock file)이 생성되고 재부팅 하면  다시 생성한다. RHEL6 이전 버전에서 사용되었던 /var/run 디렉토리와 /var/lock 디렉토리를 합병하였다.)

 


알아두면 좋을 중요한 역할을 하는 하위 디렉토리들

 

/etc/passwd : 사용자에 대한 간단한 정보가 들어있다.

/etc/shadow :사용자들의 패스워드가 들어있다.(아무나 보지 못하도록 설정되어있다.)

/etc/services : 서버가 어떠한 서비스를 하는중인지 보여준다.

/etc/issue.net : 처음 접속 될 때 나오는 화면이다. 

/etc/motd : 로그인 후에 나오는 메세지들이 들어있다.

~/public_html : 각 사용자들의 홈페이지 파일이 들어있다.

(보통 해킹에 성공하면 이 파일을 수정하여, hacked by OOOOOO 라는 문고를 남긴다.

반응형

+ Recent posts