Linux/서버 보안(CentOS)

디스크 관리

D4tai1 2018. 11. 11.

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

댓글