それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ディスクのパーティションテーブル一覧が更新されない

更新されない・・・

最近USBの抜き差しとgdisk してると困る、ディスクの一覧やパーティションの一覧が更新されない。

現象

lsblk
gdisk /dev/sdc ## パーティションテーブル変更
mount /dev/sdc5 /mnt # not found !なんでや!
lsblk #  sdc6 ない。
gdisk /dev/sdc # sdc6 ある。

なぜかパーティションテーブル変更が、即座にOSに反映されない。しかも使えない。再起動コース?

再起動はめんどくさくてちょっと調べてた。

調べたらあった。

rescan という、名前からして効果がありそうなものだった。

sudo su 
echo 1 > /sys/block/sdd/device/rescan
echo 1 >   /sys/block/sda/device/rescan
echo 1 >   /sys/block/sdb/device/rescan
echo 1 >   /sys/block/sdc/device/rescan

その他の選択肢。

でもうまくいかないときがある。

それでもダメなときは、parted の partprobe を試してみた

sudo su 
apt install parted
partprobe

たぶん、systemd がわるい。サービス化されてそれぞれの実行タイミングが不明になったもんな。 systemd になってからこういうことが多発する。systemd のせいで時間が余計にかかることが多くて困りますね。

2017-02-01 試してたら次のようになった。

takuya@:~$ sudo partprobe
Error: Partition(s) 1 on /dev/sdc have been written, but we have been
 unable to inform the kernel of the change, probably because it/they are in use.
  As a result, the old partition(s) will remain in use.  
You should reboot now before making further changes.

lvm でdm(device mapping) されてると駄目っぽいのか

参考資料

HowTo: Reload (re-read) Partition Table In Ubuntu Linux

http://www.cyberciti.biz/tips/re-read-the-partition-table-without-rebooting-linux-system.html