디스크 관리
1. 디스크 명령어
1) df
[1] disk free의 약자로 디스크의 여유공간을 확인할 수 있다.
[2] 파일시스템, 디스크 크기, 사용량, 여유공간, 사용률, 마운트된 위치를 순서대로 확인할 수 있다.
[3] -T 옵션은 파일 시스템의 타입도 보여준다.
[4] -h 옵션은 사용자가 보기 쉽도록 KB, MB, GB 단위로 보여준다.
2) fdisk -l
[1] 모든 디스크의 파티션 설정내용을 확인할 수 있다.
[2] fdisk는 파티션테이블을 관리하는 명령어로 파티션을 생성, 수정, 삭제한다.
[3] 명령어는 /sbin/fdisk에 위치한다.
3) 장치
[1] /dev에 위치한다. (dev는 device의 약자이다.)
[2] 여러 개의 디스크가 있는 경우
▶ 첫 번째 디스크는 /dev/sda, 두 번째 디스크는 /dev/sdb 와 같이 앞은 동일하며 끝자리만 알파벳 순서대로 부여된다.
[3] 하나의 디스크를 가지고 여러 개의 파티션으로 나눌경우
▶ /dev/sda1, /dev/sda2, /dev/sda3 과 같이 디스크이름은 동일하지만 뒤에 숫자를 붙여서 표시한다.
[4] 하나의 디스크를 여러 개의 파티션으로 구분하여 사용하거나,
디스크 전체를 사용하더라도 파티션 작업은 반드시 해야한다.
▶ Windows의 그림으로 이해를 해본다면 위와 같이 구성된다.
4) 사상
[1] 리눅스는 윈도우와 달리 모든 장치를 파일로 인식한다.
[2] 심지어 RAM과 같은 메모리도 파일로 인식한다.
[3] 5)에서 하드디스크나 플래시메모리를 추가하는 과정을 설명할 예정이다.
5) 디스크 추가과정(/dev/sdb로 예를 들려고 한다.)
※ Windows를 사용하다보면 과정이 생각보다 복잡하고 어려울 수 있다.
해서 이해를 돕기 위해 Windows와 비교하면서 설명하려고 한다.
[1] 먼저 물리적으로 하드디스크나 usb를 연결한다.
[2] 이렇게 연결된 장치는 /dev/sdb에 위치하며 b자리는 알파벳 순서대로 부여받게된다.
▶ 여기까지 물리적인 연결은 끝난 것이다. (즉, 선만 연결한 상태이다.)
[3] /dev/sdb의 디스크를 사용하려면 최소한 1개 이상의 파티션을 나누어야 한다.
[4] fdisk 명령어를 이용해서 파티션을 나누게되면 논리적 파티션이 생성되게 된다.
▶ 여기까지 파티션 작업(분할)만 한 것이다. (즉, /dev/sdb1 첫 번째 파티션이 생성된 것이다.)
▶ 위 그림의 빨간글씨로 현재상태라고 되있는 것과 같이 말 그대로 분할만하고 할당되지 않은 상태이다.
[5] mkfs.ext4 명령어를 이용해서 파일시스템을 생성한다.
▶ 이제는 /dev/sda1에 ext4라는 파일시스템이 생성되었다.
▶ 그러나 파일시스템은 생성했지만 그냥 사용할 수 없다.
▶ 위 그림의 빨간글씨로 현재상태라고 되있는 것과 같이 파티션 작업한영역에 ext4 파일시스템을 생성한 상태이다.
▶ 그림에 나오는 Windows의 경우 NTFS 파일시스템을 사용한다.
[6] 새로운 디렉터리를 생성한 후 mount 명령어를 이용하여 디렉터리를 연결시켜준다.
▶ 이렇게 되면 생성한 디렉터리에서 작업을 할 경우 새로 추가한 디스크에 저장되게 된다.
▶ Windows로 말하면 USB를 연결하면 내컴퓨터에 새로운 장치가 인식되어 작업을 할 수 있게 된 것과 동일하다.
▶ 위 그림과 같이 새로운 디렉터리에 장치를 연결한 상태이다.
[7] unmount 명령어를 이용하면 디렉터리와 디스크의 연결을 끊을 수 있다.
▶ Windows로 말하면 USB를 연결해서 사용하다가 꺼내기하는 것과 비슷하다.
▶ 위 그림과 같이 꺼내기를 하면 연결만 끊어진다.
3) 시연
[1] 하드디스크 추가
▶ virtualbox로 사용하고 있기 때문에 virtualbox에서 디스크를 추가해주었다.
▶ 만약 vmware를 사용한다면 add를 누르고 Hard Disk를 추가한다.
[2] 디스크 상태 확인
▶ [df] 명령어로 디스크 상태를 확인한다.
▶ [df -Th] 명령어로 조금 편하게 확인이 가능하다.
▶ -T옵션은 type도 보겠다는 의미이다.
▶ -h옵션은 직관적으로 용량을 보겠다는 의미이다.
[3] 디스크의 설정내용 확인
▶ [fdisk -l] 명령어로 디스크의 설정내용을 확인한다.
▶ /dev/sda를 /dev/sda1, /dev/sda2로 파티션이 분할되어 있는 것을 확인할 수 있다.
▶ /dev/sdb의 경우 장치는 연결됬지만 파티션 작업을 하지 않아 사용되지 않고 있다.
[4] 파티션 작업(1)
▶ [fdisk /dev/sdb] 명령어로 /dev/sdb 디스크를 파티션작업을 한다.
▶ p(print)를 눌러서 현재 설정된 파티션 정보를 출력한다.
[5] 파티션 작업(2)
▶ 출력된 정보를 보니 파티션 작업이 하나도 되지 않은 것을 확인할 수 있다.
▶ n(new)을 눌러서 새로운 파티션 분할을 한다.
[6] 파티션 작업(3)
▶ p(primary partition)를 누르고 파티션번호를 1번으로 선택한다.
▶ 시작 실린더의 기본 값으로 설정한다.
▶ 마지막 실린더의 기본 값으로 설정한다.
▶ 즉, 디스크 전체를 다 쓰겠다는 말이다.
▶ 만약 1GB를 2개로 분할하려면 [+500M] 과 같이 적어야 한다. (숫자만 적을경우 생각한 단위랑 차이가 있을 수 있다.)
[7] 파티션 작업(4)
▶ w(write)를 눌러 파티션 설정 저장 후 종료한다.
[8] 파일시스템 생성
▶ [mkfs -t ext4 /dev/sdb1] 명령어를 이용하여 /dev/sdb1 파티션에 ext4파일시스템을 생성한다.
▶ -t 옵션은 파일시스템의 타입을 의미하며 [mkfs.ext4 /dev/sdb1] 명령어와 동일하다.
▶ make file system의 약자이다.
[9] 새로운 디렉터리 생성 후 마운트
▶ test디렉터리를 생성 후 [mount /dev/sdb1 /root/test] 명령어를 이용하여 디스크를 사용할 수 있도록 한다.
▶ /root/test로 접근 시 새로 생성한 하드디스크의 파티션에 기록이 된다.
[10] 연결해제
▶ [umount /dev/sdb1] 명령어로 디렉터리와 장치의 연결을 끊을 수 있다.
'Linux > 서버 보안(CentOS)' 카테고리의 다른 글
로그관리 (0) | 2018.11.23 |
---|---|
디스크 암호화 (0) | 2018.11.12 |
파일암호화[비대칭키] (0) | 2018.11.11 |
파일암호화[대칭키] (0) | 2018.11.11 |
접근제어[사용자] (0) | 2018.11.11 |
댓글