[TEBIKI]Linux に新しくディスクを追加する方法
ここでは, Linux の計算機に新しいディスクを追加する方法について述べる.
[計算機とネットワークの手引集へ戻る]
現在のディスクの確認 (1)
- df コマンドを用いて現在のディスクの状況を確認
$ df -h
- 実行結果
- ここに表示されているのが現在接続されているディスク
- 下の例では一つのディスクが接続されている
- そのディスクのデバイスファイルは /dev/sda
- なお, 下で新しいディスクを追加したときにデバイスファイル名が変わることもあるので注意
- 下の例では一つのディスクが接続されている
- ここに表示されているのが現在接続されているディスク
shiojich@joho14-itpass:~$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 udev 3.9G 0 3.9G 0% /dev tmpfs 795M 28M 768M 4% /run /dev/sda2 908G 38G 824G 5% / tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup tmpfs 795M 16K 795M 1% /run/user/116 tmpfs 795M 0 795M 0% /run/user/1001 tmpfs 795M 8.0K 795M 1% /run/user/100
現在のディスクの確認 (2)
- parted コマンドを用いてパーティション情報を確認
$ sudo parted -l
- 実行結果
shiojich@joho14-itpass:~$ sudo parted -l [sudo] shiojich のパスワード: Model: ATA ST1000DM003-9YN1 (scsi) Disk /dev/sda: 1000GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 2 1049kB 991GB 991GB primary ext4 boot 1 991GB 1000GB 8999MB primary linux-swap(v1) 接続されている /dev/sda の内容が表示されている.
ディスクの追加
- 新しく追加するディスクを計算機に繋げる
ディスク追加後のディスクの確認 (1)
- dmesg コマンドを用いてディスクが認識された様子を確認
$ sudo dmesg
- 実行結果
- 新しく追加したディスク (ここでは HDD) は sdb として認識された
shiojich@joho14-itpass:~$ sudo dmesg [4420533.224356] sd 4:0:0:0: [sdb] Synchronizing SCSI cache [4420533.463666] sd 4:0:0:0: [sdb] Synchronize Cache(10) failed: Result: hostbyt e=DID_ERROR driverbyte=DRIVER_OK [4420539.539442] usb 4-4: new SuperSpeed USB device number 5 using xhci_hcd [4420539.560400] usb 4-4: New USB device found, idVendor=152d, idProduct=9561 [4420539.560403] usb 4-4: New USB device strings: Mfr=1, Product=2, SerialNumber=5 [4420539.560406] usb 4-4: Product: JMS56x Series [4420539.560408] usb 4-4: Manufacturer: JMicron [4420539.560410] usb 4-4: SerialNumber: 00000000000000000000 [4420539.562622] scsi host4: uas [4420539.563391] scsi 4:0:0:0: Direct-Access JMicron Disk RAID1 0105 PQ: 0 ANSI: 6 [4420539.607992] sd 4:0:0:0: Attached scsi generic sg2 type 0 [4420546.112933] sd 4:0:0:0: [sdb] 9767419904 512-byte logical blocks: (5.00 TB/4.55 TiB) [4420546.113844] sd 4:0:0:0: [sdb] Write Protect is off [4420546.113848] sd 4:0:0:0: [sdb] Mode Sense: 67 00 10 08 [4420546.114180] sd 4:0:0:0: [sdb] Write cache: enabled, read cache: enabled, supports DPO and FUA [4420546.340057] sd 4:0:0:0: [sdb] Attached SCSI disk
ディスク追加後のディスクの確認 (2)
- parted コマンドを用いてパーティション情報を確認
$ sudo parted -l
- 実行結果
- 新しく追加した HDD は /dev/sdb と認識された
shiojich@joho14-itpass:~$ sudo parted -l [sudo] shiojich のパスワード: Model: ATA ST1000DM003-9YN1 (scsi) Disk /dev/sda: 1000GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 2 1049kB 991GB 991GB primary ext4 boot 1 991GB 1000GB 8999MB primary linux-swap(v1) Error: /dev/sdb: unrecognised disk label Model: JMicron Disk RAID1 (scsi) Disk /dev/sdb: 5001GB Sector size (logical/physical): 512B/512B Partition Table: unknown Disk Flags:
パーティション作成
- 以下を実行
$ sudo parted /dev/sdb
- (parted) と表示されるので以下を入力
(parted) mklabel gpt
- print でパーティション情報が確認できる
(parted) print Model: JMicron Disk RAID1 (scsi) Disk /dev/sdb: 5001GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags
- 以下を入力
(parted) unit GB
- 以下を入力すると下のように順に聞かれるので, 適宜設定
(parted) mkpart Partition name? []? raid01_century2hdd File system type? [ext2]? ext4 Start? 0 End? 5001
- print でパーティション情報を確認
(parted) print Model: JMicron Disk RAID1 (scsi) Disk /dev/sdb: 5001GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 0.03GB 5001GB 5001GB ext4 raid01_century2hdd
- parted から抜ける
(parted) quit
ファイルシステム作成
- mkfs コマンドを用いてパーティション上にファイルシステムを作成する
$ sudo mkfs -t ext4 /dev/sdb1
- 実行結果
mke2fs 1.43.4 (31-Jan-2017) /dev/sdb1 alignment is offset by 512 bytes. This may result in very poor performance, (re)-partitioning suggested. Creating filesystem with 1220917050 4k blocks and 152616960 inodes Filesystem UUID: 8a1b51ed-3e33-4b6b-b967-763f7ecd6cbb Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544 Allocating group tables: done Writing inode tables: done Creating journal (262144 blocks): done Writing superblocks and filesystem accounting information: done
マウントポイント作成
- マウント先のディレクトリを作成
- ここでは /work01 とした
$ sudo mkdir /work01
マウント
- mount コマンドを用いて /dev/sdb1 を /work01 にマウント
$ sudo mount /dev/sdb1 /work01/
- df コマンドを用いてディスクの状況を確認
$ df
- 実行結果
- /dev/sdb1 と表示されているものが追加したディスク
shiojich@joho14-itpass:~$ df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 udev 4055576 0 4055576 0% /dev tmpfs 813372 27752 785620 4% /run /dev/sda2 951729780 39329368 863985388 5% / tmpfs 4066856 0 4066856 0% /dev/shm tmpfs 5120 4 5116 1% /run/lock tmpfs 4066856 0 4066856 0% /sys/fs/cgroup tmpfs 813368 16 813352 1% /run/user/116 tmpfs 813368 0 813368 0% /run/user/1001 tmpfs 813368 8 813360 1% /run/user/1000 /dev/sdb1 4844115912 90140 4599825980 1% /work01
自動マウントの設定
再起動時に自動でマウントされるように設定する
- UUID を調べる
$ sudo blkid /dev/sdb1
- 実行結果
/dev/sdb1: UUID="e7e5e73c-99d9-4fc7-8c5c-75adcf9c8719" TYPE="ext4" PARTLABEL="raid_century_hdd5_8TB_3" PARTUUID="be7ff2f0-7177-4dd4-9b9d-cdccfcb558bd"
- 実行結果の UUID= の "" 内をコピーする
- /etc/fstab を編集
$ sudo vi /etc/fstab
- /etc/fstab の編集手順
- 既にある行をコピーペースト
- ここでは / (ルート) パーティションの行をコピーペースト
- UUID= を先ほどコピーしておいた文字列に変更
- マウントポイント指定 (ここでは /work01)
- ファイルシステムの種類を指定 (ここでは ext4)
- 他はそのまま
- 既にある行をコピーペースト
- /etc/fstab 編集前
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sda2 during installation UUID=fbbac63c-27e8-4af7-a675-8e5c97ed0368 / ext4 errors=remount-ro 0 1 # swap was on /dev/sda1 during installation UUID=5888b7d5-cf64-480a-8a4b-11adcc24c8d6 none swap sw 0 0 /dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
- /etc/fstab 編集後
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sda2 during installation UUID=1f3cc37d-9c55-44fa-bb84-f1c82c864ad5 /work01 ext4 errors=remount-ro 0 2 UUID=fbbac63c-27e8-4af7-a675-8e5c97ed0368 / ext4 errors=remount-ro 0 1 # swap was on /dev/sda1 during installation UUID=5888b7d5-cf64-480a-8a4b-11adcc24c8d6 none swap sw 0 0 /dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
Keyword(s):
References:[計算機とネットワークの手引集]