리눅스(Linux)를 처음 접하는 사람들에게 가장 헷갈리는 것 중 하나가 바로 디렉토리 구조입니다. 윈도우에서는 보통 C:\ 드라이브 안에 Program Files
, Users
, Windows
등의 폴더가 존재하는데, 리눅스에서는 /
(루트 디렉토리) 아래에 bin
, etc
, home
, var
등의 폴더가 있습니다.
리눅스 시스템은 대부분의 파일을 디렉토리로 구조화하여 관리하는데, 이를 이해하지 못하면 파일을 찾거나 설정을 변경하는 것이 어렵게 느껴질 수 있습니다. 특히, 서버 관리나 소프트웨어 개발을 할 때 어떤 파일이 어디에 위치하는지 아는 것만으로도 생산성을 크게 높일 수 있습니다.
이 글에서는 리눅스 디렉토리 구조를 완벽하게 이해할 수 있도록 각 디렉토리의 역할과 주요 파일을 쉽게 설명하겠습니다. 초보자도 부담 없이 이해할 수 있도록 차근차근 설명하며, 실전에서 자주 사용하는 명령어까지 함께 알아보겠습니다.
리눅스 디렉토리 구조의 기본 개념
리눅스는 파일 시스템이 계층 구조(Tree Structure)로 이루어져 있습니다.
최상위 디렉토리는 /
(루트 디렉토리)이며, 그 아래에 여러 개의 하위 디렉토리가 존재합니다.
리눅스와 윈도우의 차이점
항목 | 윈도우 | 리눅스 |
---|---|---|
최상위 디렉토리 | C:\ |
/ (루트) |
드라이브 개념 | C:\ , D:\ 등 드라이브별로 나뉨 |
모든 디렉토리는 / 아래에 존재 |
실행 파일 경로 | C:\Program Files\ |
/bin , /usr/bin , /sbin 등 |
설정 파일 위치 | C:\Windows\System32 |
/etc |
리눅스에서는 모든 것이 파일로 취급되며, 장치 파일, 프로세스 정보도 파일 시스템의 일부로 존재합니다.
루트 디렉토리 /
– 모든 것의 시작
리눅스의 모든 디렉토리와 파일은 /
(루트 디렉토리) 아래에 존재합니다.
윈도우에서는 여러 개의 드라이브가 존재하지만, 리눅스에서는 모든 것이 하나의 계층 구조 안에 포함됩니다.
주요 특징
/
아래에 모든 시스템 파일, 사용자 파일, 프로그램이 포함됨- 부팅 시 가장 먼저 마운트되는 디렉토리
- 하드디스크뿐만 아니라 USB, 네트워크 드라이브 등도
/
아래 특정 위치에 마운트됨
실전 사용법
cd /
ls -l
위 명령어를 입력하면 /
아래에 있는 주요 디렉토리를 확인할 수 있습니다.
bin
– 필수 실행 파일이 있는 디렉토리
/bin
(binary)은 리눅스 시스템에서 기본적으로 제공하는 실행 파일(명령어)들이 저장된 디렉토리입니다.
주요 특징
- 시스템 부팅 및 운영에 필수적인 명령어들이 포함됨
- 일반 사용자와 root 사용자가 모두 실행할 수 있음
/usr/bin
과는 다르게 부팅 과정에서도 사용될 수 있는 필수 명령어가 위치
주요 파일
파일명 | 설명 |
---|---|
ls |
디렉토리 목록 출력 |
cp |
파일 복사 |
mv |
파일 이동 |
rm |
파일 삭제 |
cat |
파일 내용 출력 |
echo |
문자열 출력 |
grep |
텍스트 검색 |
실전 사용법
/bin/ls
/bin/cp file1 file2
대부분의 경우 ls
처럼 입력하면 실행 가능하지만, 절대 경로 /bin/ls
로 실행할 수도 있습니다.
sbin
– 시스템 관리 명령어
/sbin
은 superuser binary의 약자로, 시스템 관리자(root)가 사용하는 명령어들이 저장된 디렉토리입니다.
주요 특징
- 일반 사용자는 실행할 수 없고, root 사용자(관리자)만 실행 가능
- 시스템 유지보수, 네트워크 설정, 디스크 관리 등에 사용됨
/bin
과 달리 일반적인 사용자는 필요 없는 명령어들이 포함됨
주요 파일
파일명 | 설명 |
---|---|
fdisk |
디스크 파티션 관리 |
ifconfig |
네트워크 인터페이스 설정 |
reboot |
시스템 재부팅 |
shutdown |
시스템 종료 |
mount |
파일 시스템 마운트 |
fsck |
파일 시스템 검사 |
실전 사용법
sudo /sbin/shutdown -h now
위 명령어를 실행하면 시스템이 즉시 종료됩니다.
etc
– 설정 파일이 모여 있는 디렉토리
/etc
는 시스템의 모든 설정 파일이 저장된 디렉토리입니다.
주요 특징
- 프로그램, 네트워크, 사용자 설정 등이 포함됨
- 일반적으로 텍스트 파일 형식으로 저장됨
- 수정 시 관리자(root) 권한이 필요함
- 중요한 시스템 설정 파일들이 포함됨
주요 파일 및 디렉토리
파일/디렉토리 | 설명 |
---|---|
/etc/passwd |
사용자 계정 정보 |
/etc/group |
그룹 정보 |
/etc/hosts |
호스트네임과 IP 주소 매핑 |
/etc/fstab |
부팅 시 마운트할 파일 시스템 정보 |
/etc/network/ |
네트워크 설정 파일 |
/etc/ssh/ |
SSH 설정 파일 |
실전 사용법
cat /etc/passwd
nano /etc/hosts
/etc/hosts
파일을 수정하면 특정 도메인의 IP를 직접 지정할 수도 있습니다.
이 글에서는 /
, /bin
, /sbin
, /etc
등 리눅스 디렉토리 구조의 핵심 부분을 설명했습니다.
이외에도 /home
, /var
, /tmp
, /proc
, /dev
등의 디렉토리가 존재하며, 각각 중요한 역할을 합니다.
리눅스 디렉토리 구조를 이해하면 파일 찾기, 설정 변경, 시스템 유지보수 등이 훨씬 쉬워집니다.
다음 글에서는 보다 고급 개념과 실전 활용법을 다루겠습니다.
자주 묻는 질문(FAQ)
Q1. 리눅스에서 디렉토리 구조를 이해하는 것이 왜 중요한가요?
A1. 시스템 관리, 보안 설정, 파일 검색 및 관리 등을 효율적으로 하기 위해 반드시 알아야 합니다.
Q2. /bin
과 /usr/bin
의 차이점은 무엇인가요?
A2. /bin
에는 필수적인 명령어가, /usr/bin
에는 추가적인 명령어가 포함됩니다.
Q3. /home
디렉토리는 어떤 역할을 하나요?
A3. 각 사용자의 개인 파일이 저장되는 공간입니다.
Q4. /tmp
와 /var/tmp
의 차이는 무엇인가요?
A4. /tmp
는 재부팅 시 삭제되지만, /var/tmp
는 유지됩니다.
Q5. 리눅스에서 설정 파일을 수정하려면 어떻게 해야 하나요?
A5. nano
나 vim
을 사용해 편집하며, 관리자 권한(sudo
)이 필요할 수 있습니다.