디스크 확인하기
디스크를 확인하는 방법은 아래와 같습니다.
(1) lsblk : 시스템에 연결된 모든 블록 장치(디스크와 파티션)를 나열한다.
(2) df -h : 파일 시스템의 디스크 사용량을 출력한다.
(3) mount : 현재 마운트된 파일 시스템을 나열한다.
lsblk
lsblk
명령어는 시스템에 연결된 모든 블록 장치를 나열합니다. 블록 장치는 주로 디스크와 파티션을 의미합니다. 이 명령어는 블록 장치의 계층 구조를 보여주며, 각 장치와 그 파티션의 정보를 포함합니다.
1
2
3
4
5
6
7
8
9
10
11
12
lsblk
>>> NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
>>> sdb 8:16 0 931.5G 0 disk
>>> sda 8:0 0 223.6G 0 disk
>>> ├─sda4 8:4 0 512M 0 part /boot/efi
>>> ├─sda2 8:2 0 18G 0 part
>>> ├─sda5 8:5 0 4G 0 part /var/log
>>> ├─sda3 8:3 0 182.1G 0 part
>>> │ └─VG_XenSt... 253:0 0 4M 0 lvm
>>> ├─sda1 8:1 0 18G 0 part /
>>> └─sda6 8:6 0 1G 0 part [SWAP]
열 설명
열 | 설명 |
---|---|
NAME | 디스크 또는 파티션의 이름 |
MAJ | 주요 번호 (장치 파일의 고유 식별자) |
MIN | 부 번호 (장치 파일의 고유 식별자) |
RM | 제거 가능한 장치인지 여부 (0:제거 불가 / 1:제거 가능) |
SIZE | 장치의 크기 |
RO | 읽기 전용 장치인지 여부 (0:읽기-쓰기 / 1: 읽기 전용) |
TYPE | 장치 유형 (disk, part, lvm 등.) |
MOUNTPOINT | 장치가 마운트된 위치 |
해석
항목 | 해석 |
---|---|
sdb | 크기 931.5GB의 디스크로, 현재 파티션이 없으며 마운트되지 않음. |
sda | 크기 223.6GB의 디스크로, 여러 파티션으로 나누어져 있음. |
sda4 | 크기 512MB의 파티션으로, /boot/efi에 마운트됨. |
sda2 | 크기 18GB의 파티션. |
sda5 | 크기 4GB의 파티션으로, /var/log에 마운트됨. |
sda3 | 크기 182.1GB의 파티션. |
VG_XenSt… | LVM으로 관리되는 4MB의 볼륨. |
sda1 | 크기 18GB의 파티션으로, /에 마운트됨. |
sda6 | 크기 1GB의 파티션으로, 스왑 공간으로 사용됨. |
df -h
df
명령어는 파일 시스템의 디스크 사용량을 출력합니다. -h
옵션을 사용하면 출력이 인간이 읽기 쉬운 형식으로 제공됩니다(예: KB, MB, GB 단위).
1
2
3
4
5
6
7
8
9
10
11
12
df -h
>>> Filesystem Size Used Avail Use% Mounted on
>>> devtmpfs 1.3G 0 1.3G 0% /dev
>>> tmpfs 1.3G 96K 1.3G 1% /dev/shm
>>> tmpfs 1.3G 9.0M 1.3G 1% /run
>>> tmpfs 1.3G 0 1.3G 0% /sys/fs/cgroup
>>> /dev/sda1 18G 9.4G 7.3G 57% /
>>> xenstore 1.3G 0 1.3G 0% /var/lib/xenstored
>>> /dev/sda4 512M 3.0M 509M 1% /boot/efi
>>> /dev/sda5 3.9G 16M 3.7G 1% /var/log
>>> tmpfs 250M 0 250M 0% /run/user/0
열 설명
열 | 설명 |
---|---|
Filesystem | 파일 시스템의 이름. |
Size | 파일 시스템의 전체 크기. |
Used | 사용된 공간. |
Avail | 사용 가능한 공간. |
Use% | 사용된 공간의 백분율. |
Mounted on | 파일 시스템이 마운트된 위치. |
각 파일시스템 설명
파일시스템 | 마운트 위치 | 설명 |
---|---|---|
devtmpfs | /dev | 장치 파일을 위한 가상 파일 시스템 |
tmpfs | /dev/shm | 공유 메모리를 위한 가상 파일 시스템 |
tmpfs | /run | 런타임 데이터를 위한 가상 파일 시스템 |
tmpfs | /sys/fs/cgroup | 컨트롤 그룹 파일 시스템 |
tmpfs | /run/user/0 | 사용자 런타임 데이터를 위한 가상 파일 시스템 |
/dev/sda1 | / | 루트 파일 시스템 |
xenstore | /var/lib/xenstored | XenStore 데이터베이스를 위한 가상 파일 시스템 |
/dev/sda4 | /boot/efi | EFI 시스템 파티션 |
/dev/sda5 | /var/log | 로그 파일을 저장하는 파티 |
mount
mount
명령어는 현재 마운트된 파일 시스템을 나열합니다. grep /dev/sd
를 사용하면 특정 장치(/dev/sd*
형식의 디스크 및 파티션)가 마운트된 정보를 필터링하여 보여줍니다.
1
2
3
4
5
mount | grep /dev/sd
>>> /dev/sda1 on / type ext3 (rw,relatime)
>>> /dev/sda4 on /boot/efi type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
>>> /dev/sda5 on /var/log type ext3 (rw,relatime)
출력 | 구문 | 해석 |
---|---|---|
/dev/sda1 on / type ext3 (rw,relatime) | /dev/sda1 on / | /dev/sda1은 /에 마운트됨. |
type ext3 | 파일시스템의 유형은 ext3다. | |
rw | 읽기와 쓰기가 모두 가능하다. | |
relatime | 파일의 마지막 접근 시간 기록을 상대적으로 업데이트 | |
/dev/sda4 on /boot/efi type vfat … | /dev/sda4 on /boot/efi | /dev/sda4 는 /boot/efi에 마운트됨. |
type vfat | 파일시스템의 유형은 vfat | |
rw | 읽기와 쓰기가 모두 가능하다. | |
relatime | 파일의 마지막 접근 시간 기록을 상대적으로 업데이트 | |
fmask=0022 | 파일의 기본 권한 마스크 | |
dmask=0022 | 디렉토리의 기본 권한 마스크 | |
codepage=437 | 코드 페이지 설정 | |
iocharset=iso8859-1 | 입출력 문자셋 설정 | |
shortname=mixed | 짧은 파일 이름의 대소문자 혼용 | |
errors=remount-ro | 오류 발생 시 읽기 전용으로 재마운트 |
디스크 이름의 뜻 풀이
1
2
3
4
5
6
7
8
9
10
11
12
lsblk
>>> NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
>>> sdb 8:16 0 931.5G 0 disk
>>> sda 8:0 0 223.6G 0 disk
>>> ├─sda4 8:4 0 512M 0 part /boot/efi
>>> ├─sda2 8:2 0 18G 0 part
>>> ├─sda5 8:5 0 4G 0 part /var/log
>>> ├─sda3 8:3 0 182.1G 0 part
>>> │ └─VG_XenSt... 253:0 0 4M 0 lvm
>>> ├─sda1 8:1 0 18G 0 part /
>>> └─sda6 8:6 0 1G 0 part [SWAP]
1
2
3
4
5
sd a 4
-- - -
(1) (2) (3)
# (1)
sda와 sdb는 Linux 시스템에서 디스크 장치를 식별하는 이름입니다.
(1) sd는 SCSI 프로토콜을 사용하는 모든 디스크를 포함해, SATA, USB 등 다양한 인터페이스의 디스크를 포함합니다.
(2) a, b, c … 와 같이 ‘sd’ 다음의 알파벳은 디스크의 순서를 나타냅니다. 시스템에서 첫 번째로 인식된 디스크는 sda, 두 번째는 sdb 와 같은 순서로요.
(3) a, b, c … 뒤에 붙는 1, 2, 3 … 은 파티션을 의미합니다. sda1 이면 sda의 첫 번째 파티션이라는 의미죠.
파티션 생성부터 마운트까지
파티션 생성 (옵션)
/dev/sdb
에 파티션이 없다면, 먼저 파티션을 생성합니다. 이를 위해 fdisk
또는 parted
를 사용할 수 있습니다. 여기서는 fdisk
를 사용하여 하나의 파티션을 생성한다고 가정하겠습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# (1) fdisk 실행하고, 마운트되지 않은 디스크를 지정
fdisk /dev/sdb
>> Welcome to fdisk (util-linux 2.23.2).
>>
>> Changes will remain in memory only, until you decide to write them.
>> Be careful before using the write command.
>>
>> Device does not contain a recognized partition table
>> Building a new DOS disklabel with disk identifier 0x9df50e1b.
>>
>> The device presents a logical sector size that is smaller than
>> the physical sector size. Aligning to a physical sector (or optimal
>> I/O) size boundary is recommended, or performance may be impacted.
>>
>> Command (m for help)
1
2
3
4
5
6
7
8
9
# (2) n을 눌러 새로운 파티션을 생성
n
# (3) 파티션 유형을 선택
일반적으로 p (primary)를 선택
# (4) 파티션 번호를 선택하고, 기본 시작과 끝 섹터를 확인하고 수락
# (5) w를 눌러 변경 사항을 저장하고 종료
파일 시스템 생성
새 파티션이 /dev/sdb1
에 생성되었다고 가정하고, 해당 파티션에 파일 시스템을 생성합니다. 여기서는 ext4
파일 시스템을 생성합니다.
1
mkfs.ext4 /dev/sdb1
마운트 포인트 생성
마운트 포인트 디렉토리를 생성합니다.
1
sudo mkdir -p /data
파티션 마운트
새 파티션을 /data
에 마운트합니다.
1
sudo mount /dev/sdb1 /data
fstab에 추가하여 자동 마운트 설정
시스템 부팅 시 자동으로 마운트되도록 /etc/fstab
파일에 추가합니다.
1
echo '/dev/sdb1 /data ext4 defaults 0 0' | sudo tee -a /etc/fstab
마운트 확인
1
df -h /data