トップ «前の日記(2018-03-28(Wed)) 最新 次の日記(2018-03-31(Sat))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2018-03-29(Thu) 多分外は晴れ

パーティション数の限界か

100MiBの論理パーティションを切りまくる スクリプトを書いた。

#!/bin/sh
first=2097152
last=106954751
diff=105906176
end=7758413824
 
com=parted
dev=/dev/sdb
 
$com $dev mklabel msdos
$com $dev mkpart extended 1048576B 7759462399B
while [ $first -lt $end ];
do
  $com $dev mkpart logical ${first}B ${last}B
  first=`expr $first + $diff`
  last=`expr $last + $diff`
done

あらかじめパーティションを削除したUSBメモリにこれを実行。

Information: You may need to update /etc/fstab.
 
Information: You may need to update /etc/fstab.
 
Information: You may need to update /etc/fstab.
.
.
.
Error: cannot create any more partitions
Error: cannot create any more partitions
Error: cannot create any more partitions

どこまで切れたか見ようとして、fdisk -l すると、 "Omitting partitions after #60. They will be deleted if you save this partition table."ときた。

$ sudo parted /dev/sdb print
Model: TOSHIBA TransMemory (scsi)
Disk /dev/sdb: 7759MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 
 
Number  Start   End     Size    Type      File system  Flags
 1      1049kB  7759MB  7758MB  extended               lba
 5      2097kB  107MB   105MB   logical
 6      108MB   213MB   105MB   logical
.
.
.
60      5827MB  5932MB  105MB   logical
61      5933MB  6038MB  105MB   logical
62      6039MB  6144MB  105MB   logical
63      6145MB  6250MB  105MB   logical
64      6251MB  6355MB  105MB   logical

gpartedにもかけてみた。やはりエラーで追加できなかった。
やはり64がひっかかる気がする。

16GBのUSBメモリで試した。fs-typeをntfsにする。
また繰り返し処理でNTFSのクイックフォーマットをかけ、 マウントしてはtouch sd64.txt などやっておいた。

Windows7はパーティションがひとつしか見えなかった(マウントも できない)が、Windows10は、たぶん全部がマウントできるはず。
「はず」というのはGUIでは59のパーティション全部を表示しきれなかった が、/dev/sdb64がマウントできたから。
primaryパーティションも作ってマウントできた。
全部で62個がMBR(msdosラベル)の限界っぽい。

stretchに挿すと、どどっと全部マウントされた。
アンマウントは マウントディレクトリの根本で umount *。


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。