리눅스는 저장 장치를 제어하는 데 있어서 굉장히 놀라운 능력을 가지고 있다.
그 장치가 하드 디스크, 네트워크 스토리지 또는 RAID(복수 배열 독립 디스크)나 LVM(논리적 볼륨 관리자)과 같은 가상 저장 장치거나 물리적 장치든 상관없이 리눅스 자체만으로도 뛰어난 능력을 가진다.
1. 저장 장치 마운트하기와 해제하기
저장 장치 관리에 있어 첫 번째로 해야할 작업은 파일시스템 트리에 장치를 연결하는 것이다.
이러한 과정을 '마운트한다' 즉 저장한다라고 하는데 장치가 운영체제와 연결되는 과정을 말한다.
/etc/fstab/ 파일은 부팅 시에 마운트된 장치 목록을 표시한다.
/etc/fstab/ 파일이 없다면 vi 또는 vim 명령어를 사용해서 파일을 생성 및 수정하면 된다.
/etc/fstab/ 정보
cat /etc/fstab 명령어를 사용하면 위의 예시처럼 출력이 될 것이다.
이 정보는 하드 디스크 파티션에 관한 것으로 모두 6개의 항복으로 구성되어 있다.
항목 정보 설명 1 장치 일반적으로 이 항목은 /dev/hda1 과 같은 물리적 장치와 관련된 장치 파일명을 보여준다.
장치가 시스템에 마운트되면 운영체제가 이 라벨을 참조한다.2 마운트 포인트 파일시시스템 트리에 연결된 장치의 디렉토리 3 파일시스템 타입 리눅스는 다양한 파일시스템 타입을 마운트할 수 있다. 4 옵션 다양한 옵션으로 파일시스템을 마운트할 수 있다. 5 빈도수 dump 명령어로 파일시스템을 백업한 횟수(한자리 수) 6 순서 fsck 명령어로 검사될 파일시스템 순서(한자리 수)
마운트된 파일시스템 목록 보기
파일시스템을 마운트할 때 사용된다.
명령 인자 없이 단독으로 mount 명령어를 입력하면 현재 마운트된 모든 파일시스템 목록을 보여준다.
iseungmin@iseungmin-ui-MacBookAir ~ mount
/dev/disk3s3s1 on / (apfs, sealed, local, read-only, journaled)
devfs on /dev (devfs, local, nobrowse)
/dev/disk3s6 on /System/Volumes/VM (apfs, local, noexec, journaled, noatime, nobrowse)
/dev/disk3s4 on /System/Volumes/Preboot (apfs, local, journaled, nobrowse)
/dev/disk3s2 on /System/Volumes/Update (apfs, local, journaled, nobrowse)
/dev/disk1s2 on /System/Volumes/xarts (apfs, local, noexec, journaled, noatime, nobrowse)
/dev/disk1s1 on /System/Volumes/iSCPreboot (apfs, local, journaled, nobrowse)
/dev/disk1s3 on /System/Volumes/Hardware (apfs, local, journaled, nobrowse)
/dev/disk3s1 on /System/Volumes/Data (apfs, local, journaled, nobrowse, protect)
map auto_home on /System/Volumes/Data/home (autofs, automounted, nobrowse)
/dev/disk3s3 on /System/Volumes/Update/mnt1 (apfs, sealed, local, journaled, nobrowse)
마운트된 파일시스템 예시 목록으로 보자면,
'/dev/sda2 on type ext3 (rw)' 라는 장치가 마운트 되어있다고 가정하자!
/dev/sda2/ 장치가 루트 파일시스템으로 마운트 되어있고, 그 형식은 ext3 이며 읽기 쓰기(옵션 rw)가 모두 가능하다는 뜻이다.
umount 명령어로 장착된 장치 해제하기
$ umount /dev/hdc
2. 새로운 파일시스템 만들기
fdisk로 파티션 설정하기
fdisk 프로그램으로 디스크류의 장치를 매우 저수준에서 직접 작업을 할 수 있다.
$ sudo fdisk /dev/sdb
주의해야 할 것은 파티션 번호가 아닌 장치 전체를 지정해주어야 한다.
3. 플로피 디스크 포맷하기
플로피 디스크 포맷을 위해 플로피 장치명(/dev/fd0)을 지정해주는 프로그램인 fdformat을 사용하기로 가정한다.
$ sudo fdformat /dev/fd0 # mkfs로 디스크를 FAT 파일시스템 타입으로 지정. $ sudo mkfs -t msdos /dev/fd0
4. 장치에 데이터 직접 송수신하기
컴퓨터상의 자료와 파일은 가공되지 않은 상태라고 볼 수 있다.
예를 들어, 디스크 드라이브를 살펴보면 수많은 데이터 블록으로 구성되어 있음을 알 수 있고 이걸을 운영체제는 디렉토리와 파일로 인식한다.
만약 디스크 드라이버를 하나의 거대한 데이터 블록들의 집합으로 다룰 수 만 있다면, 장치를 복제하는 것과 같이 유용한 작업을 수행할 수 있다.
dd 프로그램은 장치 간에 데이터 블록을 복사할 수 있도록 도와준다.
$ dd if=input_file of=output_file [bs=block_size [count=blocks]]
5. CD-ROM 이미지 만들기
CD-ROM 이미지 복사본 만들기
$ dd if=/dev/cdrom of=ubuntu.iso
/dev/dcrom 에는 우분투 CD가 있고 복사본 iso 파일을 만드는 명령어이다.
6. CD-ROM 이미지 쓰기
ISO 이미지를 직접 마운트하기
mount 명령어에 -o loop 옵션을 사용하면, 이미지 파일이 마치 하나의 장치로 인식되어 이것을 마운트하여 파일시스템 트리에 연결할 수 있다.
$ mkdir /mnt/iso_image $ mount -t iso9660 -o loop image.iso /mnt/iso_image
직접 마운트할 때, -t iso9660으로 파일시스템 타입을 지정해주어야 한다.
중요한 점은 이미지 파일도 역시 마운트 해제 명령어를 꼭 실행하도록 한다!
CD-RW 지우기
쓰기 가능한 CD-RW 매체를 재사용하려면 이전의 내용을 삭제하거나 빈 상태로 만들어야 한다.
$ wodim dev=/dev/cdrw blank=fast
wodim 프로그램을 사용하고 가장 빠른 방법인 fast를 지정하는 것이다.
이미지 쓰기
$ wodim dev=dev/cdrw image.iso
wodim 프로그램을 사용하며, 이 프로그램에는 두 가지의 옵션이 있다.
하나는 자세한 내용을 보여주는 -v 옵션이고, 다른 하나는 디스크 단위 기록 모드로 쓰기를 실행할 때 사용되는 -dao 옵션이다.
'스터디 > 리눅스 커맨드라인' 카테고리의 다른 글
[리눅스] 17. 파일 검색 (0) | 2022.05.23 |
---|---|
[리눅스] 16. 네트워킹 (0) | 2022.05.16 |
[리눅스] 14. 패키지 관리 (0) | 2022.05.08 |
[리눅스] 13. 프롬프트 커스터마이징 (0) | 2022.05.08 |
[리눅스] 12. VI (0) | 2022.05.01 |