GCEのRootディスクの拡張

# はじめに
GCPをせっせと使っていると、**「No space left on device」**のエラーが!!!

<img width="1000" alt="gcpp.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200298/17296571-29e8-b573-63b0-5199a7aacd71.png">

rootディレクトリ下のファイルを削除して容量を確保するのが手っ取り早いですが、それだと限界もあるのでRootディレクトリの容量を今回は拡張していきます。

ざっくり、手順を述べると、
・全体のディスク容量をGCPから増やす
・Rootディレクトリのパーティション割り当てを増やす
といった手順になります。
（これだけのことなのに、すごい手間取ってしまった。。。）


# GCP側の設定
使用しているVMインスタンスの編集画面から標準ディスクの容量を変更します。



# コンソール側の設定
## df -hで現状の確認
```
hogehoge:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.4G     0  7.4G   0% /dev
tmpfs           1.5G  8.6M  1.5G   1% /run
/dev/sda1        78G   78G     0 100% /
tmpfs           7.4G     0  7.4G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           7.4G     0  7.4G   0% /sys/fs/cgroup
/dev/sdb        252G   63G  177G  27% /mnt
tmpfs           1.5G     0  1.5G   0% /run/user/1003
```

まだ、/dev/sda1の容量が増えていないことがわかります。

## lsblkでディスク容量は十分か確認
```
hogehoge:~$ sudo lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sdb      8:16   0  256G  0 disk /mnt
sda      8:0    0  256G  0 disk 
└─sda1   8:1    0   80G  0 part /
```

sdaには256GBあるが、sda1のペーティションには80GBして割り当てられおらず、ほとんどの部分が未使用になっていることがわかります。

## partedでパーティション割り当てを変更
```
hogehoge:~$ sudo parted
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p free
Model: Google PersistentDisk (scsi)
Disk /dev/sda: 275GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
        32.3kB  1049kB  1016kB           Free Space
 1      1049kB  85.9GB  85.9GB  primary  ext4         boot
        85.9GB  275GB   189GB            Free Space

(parted) resizepart 1                                                     
Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?
Yes/No? Yes                                                               
End?  [85.9GB]? 100%                                                      
(parted) p free
Model: Google PersistentDisk (scsi)
Disk /dev/sda: 275GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
        32.3kB  1049kB  1016kB           Free Space
 1      1049kB  275GB   275GB   primary  ext4         boot

                                                             
(parted) ^C                                                               

Information: You may need to update /etc/fstab.
```

`p free`コマンドで、きちんと割り当てあられているか確認しましょう。

## おまじないを最後にして完了
```
hogehoge:~$ sudo resize2fs /dev/sda1
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 5, new_desc_blocks = 16
The filesystem on /dev/sda1 is now 67108608 (4k) blocks long.
```
なんかようわからんが、これを最後にやるときちんと適用される。

## 確認
```
hogehoge:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.4G     0  7.4G   0% /dev
tmpfs           1.5G  8.6M  1.5G   1% /run
/dev/sda1       249G   78G  171G  32% /
tmpfs           7.4G     0  7.4G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           7.4G     0  7.4G   0% /sys/fs/cgroup
/dev/sdb        252G   63G  177G  27% /mnt
tmpfs           1.5G     0  1.5G   0% /run/user/1003
```

いえええい

# おわりに
今回は自分用の備忘録としてまとめた。
誰かのためになれば良いと思う。