더보기
올해안에 리눅스 마스터 2급 따기를 목표로 '세종사이버대학교 컴퓨터공학과·AI공학과' 유튜브 채널의 컴퓨터·AI공학과 리눅스마스터2급 자격증 특강 강의를 듣고 내용을 정리한 것입니다.
* 오타나 내용 오류시 댓글 남겨주시면 감사하겠습니다!
** 코드 블록에 명령어는 적혀있으나, 모든 실행 결과를 함께 적지는 않았습니다.
03. 파일 시스템과 프로세스
1. 권한 및 그룹 설정
2. 파일 시스템의 관리
3. 셸(Shell)과 환경 설정
4. 프로세스 개념과 관련 명령어
03. 파일 시스템과 프로세스
2. 파일 시스템의 관리
▶ 파일 시스템의 개요
- 스토리지 장치(디스크) 상에 파일을 관리할 수 있도록 만들어 놓은 구조 혹은 관리하는 방식 → 서버 파일 접근, 가상 파일까지 확대
- 리눅스의 파일 시스템 구조
◦ Super Block: 파일 시스템 관련 정보, 블록크기 및 개수, inode 개수
◦ Group Descriptor Table: Block 그룹 관리
◦ Block Bitmap: 블록의 사용 상태
◦ inode: 파일 이름을 제외한 정보, 고유번호, 파일 형태, 크기, 위치, 소유자 등
▶ 리눅스 파일 시스템 종류와 특징
- etx 파일 시스템
파일 시스템 설명 ext (ext1) ◦ 리눅스 초기에 사용되던 파일 시스템이며 호환성이 없음
◦ ext2의 원형
◦ 2GByte의 데이터와 파일명을 255자까지 지정 가능
◦ 파일 접근에 대한 타임 스탬프, 아이노드 수정 지원 불가ext2 ◦ ext 파일 시스템의 다음 버전
◦ 고용량 디스크 사용을 염두하고 설계된 파일 시스템
◦ 쉽게 호환되며 업그레이드도 쉽게 설계되어 있음★ ext3 ◦ ext2의 확장판
◦ 리눅스의 대표적인 저널링(journaling)을 지원하도록 확장된 파일 시스템
◦ ACL(Access Control List)을 통한 접근 제어 지원ext 4 ◦ ext2 및 ext3와 호환성이 있는 확장 버전
◦ 파일에 디스크 할당 시 물리적으로 연속적인 블록을 할당
◦ 64비트 기억 공간 제한을 없앰
◦ 16 TeraByte의 파일을 지원 - 저널링 파일 시스템
파일 시스템 설명 JFS ◦ Journaling File System의 약자
◦ IBM사의 독자적인 저널링 파일 시스템
◦ GPL로 공개하여 현재 리눅스용으로 개발xfs ◦ eXtended File System
◦ 고성능 저널링 시스템
◦ 64비트 주소를 지원하며 확장성이 있는 자료 구조와 알고리즘 사용
◦ 파일 수에 관계없이 예상치 못한 상황으로부터 신속한 복구와 재시작 가능
◦ 데이터 읽기/쓰기 트랜잭션으로 성능 저하를 최소화
◦ 64비트 파일시스템으로 큰 용량의 파일도 다룰 수 있음
◦ 높은 확장성과 처리량을 가짐ReiserFs ◦ 독일의 한스 라이저(Hans Reiser)가 개발한 파일 시스템
◦ 리눅스용 저널링 파일 시스템 중에서 가장 안정적이라는 평가를 받음
◦ 모든 파일 객체들을 B트리에 저장, 간결한 색인화 된 디렉터리 지원 - 네트워크 파일 시스템
파일 시스템 설명 SMB ◦ 삼바(samba) 파일 시스템을 마운트 지정
◦ Server Message Block (서버 메세지 블록)
◦ 윈도우 계열 OS 환경에서 사용되는 파일/프린터 공유 프로토콜
◦ 리눅스, 유닉스 계정 OS와 윈도우 OS와의 자료 및 하드웨어 공유
◦ 윈도우에서 표준 클라이언트 환경으로 처음부터 구성되었고 NFS 유닉스 표준 응용부터 운용상 쉽다는 장점이 있음CIFS ◦ Common Internet File System
◦ SMB를 확장한 파일 시스템
◦ SMB를 기초로 응용하여 라우터를 뛰어넘어 연결할 수 있는 프로토콜NFS ◦ Network File System (네트워크 파일 시스템)
◦ 썬마이크로시스템(SUN)이 개발한 네트워크 공유 프로토콜
◦ 파일 공유 및 파일 서버로 사용됨
◦ 공유된 영역을 마운트할 때 지정
◦ 하드웨어, 운영체제 또는 네트워크 구조가 달라도 공유 가능
◦ NFS 서버의 특정 디렉터리를 마운트하여 사용할 수 있음 - 지원 가능한 기타 파일 시스템
파일 시스템 설명 FAT ◦ Windows NT가 지원하는 파일 시스템 중 가장 간단한 시스템
◦ FAT로 포맷된 디스크는 클러스터 단위로 할당
◦ 클러스터 크기는 볼륨 크기에 따라 결정
◦ 읽기 전용, 숨김, 시스템 및 보관 파일 특성만 지원
◦ 삼바(samba) 파일 시스템을 마운트 지정VFAT
(Virtual FAT)◦ FAT 파일 시스템이 확장된 것으로 FAT와 호환
◦ FAT보다 제한이 적음
◦ 파일 이름도 최고 255자까지 만들 수 있음
◦ 공백이나 여러 개의 구두점도 포함
◦ 대소문자는 지정한 대로 보존되기는 하나 구별하지는 않음FAT32 ◦ SMB를 확장한 파일 시스템
◦ Windows 95, 98 및 ME와 같은 버전과 다중 부팅을 구성
◦ 32GB보다 큰 파티션을 만들 수 없고 파티션에 4GB를 초과하는 파일을 저장할 수 없음★ NTFS ◦ 윈도우에서 사용하는 파일 시스템
◦ 안정성이 뛰어나고 대용량 파일도 저장
◦ 안정성, 자세한 사용자 제한, 보안성 등이 FAT32보다 뛰어남
◦ 파일 크기 및 볼륨은 이론상으로 최대 16EB(ExtraByte=10^18byte)이나 실질적으로는 2TB로 한계가 있음ISO 9660 ◦ CD-ROM의 표준 파일 시스템
◦ 1988년에 제정된 표준UDF ◦ Universal Disk Format의 약자로 최신 파일 시스템 형식
◦ OSTA(Optical Storage Technology Association)에 의해 개발
◦ 광학 매체용 파일 시스템 표준
◦ ISO 9660 파일 시스템을 대체하기 위한 것으로 대부분 DVD에서 사용
◦ DVD 멀티미디어 디스크들은 MPEG 오디오 및 비디오 스트림을 담기 위해 사용HPFS ◦ OS/2 운영체제를 위해 만들어진 파일 시스템
◦ 1988년 발표, 마이크로소프트와 IBM이 공동 개발
▶ mount - <스토리지> 장치를 연결하여 디렉토리 처럼 사용
- 설정 파일: /etc/fstab (부팅 시 참조하여 마운트), /etc/mtab (마운트된 블록 시스템 정보)
- mount <-옵션> [장치명] [디렉터리명]
◦ 옵션: -a ( /etc/fstab의 내용 모두 마운트), -n ( /etc/mtab 설정정보 기록 안함), -f (마운트 테스트), -t (파일 시스템), -o (remount, ro, rw, sync, noatime 등 추가 설정)
▶ umount - 마운트를 해제하는 명령어
- umount <-옵션> [장치명] [디렉터리명]
◦ 옵션: -a ( /etc/fstab의 내용 모두 마운트 해제), -n ( /etc/mtab 설정정보 기록 안함), -t (파일 시스템)
▶ eject - (미디어) 장치를 해제하고 장치 제거
- eject <-옵션> [장치명]
◦ 옵션: -r (CD-ROM 장치), -f (Floppy 장치)
▶ mkfs - 파일 시스템 생성
- mkfs <-옵션> [장치명]
◦ 옵션: -V (자세한 정보 표시, -t (파일 시스템), -c (Bad Block 검사), -l (지정한 파일명에서 Bad Block 목록 읽기), -v (진행 상태 표시)
▶ mk2fs - ext2, ext3, ext4 리눅스 파일 시스템 생성
- mk2fs <-옵션> [장치명]
◦ 옵션: -t (파일타입), -b (블록 크기, 바이트), -i (inode 당 바이트 수), -j (저널링 파일 시스템 ext3), -R (RAID4)
▶ fsck - 파일 시스템 점검 및 복구
- /lost+found 디렉터리에 손상된 파일 관리 → 정상 복구 된 후 삭제
- fsck <-옵션> [장치명]
◦ 옵션: -A ( /etc/fstab의 모든 시스템 점검), -a (자동 복구), -r (확인 후 복구), -t (파일 시스템)
▶ e2fsck - ext2, ext3, ext4 리눅스 파일 시스템 점검 및 복구
- e2fsck <-옵션> [장치명]
◦ 옵션: -p (자동 복구), -n (모든 확인에 no로 응답), -y (모든 확인에 yes로 응답), -c (Bad Block 점검), -f (문제가 없는 시스템까지 강제 점검)
▶ du - 디렉터리 별 디스크 사용량 확인
- du <-옵션> [파일/디렉터리]
◦ 옵션: -n (용량단위로 표시), -a (모든 파일 대상), -m (MB단위로 표시), -k (KB단위로 표시), -s (총 합계만 표시), -c (사용정보 표시 후 합계 표시)
[rocky@localhost ~]$ du /home
0 /home/rocky/.mozilla
4 /home/rocky/.config/dconf
88 /home/rocky/.local/share/evolution
...
▶ df - 마운트 된 저장장치의 용량 표시 → 파티션 단위로 사용량 확인, 기본 1024byte 블록단위 출력
- df <-옵션> [파일명]
◦ 옵션: -n (용량단위로 표시), -T (파일 시스템 유형 정보, 파티션 정보), -t (파일시스템 유형 표시), -a (모든 파일 시스템), -k (--block-site=1K), -i (inode 사용률)
[rocky@localhost ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 811440 0 811440 0% /dev
tmpfs 840988 0 840988 0% /dev/shm
tmpfs 336396 9208 327188 3% /run
/dev/sda3 78602756 5556860 73045896 8% /
/dev/sda1 1046508 7064 1039444 1% /boot/efi
tmpfs 168196 108 168088 1% /run/user/1000
▶ /etc/fstab - 파일 시스템 정보 저장 및 관리하는 설정 파일, 부팅 시 마운트 정보 포함
[rocky@localhost ~]$ cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Mon Jul 22 07:30:58 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
UUID=aad8799f-99ba-40ff-959e-51a3993afb78 / xfs defaults 0 0
UUID=AAF2-97C2 /boot/efi vfat umask=0077,shortname=winnt 0 2
UUID=0a202d5d-877e-4892-925b-2b36da789af1 none swap defaults 0 0
728x90
'Operating System(OS) > 리눅스 마스터 2급 이론 정리' 카테고리의 다른 글
리눅스마스터 2급 자격증 이론 내용 정리 / 03. 파일 시스템과 프로세스 - 4. 프로세스 개념과 관련 명령어 (0) | 2024.08.07 |
---|---|
리눅스마스터 2급 자격증 이론 내용 정리 / 03. 파일 시스템과 프로세스 - 3. 셸(Shell)과 환경 설정 (0) | 2024.08.06 |
리눅스마스터 2급 자격증 이론 내용 정리 / 03. 파일 시스템과 프로세스 - 1. 권한 및 그룹 설정 (0) | 2024.08.05 |
리눅스마스터 2급 자격증 이론 내용 정리 / 02. 리눅스 기본 명령어 - 4. 기타 명령어 (0) | 2024.08.04 |
리눅스마스터 2급 자격증 이론 내용 정리 / 02. 리눅스 기본 명령어 - 3. 리다이렉션과 정규 표현식 (0) | 2024.08.04 |