양쪽 이전 판이전 판다음 판 | 이전 판 |
tech:리눅스_파일_시스템_구조 [2016/09/13 04:08] – [/var] V_L | tech:리눅스_파일_시스템_구조 [2021/01/31 06:04] (현재) – [/dev] 49.171.10.160 |
---|
| |
====== 리눅스 파일 시스템 구조 ====== | ====== 리눅스 파일 시스템 구조 ====== |
| |
{{INLINETOC}} | |
리눅스를 설치하면, 상당히 많은 디렉토리가 자동으로 생성된다. 이러한 디렉토리는 대부분의 유닉스와 유사하다. DOS에서는 거의 사용자 임의대로 디렉토리의 이름을 정하여 사용하나, 유닉스에서는 아래와 같은 디렉토리의 이름들과 구조로 대부분 정해져 있다. | 리눅스를 설치하면, 상당히 많은 디렉토리가 자동으로 생성된다. 이러한 디렉토리는 대부분의 유닉스와 유사하다. DOS에서는 거의 사용자 임의대로 디렉토리의 이름을 정하여 사용하나, 유닉스에서는 아래와 같은 디렉토리의 이름들과 구조로 대부분 정해져 있다. |
| |
| =====설명===== |
| |
====/bin==== | ====/bin==== |
/bin은 "binaries"의 약자이며, 실행 파일들이 모여 있다. 이 디렉토리에는 많은 필수적인 프로그램들이 포함되어 있다. "ls /bin"을 해보면 이 안의 파일들을 볼 수 있으며 cp, ls, mv 같은 몇 개의 명령어들은 알아볼 수 있을 것이다. 이것들은 이들 명령어들의 실제 프로그램들이다. 따라서, ‘cp’ 명령을 입력하면, /bin/cp 프로그램이 실행되는 것이다. | /bin은 "binaries"의 약자이며, 실행 파일들이 모여 있다. 이 디렉토리에는 많은 필수적인 프로그램들이 포함되어 있다. "ls /bin"을 해보면 이 안의 파일들을 볼 수 있으며 cp, ls, mv 같은 몇 개의 명령어들은 알아볼 수 있을 것이다. 이것들은 이들 명령어들의 실제 프로그램들이다. 따라서, ‘cp’ 명령을 입력하면, /bin/cp 프로그램이 실행되는 것이다. |
“ls -F”를 사용하면, /bin의 대부분의 파일들에서 "*"가 파일명 끝에 추가되어 있는 것을 볼 수 있을 것이다. 이것은 이 파일이 실행 가능한 파일임을 표시한다. | “ls -F”를 사용하면, /bin의 대부분의 파일들에서 "*"가 파일명 끝에 추가되어 있는 것을 볼 수 있을 것이다. 이것은 이 파일이 실행 가능한 파일임을 표시한다. |
| |
| |
====/dev==== | ====/dev==== |
/dev 안의 파일들은 디바이스 드라이버들이다. 이것들은 디스크 드라이버, 모뎀, 메모리 등과 같은 시스템 디바이스나 자원들을 액세스하는데 사용된다. 예를 들면, 파일들로부터 정보를 읽어볼 수 있는 것과 같이, /dev/mouse를 액세스함으로써 마우스로부터 입력되는 정보를 읽어 올 수 있다. fd로 시작하는 파일 이름들은 플로피 장치들이다. fd0는 첫 번째의 플로피디스크 드라이브이며, fd1은 두 번째이다. 이 이외의 것들은 보통 플로피 디스크의 특정 형태를 표시한다. 예를 들면, fd0H1440은 첫 번째 드라이브(A: 드라이브)의 고밀도 3.5인치 디스켓을 말한다. | /dev 안의 파일들은 디바이스 드라이버들이다. 이것들은 디스크 드라이버, 모뎀, 메모리 등과 같은 시스템 디바이스나 자원들을 액세스하는데 사용된다. 예를 들면, 파일들로부터 정보를 읽어볼 수 있는 것과 같이, /dev/mouse를 액세스함으로써 마우스로부터 입력되는 정보를 읽어 올 수 있다. fd로 시작하는 파일 이름들은 플로피 장치들이다. fd0는 첫 번째의 플로피디스크 드라이브이며, fd1은 두 번째이다. 이 이외의 것들은 보통 플로피 디스크의 특정 형태를 표시한다. 예를 들면, fd0H1440은 첫 번째 드라이브(A: 드라이브)의 고밀도 3.5인치 디스켓을 말한다. |
여기서는 가장 많이 사용되는 디바이스 파일을 열거하였다. | 여기서는 가장 많이 사용되는 디바이스 파일을 열거하였다. ㄹㅇ ㅋㅋ |
| |
=== /dev/console=== | === /dev/console=== |
| |
==== /etc==== | ==== /etc==== |
/etc는 시스템 설정 파일, 프로그램, 유틸리티 등 다양한 프로그램들을 포함하고 있으며 대부분의 파일들은 관리자에 의해 사용되는 것이다. | /etc는 시스템 설정 파일, 프로그램, 유틸리티 등 다양한 프로그램들을 포함하고 있으며 대부분의 파일들은 관리자에 의해 사용되는 것이다. [[리눅스_etc_폴더_이해하기]]참조 |
==== /home==== | ==== /home==== |
/home은 사용자의 홈 디렉토리로서 login하였을 경우, 처음으로 위치하게 되는 디렉토리이다. 예를 들어, /home/larry는 사용자 "larry"의 홈 디렉토리이다. 시스템이 새로 설치되면, 이 디렉토리 안에 아무 것도 포함되어 있지 않다. | /home은 사용자의 홈 디렉토리로서 login하였을 경우, 처음으로 위치하게 되는 디렉토리이다. 예를 들어, /home/larry는 사용자 "larry"의 홈 디렉토리이다. 시스템이 새로 설치되면, 이 디렉토리 안에 아무 것도 포함되어 있지 않다. |
/usr는 실제 작업을 위한 응용 패키지들이 설치되어 있는 디렉토리이다. 따라서 많은 서브디렉토리를 포함하고 있다. | /usr는 실제 작업을 위한 응용 패키지들이 설치되어 있는 디렉토리이다. 따라서 많은 서브디렉토리를 포함하고 있다. |
| |
| |
===/usr/X386=== | |
만약 X 윈도우 시스템을 설치하였다면 이 디렉토리에 설치될 것이다. X 윈도우 시스템은 방대하며, 많은 그래픽 유틸리티와 프로그램들이 그래픽 윈도우로 출력되는 강력한 그래픽 사용자 환경이다. 만약, 마이크로소프트의 윈도우즈나 맥킨토시 환경에 익숙하다면, X 윈도우즈가 아주 친숙해 보일 것이다. /usr/X386 디렉토리는 모든 X 윈도우즈 실행 파일, 사양 파일, 자원 파일들을 포함하고 있다. | |
| |
| |
=== /usr/adm=== | |
/usr/adm은 시스템 관리자들을 위한 것과 시스템의 문제나 에러를 기록해 놓은 다양한 파일들이 포함되어 있다. | |
| |
=== /usr/bin=== | === /usr/bin=== |
=== /usr/etc=== | === /usr/etc=== |
/etc는 시스템 파일과 사양 파일이 있는 것처럼, /usr/etc에는 더많은 유틸리티와 파일들이 있다. 일반적으로 /usr/etc에 있는 파일들은 /etc에 있는 것만큼의 반드시 필요로 한 것들은 아니다. | /etc는 시스템 파일과 사양 파일이 있는 것처럼, /usr/etc에는 더많은 유틸리티와 파일들이 있다. 일반적으로 /usr/etc에 있는 파일들은 /etc에 있는 것만큼의 반드시 필요로 한 것들은 아니다. |
| |
| |
=== /usr/include=== | |
/usr/include는 C 컴파일러를 위한 include 파일을 포함하고 있다. 이 파일은 데이터 구조 이름과 서브루틴, 상수 같은 C로 작성된 프로그램에서 사용되는 내용을 담고 있다. /usr/include/sys에 있는 파일들은 유닉스 시스템 레벨의 프로그래밍을 할 때 사용된다. 만약, C 프로그래밍 언어에 익숙하다면, 여기에 printf() 함수가 선언되어 있는 stdio.h 같은 헤더 파일을 찾을 수 있을 것이다. | |
| |
| |
=== /usr/g++-include=== | |
/usr/g++-include는 C++ 컴파일러의 include 파일들을 포함하고 있다. | |
| |
=== /usr/lib=== | === /usr/lib=== |
=== /usr/src=== | === /usr/src=== |
/usr/src는 시스템에 있는 다양한 프로그램의 컴파일 되지 않은 소스 코드들을 포함하고 있다. 여기서 가장 중요한 것은 /usr/src/linux이며, 이것은 리눅스 커널의 소스 코드를 포함하고 있다. | /usr/src는 시스템에 있는 다양한 프로그램의 컴파일 되지 않은 소스 코드들을 포함하고 있다. 여기서 가장 중요한 것은 /usr/src/linux이며, 이것은 리눅스 커널의 소스 코드를 포함하고 있다. |
| |
| |
=== /usr/tmp=== | |
/tmp와 같은 임시 파일을 위한 또 다른 디렉토리이다. | |
| |
====/var==== | ====/var==== |