반응형
Chapter 3: 필수 파일 관리 도구
- 파일 시스템 계층 (Filesystem Hierarchy Standard, FHS)
- 마운트 (Mount)
- 파일 및 디렉토리 관리
- 하드 링크 (Hard Link)
- 심볼릭 링크 (Symbolic Link)
- 아카이브 (Archive)
- 압축 파일 관리
1. 마운트 작업 (Mounting Filesystems)
1-1. 마운트란?
- **마운트(Mount)**는 파일 시스템을 디렉토리(마운트 포인트)에 연결하여 사용할 수 있도록 설정하는 작업입니다.
- 디스크, 파티션, 네트워크 공유, ISO 이미지 등 다양한 장치를 마운트할 수 있습니다.
1-2. 기본 마운트 명령어
- 마운트 구문:
- <장치>: 마운트할 대상 (예: /dev/sda1).
- <마운트 포인트>: 파일 시스템을 연결할 디렉토리.
- mount [옵션] <장치> <마운트 포인트>
- 마운트 예제:
- 파티션 마운트:
mount /dev/sda1 /mnt
- /dev/sda1을 /mnt 디렉토리에 마운트.
- 읽기 전용 마운트:
mount -o ro /dev/sda1 /mnt
- 읽기 전용으로 /dev/sda1을 마운트.
- ISO 파일 마운트:
mount -o loop file.iso /mnt
- ISO 이미지를 /mnt에 마운트.
- 파티션 마운트:
1-3. 자동 마운트: /etc/fstab
- /etc/fstab 파일은 파일 시스템 마운트를 자동화하기 위한 설정 파일입니다.
- 부팅 시 자동으로 정의된 장치를 마운트합니다.
- /etc/fstab 파일 예제:
- /dev/sda1 파티션을 /mnt 디렉토리에 ext4 파일 시스템으로 마운트.
- /dev/sda1 /mnt ext4 defaults 0 2
- mount -a 명령어:
- /etc/fstab에 정의된 모든 항목을 마운트합니다.
mount -a
1-4. 현재 마운트 상태 확인
- 마운트된 파일 시스템 확인:
mount
- 현재 마운트된 모든 파일 시스템 표시.
- 디스크 사용량 확인:
df -h
- 마운트된 디스크의 용량과 사용 상태 확인.
1-5. 마운트 해제
- 마운트 해제 명령어:
umount <마운트 포인트 또는 장치>
- 예: /mnt 디렉토리의 마운트 해제.
umount /mnt
- 예: /mnt 디렉토리의 마운트 해제.
- 주의 사항:
- 파일 시스템이 사용 중일 경우 마운트 해제가 불가능합니다. 모든 관련 프로세스를 종료해야 합니다.
2. 파일 시스템 계층 이해
2-1. 파일 시스템 계층 표준 (Filesystem Hierarchy Standard, FHS)
리눅스의 파일 시스템은 디렉토리 계층 구조로 이루어져 있으며, 각 디렉토리는 특정 용도를 가지고 있습니다.
- / (루트 디렉토리):
- 모든 파일과 디렉토리의 시작점.
- 중요 디렉토리:
- /bin: 기본 명령어 저장 (e.g., ls, cp).
- /sbin: 시스템 관리 명령어 저장 (e.g., reboot).
- /lib: 라이브러리 파일 저장.
- /dev: 디바이스 파일 저장.
- 중요 디렉토리:
- /etc: 시스템 설정 파일 저장. (e.g., 네트워크 설정, 사용자 계정 정보)
- /home: 사용자별 홈 디렉토리.
- /var: 로그 파일, 동적으로 변화하는 데이터 저장.
- /tmp: 임시 파일 저장.
- /boot: 커널과 부팅 파일 저장.
3. 파일 및 디렉토리 관리
3-1. 파일 관리 명령어
- 파일 생성:
touch file1 # 빈 파일 생성
- 파일 복사:
cp source target # 파일 복사 cp -r dir1 dir2 # 디렉토리 복사
- 파일 이동 및 이름 변경:
mv file1 /tmp/ # 파일 이동 mv file1 file2 # 파일 이름 변경
- 파일 삭제:
rm file1 # 파일 삭제 rm -r dir1 # 디렉토리와 내용 삭제 rm -i file1 # 삭제 전 확인
3-2. 디렉토리 관리 명령어
- 디렉토리 생성:
mkdir dir1 # 디렉토리 생성 mkdir -p /path/to/dir # 중첩 디렉토리 생성
- 디렉토리 내용 확인:
ls # 기본 디렉토리 내용 출력 ls -l # 상세 정보 포함 출력 ls -a # 숨겨진 파일 포함 출력
4. 링크 사용
4-1. 하드 링크와 심볼릭 링크
- 하드 링크:
- 동일한 파일 데이터에 대한 여러 참조를 생성.
- 원본 파일 삭제해도 하드 링크는 삭제되지 않음.
ln file1 link1 # 하드 링크 생성
- 심볼릭 링크 (소프트 링크):
- 파일 경로를 참조하는 링크.
- 원본 파일 삭제 시 링크가 깨짐.
ln -s file1 link1 # 심볼릭 링크 생성
4-2. 링크 확인 및 삭제
- 링크 확인:
ls -l # 링크는 `->`로 표시됨
- 링크 삭제:
rm link1 # 링크 파일 삭제
5. 아카이브 및 압축 파일 작업
5-1. 아카이브 생성 및 추출
- tar 명령어:
- 아카이브 생성:
tar -cvf archive.tar files
- 아카이브 추출:
tar -xvf archive.tar
- 아카이브 생성:
- 압축 옵션 추가:
- gzip:
tar -czvf archive.tar.gz files
- bzip2:
tar -cjvf archive.tar.bz2 files
- gzip:
5-2. 파일 압축 및 해제
- 압축하기:
- gzip:
gzip file # file.gz 생성
- bzip2:
bzip2 file # file.bz2 생성
- gzip:
- 압축 해제:
- gunzip:
gunzip file.gz # 압축 해제
- bunzip2:
bunzip2 file.bz2 # 압축 해제
- gunzip:
퀴즈
- 문제: /dev/sdb1 파티션을 /mnt/data 디렉토리에 읽기 전용으로 마운트하려면 어떤 명령어를 사용해야 하는가?
- 정답: mount -o ro /dev/sdb1 /mnt/data
- 문제: /etc 디렉토리의 모든 파일을 /tmp 디렉토리로 복사하려면 어떤 명령어를 사용해야 하는가?
- 정답: cp /etc/* /tmp/
- 문제: 심볼릭 링크를 생성하는 명령어는 무엇인가?
- 정답: ln -s source linkname
- 문제: archive.tar.gz 파일의 압축을 해제하고 내용을 확인하려면 어떤 명령어를 사용하는가?
- 정답: tar -xzvf archive.tar.gz
반응형
'Computer Science > RHCSA® REDHAT9' 카테고리의 다른 글
[RHCSA #6] Chapter4: 텍스트 파일 관리 (Redhat 9) (0) | 2024.11.24 |
---|---|
[RHCSA #5] Chapter3: tar 정복하기 (Redhat 9) (0) | 2024.11.23 |
[RHCSA #3] Chapter 2: Using Essential Tools 문제 (0) | 2024.11.22 |
[RHCSA #2] Chapter 2: 필수 도구 사용하기 (Using Essential Tools) (0) | 2024.11.22 |
[RHCSA #1] Chapter 1: 버추얼 박스 설치 & 레드햇 운영체제 설치 (0) | 2024.11.22 |