파일 시스템 관리
파일 시스템
- 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는조직하는 체제
하드디스크 -> 서점
파일 -> 책
파일시스템 -> 도서 검색대
파일시스템의 종류
ext -초기 리눅스에서 사용하였던 종류, 현재는 사용하지 않음
ext2 -현재도 사용하며, 긴파일시스템 이름을 지원하는것이 특징
ext3 -저널링 파일시스템, ext2보다 파일시스템의 복수/보안기능을 크게향상되었고 현재 기본 파일시스템
ext4 -16TB까지만 지원하던 ext3과 달리 더큰 용량을 지원하며, 삭제된 파일 복구, 파일 시스템 속도가 훨씬 빨라진 파일시스템
iso9660-DVD/CD-ROM을 위한 표준 파일시스템으로 읽기만 가능
nfs -원격서버에서 파일시스템 마운트할때 사용하는 시스템(Network File System)
swap -스왑파일시스템, 스왑공간으로 사용되는 파일시스템
ufs -Unix system에서 표준 파일시스템으로 사용(Unix File System)
vfat -윈도우95/98등등 ntfs를 지원하기위한 파일시스템
msdos -MS-DOS파티션을 사용하기위한 파일시스템
ntfs -윈도우NT/2000의 nfts를 지원하기위한 파일시스템
hfs -MAC컴퓨터의 hfs를 지원하기위한 파일시스템
hpfs -hpfs를 지원하기위한 파일시스템
sysv -Unix system v를 지원하기위한 파일시스템
ramdisk-RAM을 지원하기위한 파일시스템
XFS -64비트 고성능 저널링 파일 시스템.
CentOS 6.8 버전에서 채택한 기본 파일 시스템 -> EXT4
CentOS 7.x 버전 -> XFS
BYTE -> KB -> MB -> GB -> TB -> PB(페타) -> EB(엑사)
Disk의 종류
- IDE
- SATA
- SCSI
- SAS : 크기가 작고 빠르며 안정적이다. (서버용) -> 비싸다
파티션 (Partition)
- 하나의 물리적인 디스크를 여러개의 논리적인 디스크로 나누는 것
장치명
Windows Linux
C:\ /dev/sda (첫 번째 디스크)
D:\ /dev/sdb (두 번째 디스크)
E /dev/sdc (세 번째 디스크)
F /dev/sdd // 물리 적인 디스크를 의미
G /dev/sde
리눅스 파티션 명칭
ex)
/dev/sda1 -> 첫 번째 디스크 1번 파티션
/dev/sda2 -> 첫 번째 디스크 2번 파티션
/dev/sda3 -> 첫 번째 디스크 3번 파티션
/dev/sdc2 -> 세 번째 디스크 2번 파티션
/dev/sdd4 -> 네 번째 디스크 4번 파티션
리눅스 파티션 특징
- 리눅스 파티션은 주(Praimary) 파티션과 확장 (Extended) 파티션 , 논리 (Logical) 파티션으로 구성된다.
- 디스크 하나당 주 파티션은 최대 4개까지만 생성 가능
ex)
[ 주파티션 ]
[ 주파티션 ][ 주파티션 ][ 주파티션 ]
[ 주파티션 ][ 주파티션 ][ 주파티션 ][ 주파티션 ]
- 4개의 이상의 파티션을 필요할 경우에는 확장과 논리 파티션이 필요하며, 최대 12개까지 생성이 가능하다.
실습 목표 : 디스크 추가를 하여 용량을 증설하는 작업
#fdisk - 디스크 파티션을 설정/삭제/확인 할때 사용하는 명령어
-l : 현재 시스템에 설정된 모든 디스크의정보를 확인
-l [디스크명] : 해당 [디스크명]의 정보를 확인
물리적인 디스크 추가
1. Server-A -> Settings -> Add -> Hard disk
2. 추가한 디스크를 시스템에 인식시키 위해 재부팅 (가상환경)
3. #fdisk -l 추가 한 디스크 확인 (/dev/sdb)
Server-A
20GB /dev/sda
1GB /dev/sdb
구성 예
/dev/sdb1 200M
/dev/sdb2 300M
/dev/sdb3 나머지 전부
Disk /dev/sdb: 1073 MB, 1073741824 bytes // 1GB 추가
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
추가한 디스크에 파티션 생성
ex) #fdisk [디스크명]
#fdisk /dev/sdb
d delete a partition // 파티션 삭제
l list known partition types // 파티션 타입 확인
m print this menu // 도움말
n add a new partition // 파티션 생성
p print the partition table // 설정된 파티션 확인
q quit without saving changes // 저장하지 않고 종료
t change a partition's system id // 파티션 타입 변경
w write table to disk and exit // 저장 후 종료
Command (m for help): n
Command action
e extended // 확장 파티션
p primary partition (1-4) // 주 파티션
주파티션 생성을 위해 "p" 입력
Partition number (1-4):
"1" 첫 번째 파티션 생성
First cylinder (1-130, default 1):
실린더 기준으로 시작 지점을 지정하는 부분
- 현재 디스크가 가질 수 있는 실린더의 값이 1부터 130까지 있다.
- "1" 입력 혹은 "Enter" 입력
Last cylinder, +cylinders or +size{K,M,G} (1-130, default 130):
"+200M" 디스크의 시작 지점부터 200MB까지 지정
"n" 새로운 파티션 생성
"p" 주파티션
"2" 2번 생성
First cylinder (27-130, default 27):
"enter" 입력
Last cylinder, +cylinders or +size{K,M,G} (27-130, default 130):
"+300M" 입력
"n" 새로운 파티션 생성
"p" 주 파티션
"3" 3번 생성
First cylinder (92-130, default 92):
"Enter" 입력
Last cylinder, +cylinders or +size{K,M,G} (92-130, default 130):
"130" 입력 나머지 전부를 할당하기 위해
생성된 디스크 파티션 확인
Device Boot Start End Blocks Id System
/dev/sdb1 1 26 208813+ 83 Linux
/dev/sdb2 27 65 313267+ 83 Linux
/dev/sdb3 66 130 522112+ 83 Linux
파일 시스템 생성
#mkfs // 파일 시스템 생성
ex) #mkfs -t ext4 [장치명]
#mkfs -t ext4 /dev/sdb1
Writing inode tables: done // 파일 시스템 생성 완료 메시지 확인
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
마운트
- 특정 디렉토리에 디스크를 연결(탑재) 하는 것
- 리눅스는 파일 단위로 장치를 관리하기 때문에 새롭게 만든 디스크를 사용하기위해서는 생선한 파티션을 임의의 디렉토리와 연결시켜 사용해야 한다.
마운트 포인트 - 장치와 연결되는 디렉토리
#mkdir /DISK-A
마운트
#mount [옵션] [장치명] [마운트 포인트]
/dev/sdb1 --> /DISK-A
#mount /dev/sdb1 /DISK-A
마운트 확인 명령어
#mount
/dev/sdb1 on /DISK-A type ext4 (rw)
#df (Disk Free)
-h 용량을 사람이 읽기 쉽게 단위를 붙여 준다.
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdb1 198123 1806 185877 1% /DISK-A
#umount - 마운트 해제
#umount [마운트포인트]
주의 사항 - 현재 시스템이 해당 마운트 포인트에 파일을 사용하고 있거나, 디스크의 자원을 사용하는 중에는 언마운트를 할 수 없다.
(1) 디스크 추가
(2) 재부팅 (디스크 인식)
(3) 파티션 생성
(4) 파일 시스템 생성
(5) 마운트 포인트 생성
(6) 마운트
/etc/fstab 파일에 마운트 정보 등록하기
- 부팅 시 마운트할 파일시스템의 위치 및 옵션이 정의되어 있는 파일
- /etc/fstab파일에 기록되어 있는 순서대로 마운트가 되어 디렉토리 구조가 만들어진다.
1번 필드
- 장치명
- 파티션 위치(장치파일 위치), LABEL, UUID가 올 수 있다.
2번 필드
- 마운트 포인트 (연결되는 디렉토리 경로)
3번 필드
- 파일 시스템 타입 (mkfs 명령어로 지정한 파일시스템 종류)
4번 필드
- 마운트 옵션
- 보통 defaults 옵션을 사용하며, 해당 옵션 기본적으로
자주 사용되는 옵션들의 묶어놓은 옵션
defaults == (rw, suid, dev, exec, nouser, async)
5번 필드
- 덤프 생성 유무
- 해당 파티션에 문제 발생 시, 해당 문제에 대한 정보가
저장되어 있는 파일(덤프파일) 생성 유무
0 - 덤프 생성 하지 않음
1 - 덤프 파일 생성
6번 파일시스템 검사 유무
- 부팅 시 해당 장치에 문제가 있는지 검사하는 옵션
0 - 검사 하지 않음
1 - 우선순위 1번 // 대부분 "/" 루트 파티션에 지정
2 - 우선순위 2번 // " / " 파티션 검사 한후, 검사할 파티션
/dev/sdb1 /DISK-A ext4 defaults 0 0
'Server > Linux' 카테고리의 다른 글
Linux // 부팅 프로세스 (0) | 2018.03.21 |
---|---|
Linux // RAID, quota (0) | 2018.03.19 |
Linux // 데몬 (0) | 2018.02.26 |
Linux // proc (0) | 2018.02.26 |
Linux // kill (0) | 2018.02.13 |