320x100
320x100

리눅스 파일시스템의 발전 
- ext : 미닉스의 MFS를 확장한 파일 시스템 
       : 블록과 아이노드 트랙을 다루기 위해 연결리스트 사용


- ext2 : ext를 보완하기 위한 파일 시스템

         : 최대 크기 2TB


- ext3 : 저널링을 도입한 파일 시스템  
         (데이터를 디스크에 저장하기전 저널에 먼저 기록하고 문제 발생시 저널을 참조하여 데이터 복구)


- ext4 : ext3의 파편화 문제를 해결한 파일 시스템


- 기타 파일 시스템 
 : msdos, iso9660 (CD읽기 전용), ufs, SySv, vfat, ntfs, hfs


- 일시적인 목적을 위한 가상 파일 시스템 
 : swap, tmpfs, proc, rootfs

 : tmpfs (메모리에 임시파일 저장)

 : proc (커널의 현재 상태를 나타내기 위함)

 : rootfs (시스템 초기화 및 관리)


- 시스템이 지원하는 파일 시스템 확인

 : /proc/filesystems

 

 

 

 

장치인식

장치인식 / 인식해제 (mount / umount) 
- 마운트 : 외부장치 접근을 위해 리눅스에 인식시키고 특정한 디렉터리와 연결하는 과정 
- mount : 장치를 마운트 시키는 명령어 
- 마운트 포인트 
 : mount명령어에 의해 장치가 마운트 되는 디렉터리 
- 자동마운트 장치의 마운트 포인트
 : /media/사용자/마운트포인트 


mount 
- 외부장치를 인식하여 사용하기 위한 명령어 
- mount -t 파일시스템 장치이름 마운트포인트

 


umount 
- 외부장치의 연결해제 
- umount 장치이름or마운트포인트

 

 

/etc/fstab

- 파일 시스템 마운트 테이블이 기록된 파일

 : 시스템 부팅시 마다 읽어 장치를 마운트

 : 장치이름 / 마운트포인트 / 파일시스템 / 옵션 / 덤프 여부 / 파일 점검 여부

- 옵션  
 : deafults / auto / noauto / ro / rw / user / nouser / exec / noexec / usrquota / grpquota

 : 자동 마운트 및 읽기전용 마운트, 일반 사용자 가능 마운트, 실행파일 실행 허용 마운트 등 
- 덤프여부 
 : 내용 확인을 위해 주기억 장치의 일부를 프린터로 출력하는 것 

 

 

 

디스크관리

하드디스크 설치 과정
- 장착 -> 파티션 생성(fdisk) -> 파일 시스템 생성(mkfs) -> 하드디스크 마운트 (mount) 
 

 

리눅스의 파티션

- 연결방식

 : Primary master / Primary Slave / Secondary Master / Secondary Slave

- 장착된 하드디스크의 디렉터리 표현

 : IDE = /dev/hda~d1~n

 : SATA = /dev/sda~d1~n

=> 몇번째 하드(a~z)의 몇번째 파티션(1~n) 인지 표기

=> ex) /dev/hda1 (첫번째 하드디스크의 첫번째 파티션)

 

 


파티션 
- 네이티브 파티션  
 : 데이터 저장이 가능한 파티션 
 : 주 파티션 (데이터가 저장되는 기본 파티션 / 최대 3개) 
 : 논리 파티션 (주 파티션 3개 이후에 생성되는 파티션 / 최대 12개) 
 : 확장 파티션 (데이터 저장 공간이 아님 / 논리 파티션을 담는 역할)


- 스왑 파티션 
 : 시스템 메모리 공간이 부족할 경우 가상 메모리로 사용되는 파티션 
 : 시스템내에 하나만 존재하며 일반적으로 실제 메모리의 2배 정도로 저장

 



fdisk 디렉터리 / 옵션 장치명

- 파티션 생성 
- 옵션
 : b 크기 = 섹터의 크기

 : l = 정보출력

- 내부명령어

 : d = 파티션 삭제

 : l = 정보출력 (m = 상세출력 / p = 테이블 내용 출력)

 : n = 파티션 생성

 : q = 작업 내용 저장하지 않고 종료 (w = 설정 정보 저장하고 종료)

 : v = 파티션 테이블 검사

=> ex) fdisk /dev/sdb -> 내부명령어 사용

 

 


mkfs 파일시스템 디렉터리 / 옵션 장치명
- 파일 시스템 생성 
- 옵션
 : t 파일시스템 디렉터리 = 파일시스템 지정 (기본값 ext2)

=> 약식 사용 : mkfs.ext4 / mkfs.ext3 

=> ex) mkfs -t ext4 /dev/sdb1

 

 

 

디스크 마운트

1. /mnt 디렉터리내에 디렉터리 생성

2. mount -t 파일시스템 디렉터리(/dev/) 디렉터리(/mnt/)

  => mount -t ext4 /dev/sdb1 /mnt/sdb1

3. 마운트 정보 출력

 : /etc/fstab

 



디스크 쿼터 
- 사용자마다 일정한 크기의 디스크 공간과 생성 가능한 파일 수 제한

 : 특정 사용자의 과다한 디스크 사용을 방지하기 위한 기능 
- 디스크 쿼터 종류

 : 사용자쿼터 / 그룹쿼터 
- 과정

 : 쿼터 속성 설정 -> 쿼터 비활성화(quoataoff) -> 쿼터 데이터베이스 파일 생성(quotacheck) -> 쿼터 활성화(quotaon)

   -> 사용자에 쿼터 지정 (edquota)

- 쿼터 정보 확인

 : quota

- 다른 사용자에게 쿼터 복사

 : edquota -p

- 쿼터 정보 출력

 : repquota

 

 

 

파일 시스템별 쿼터 속성 설정 
- ext2 
 : 사용자 쿼터 = usrquota 
 : 그룹 쿼터 = grpquota 
- ext3 / ext4 
 : 사용자 쿼터만  
  = usrjquota=aquota, user, jqfmt=vlsv0 
 : 그룹 쿼터만  
  = grpjquota=aquota, group, jqfmt=vlsv0 
 : 사용자와 그룹 모두  
  = usrjquota=aquota, user, grpjquota=aquota, group, jqfmt=vlsv0 

 

 

 

quotaoff 옵션 / quotaon 옵션 파일시스템이름
- 쿼터 비활성화 / 활성화

 : 쿼터 정보 지정 및 기본 정보를 변경을 위해 비활성화 필요

 : 디스크 쿼터를 시스템에 적용하기 위해 활성화 필요
- 옵션

 : a = /etc/fstab에 지정된 모든 파일 시스템의 쿼터 종료

 : u / g = 사용자 쿼터 정보 확인 / 그룹 쿼터 정보 확인

 : v = 쿼터 과정중의 메세지 출력

 



quotacheck 옵션
- 쿼터에 대한 정보 확인 / 데이터베이스 파일 생성 
- 옵션

 : a / u / g = 모든 / 사용자 / 그룹

 : v = 과정에서 발생하는 메시지 출력

 : m = 재마운트 방지

 


edquota 옵션 사용자or그룹계정

- 사용자나 그룹계정에 쿼터 지정
- 옵션

 : u / g = 사용자 / 그룹 쿼터 지정

 : t = 유예시간 지정

 : p = 설정 복사 (쿼터 복사)
- 출력결과 
 : Filesystem = 파일시스템 이름

 : blocks (soft, hard) = 현재 사용자가 사용중인 디스크 용량(kb)

   soft / hard = 지정 크기 초과시 경고메시지 / 지정 크기만의 공간만 사용 가능

 : inodes (soft, hard) = 현재 사용자가 생성한 파일의 수 

  soft / hard = 지정 파일수 초과시 경고메시지 / 지정한 파일수만 생성 가능

 


quota 옵션 사용자or그룹이름
- 쿼터 정보 확인 
- 옵션

 : u /g

 

 


repquota 옵션 사용자or그룹이름
- 모든 사용자의 쿼터 정보 출력 

- 옵션

 : a / u / g = 모든 / 사용자 / 그룹

 : v = 사용량이 없는 쿼터의 정보도 출력

 

 

 

 

기타 디스크 관리명령어

df [옵션] [파일시스템]
- 파일시스템의 사용현황과 가용현황 등 정보 출력 
- 옵션

 : k / m / h = 용량을 kb / mb / kb mb gb 단위로 출력

 : T = 파일 시스템의 종류 출력

 : t 파일시스템 = 지정된 파일 시스템의 용량 출력

 



du [옵션] [디렉터리명] 
- 특정 디렉터리의 차지용량 출력 
- 옵션

 : a 디렉터리 = 지정된 디렉터리와 하위 디렉터리에 대해 출력 

 : s = 디렉터리 내용을 제외한 전체용량만 출력

 : k / m / h = 용량을 kb / mb / kb mb gb 단위로 출력

 

 


dmesg 
- 시스템 부팅시 시스템 장치인식과 오류 검사, 파일시스템 마운트 수행하는데 이를 출력 
 : 가장 최근에 부팅시 발생한 메시지 확인 

 


fsck 옵션 디바이스이름
- 파일시스템 검사 
- 옵션
 : a = 시스템 검사 후 문제 발견시 자동 복구

 : y = 모든 질문에 자동 yes

 : c = 배드블록을 검사하여 배드 블록 발견시 배드 블록 리스트에 추가 
 : f = 강제검사

 : v = 검사 과정 출력

 



 e2fsck 옵션 디바이스이름
- fsck의 확장 명령어로, ext2, ext3, etx4 를 검사하기 위한 명령어 
- 옵션
 : q = 검사 후 자동 복구

 : y = 모든 질문에 자동 yes

 : c = 배드블록을 검사하여 배드 블록 발견시 배드 블록 리스트에 추가 
 : j ext3 or ext4 = 저널링 파일 시스템 지정

 : f = 강제검사

 : v = 검사 과정 출력
- 파일 시스템 복구 
 : e2fsck -b 백업슈퍼블록위치 디바이스이름

 



badblocks [옵션] 디바이스이름
- 배드 블록 검사 결과 출력 
- 옵션

 : o 파일명 = 검출된 배드 블록의 번호를 파일에 저장

 : v = 점검 과정 출력

 

 

기본 슈퍼 블록 
- 파일 시스템에 대한 전체적인 정보를 가지는 블록 
 : mke2fs 명령어 실행시 생성 
 : 손상시 파일 시스템 사용 불가 

 


백업 슈퍼 블록 
- 기본 슈퍼 블록의 손상을 대비해 유지하는 블록 
 : 백업 슈퍼 블록을 이용하여 기본 슈퍼 블록 복구 
  = 기본 슈퍼 블록의 번호를 알아야함 

 


dumpe2fs 
- 백업 슈퍼 블록의 번호 추출

 : 파일 시스템의 정보 출력가능

=> dumpe2fs /dev/sdb1 | grep superblock

 

 


dd if=파일명 of=파일명 bs=바이트수 [count=횟수]
- data duplicator의 약어로 데이터 복사를 위한 명령어
 : 데이터 복사 / 두 디스크의 크기가 같아야함 
- if=읽어들일 파일 of=읽어들일 내용을 출력할 파일

  bs=한번에 읽어들일 바이트수 count=복사할 블록의 수

300x250
728x90