장치 - 디스크
파티션 : 하나의 물리적인 디스크를 여러개의 논리적인 디스크로 분할하는 것을 의미한다.
파티션의 종류
① 주(primary) 파티션
- 하드디스크에는 하나 이상 존재해야 한다.
- 하나의 디스크에는 최대 4개까지 생성가능하다.
- 부팅용도로 사용이 가능하다.
- 파티션 번호 : 1 ~ 4
- 확장 파티션을 사용할 경우에는 사용가능한 주 파티션은 최대 3개가 된다.
② 확장(Extended) 파티션
- 하나의 물리디스트에 1개만 생성 가능하다.
- 논리 파티션을 생성할 수 있는 공간이다.
- 파일 시스템을 생성할 수 없다. -> 포맷할 수 없다.
- 파티션 번호 : 1 ~ 4
③ 논리(Logical) 파티션
- 갯수의 제한없이 분할이 가능하다.
- 부팅용도로 사용 불가능하다.
- 파티션 번호 : 5 ~
하드디스크 유형
- /dev/hd : IDE 방식의 장치
- /dev/sd : SCSI(스카시), SATA(사타) 방식의 장치
ex) /dev/sd a 1
① ② ③
① sd : 하드디스크 유형을 말한다.
② a : 디스크의 순서이다. 순서대로 a, b, c... 로 표기된다.
③ 1 : 파티션 번호를 나타낸다. (1 ~ 4 번은 주파티션과 확장파티션이고, 5번부터는 논리파티션이다.)
- fdisk : 디스크 파티션을 확인하고 추가, 삭제하는 명령이다.
파일시스템 종류
1. 윈도우즈 : NTFS, FAT16/32/64, exFAT, ...
2. 리눅스 : ext2/3/4, xfs, vfs, ...
3. 유닉스 : UFS
4. 맥 : HFS
- mkfs : 파일시스템을 생성하는 명령이다. 파일을 기록하기 위한 방법
- mount (마운트) : 파일시스템이 다른 디스크를 /의 하위 디렉터리로 연결하여 사용가능하게 해주는 명령이다.
- umount : 파일시스템을 해제시켜주는 명령
디스크 생성
새로운 디스크를 추가하려고 합니다. 먼저 전원을 끄고 VMware setting 부분으로 들어갑니다.
지금은 sample로 디스크 용량을 1GB로 설정했습니다.
여기서 OK버튼을 누르면 새로운 장치가 생성된 것을 볼 수 있습니다.
전원을 키게 되면 fdisk -l 명령을 통해 아까 설정해주었던 디스크가 생성되었다는 것을 볼 수 있습니다.
ls -l /dev/sd* 을 통해서도 생성되었다는 것을 확인해 볼 수 있습니다.
생성된 디스크에서 파티션을 설정해주기 위해서 fdisk /dev/sdb 명령을 사용했습니다.
먼저 command창에 help를 확인하기위해 어떤 옵션이 있는지 확인해보았습니다.
여기서 중요하게 볼 옵션은 n(새로운 파티션을 생성) d(파티션 삭제) p(현재 파티션 목록확인) q(저장하지 않고 나가기) w(저장한뒤에 나가기) 입니다.
파티션을 생성하기위해 n 옵션을 사용했고, 저는 주 파티션 4개를 생성했습니다.
각 200M씩 설정해놓았고, 마지막 파티션은 나머지용량들을 다 설정했습니다.
먼저 첫번째 파티션을 생성한뒤에 p 옵션을 통해 확인해보았습니다.
나머지 3개를 만든뒤에도 똑같이 p옵션을 통해 생성된 것을 확인했습니다.
그리고 꼭 나갈때에는 w 옵션을 통해서 나가야 파티션이 생성된 것을 볼 수 있습니다.
ls -l /dev/sdb* 명령으로 생성된 파티션이 있는지 확인해보았습니다.
파티션을 나누고서는 쓸 수가 없습니다. 파일시스템을 생성해 준 뒤에 쓸 수 있습니다.
리눅스의 파일시스템생성은 윈도우즈에 포맷이랑 비슷하다고 보면됩니다.
그리고 파일시스템을 생성하기 위해 mkfs 명령을 이용해 만들어 주었습니다. 참고로 저는 ext3 파일시스템을 만들어주었습니다.
그리고 file -s /dev/sdb*로 ext3파일시스템이 제대로 만들어졌는지 확인했습니다.
파일시스템을 만든뒤에는 디스크에 파일을 쓸수 있도록 mount과정이 있어야 합니다.
먼저 각 파티션에 대한 디렉터리를 생성해주었습니다.
그리고 나서 mount 명령을 통해서 디스크에 등록해주었습니다. (mount -t ext3 /dev/sdb1 /disk1/)
그리고 df -h명령을 통해 현재 마운트된 디스크에 대한 정보를 출력해주었습니다. 이로써 다 만들어진 것을 확인할 수 있었습니다.
※ 현재 상태에서는 /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4를 사용할 수 있습니다.
하지만 만약 /dev/sdb를 사용하게되면 나누었던 장치의 전체를 쓸수있는 상황이 되어 만들어진 파일시스템이 깨지게 됩니다.
그래서 꼭 파티션을 나누었을 경우에는 전체 사용크기인 /dev/sdb를 사용하면 안됩니다.
※ 장치 초기화 : cat /dev/zero > /dev/sdb : 모든 정보들이 날아간다(초기화)
'SECURITY > Linux' 카테고리의 다른 글
아카이브(tar), 압축(gzip, bzip, xzip) (0) | 2017.04.03 |
---|---|
마운트(Mount), 런 레벨(Run Level) (0) | 2017.04.03 |
쉘에 대한 이해4 (0) | 2017.03.30 |
쉘에 대한 이해3 (0) | 2017.03.29 |
쉘에 대한 이해2 (0) | 2017.03.28 |