우분투는 괜찮은 데스크탑환경을 가지고 있어서 웬만한 조작은 UI로 하고는 있는데, Windows와는 달리 기능이 필요한곳에 안붙어있거나 고급기능으로 접근할 방법을 아예 막아놓는 등 여전히 답답할때가 많음. 하드 추가할때가 그런데 파티션 작업을 유연하게 UI로 해나갈 방법이 마땅치 않다. (Windows 의 관리도구-디스크관리가 그리워진다)
결국 유연한 작업을 하려면 다시 명령프롬프트로 돌아가서 하게 되는데 터미널을 켜면 또 작업을 간단하게 하고싶어지고...
이 문서에서는 우분투에서 커맨드라인으로 최대한 복잡하지 않게 스토리지용 하드디스크 추가, 파티션 설정, 포맷하는법을 적어본다.
0. PC를 끄고 하드를 연결한다
1. 부팅후에 하드가 리눅스 시스템에 올라와 있는지 확인
2. parted를 실행
- 요즘 3T이상하는 하드드라이브들은 fdisk로 작업안된다. 된다는 글도 본거같은데 적어도 난 안됐다. 아무리해도 안되더라고... 그러니 그냥 parted를 실행한다. 이 문서의 목적은 '가능한한 쉽게 적당히 하는법' 이다.
- 실행하면 프롬프트가 (parted)로 바뀐다. /dev/sdb는 새로 추가한 하드드라이브임
3. label 타입을 gpt로 한다
- (parted)는 프롬프트 모양이며 실제로 입력하는게 아니다!
- 저렇게 입력하면 이렇게 물어본다
Warning : 계속 진행할경우 드라이브의 모든 데이터를 잃어버린다. 확실한가?
Yes/No?
- 우리가 방금 달아놓은건 새로산 하드드라이브니까 Yes를 입력하고 가자
4. 파티션 생성
- (parted)프롬프트 상태에서 계속 작업한다. 먼저 이후의 설정에 사용할 용량 단위를 지정
- 이제 파티션을 생성함. 내가산건 6TB 하드니깐 이렇게 한다
(parted) mkpart primary 0.00TB 6.00TB
- 저 primary는 파티션 속성인데 primary 말고 logical, extended 도 쓸수 있다. 이 문서에선 쓸일이 없다
- 여기까지 하고나서 제대로 됐나 확인하기
(parted) print
Disk /dev/sdb: 6.00TB
Sector size (logical/physical): ********
Partition Table: gpt
Number Start End Size File system Name Flags
1 0.00TB 6.00TB 6.00TB primary
- Size 등이 맞게 됐나 확인후 parted에서 빠져나오자
5. 파일시스템생성과 포맷
- parted로 할 작업을 다 했으니 fdisk로 sdb1 이 만들어졌는지 확인.
- 맞게 나오면 sdb1의 파일시스템을 작성(포맷)
- 나는 그냥 ext4를 쓰는데 혹시 선호하는 다른 파일시스템이 있다면 그걸 쓰면 된다(ext2나 ext3 등등...)
6. 마운트 설정
mount -t ext4 /dev/sdb1 /media/newstorage
- 이제 새 하드드라이브를 /media/newstorage 경로로 접근할 수 있다
- df 명령어로 마운트된 하드디스크를 확인
- 복잡한 숫자+글자로 된 UUID가 나오는데 이건 하드드라이브의 고유한 식별ID이다. 하드디스크를 물리적으로 빼다 다른곳에 꽂으면 UUID도 바뀐다.
- 일단 새로 추가한 하드드라이브의 UUID를 복사해두거나 어디 메모해두자
- 시스템을 부팅할때마다 자동으로 마운트되도록 해야하므로 fstab 설정을 추가한다
- fstab 파일 편집화면이 나오는데 시스템에 달려있는 하드드라이브들의 마운트 정보들이 수록되어 있다
- 가장 아랫줄에 새 하드드라이브 마운트정보를 추가한다
.
.
.
UUID=[앞에서 메모해놓은 uuid값] /media/newstorage ext4 defaults 0 0
- 재부팅해서 자동으로 마운트되는지 확인하면 하드추가 작업은 끝
- 이제 우분투 데스크탑에서 디스크 관리에 가보면 새로 추가한 하드드라이브의 상태 등을 볼수 있다
- 만약 하드추가가 아닌 교체목적이었다면 처음부터 dd로 작업하는게 편할것이고, 이미 이 문서를 보고 여기까지 작업했다면 예전 드라이브에서 cp -pr 명령어로 하위디렉토리,소유자,권한정보까지 같이 복사하는 방식으로 파일을 옮기자