Winの領域を詰めていつものHDD250GBに入れたい

HDD750GBに入れた(デッドコピーした)Win11(256GB)を小さくしてHDD250GBに移したい。
HDD250GBはたくさん余っているので、そっちに移してイロイロ試したい。

$ sudo fdisk -l /dev/sda
ディスク /dev/sda: 698.64 GiB, 750156374016 バイト, 1465149168 セクタ
ディスク型式: XXXX XXXX
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: XXXX-XXXX-XXXX-XXXX-XXXX
\
デバイス 開始位置 終了位置 セクタ サイズ タイプ
/dev/sda1 2048 206847 204800 100M EFI システム
/dev/sda2 206848 239615 32768 16M Microsoft 予約領域
/dev/sda3 239616 498792447 498552832 237.7G Microsoft 基本データ
/dev/sda4 498792448 500115455 1323008 646M Windows リカバリ環境
/dev/sda5 500115456 510601215 10485760 5G Linux ファイルシステム
/dev/sda6 510601216 516601855 6000640 2.9G Linux ファイルシステム
/dev/sda7 516601856 522602495 6000640 2.9G Linux ファイルシステム
/dev/sda8 522602496 528603135 6000640 2.9G Linux ファイルシステム
/dev/sda9 528603136 673134591 144531456 68.9G Linux ファイルシステム
/dev/sda10 673134592 1454385151 781250560 372.5G Linux ファイルシステム
/dev/sda11 1454385152 1465149134 10763983 5.1G Linux ファイルシステム

1.Win上で分割して片方を削除する。多分、一旦sda5以降を削除する必要があるのでは?
\ ->BackUpするか。(後から分かったが、Winでの分割はパーティションを増やさない。使わないだけ)
2.NTFSと思われるsda3を減らせないか。それにはNTFSのフォーマット?が必要。
\ ->フォーマットはWinにやらせよう。
先に2を試そう。

$ sudo mount /dev/sda3 /mnt2
Windows is hibernated, refused to mount.
Falling back to read-only mount because the NTFS partition is in an
unsafe state. Please resume and shutdown Windows fully (no hibernation
or fast restarting.)
Could not mount read-write, trying read-only
$
$ mount
/dev/sda9 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
/dev/sda8 on /home type ext3 (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
/dev/sda3 on /mnt2 type fuseblk (ro,allow_other,blksize=4096)
(fuseblkって何だ?、書き込めないのか?)

linux fuseblk とは、でググった:
https://documentation.suse.com/ja-jp/sles/15-GA/html/SLES-all/cha-fuse.html
https://blog.ssrf.in/post/fuse-tutorial/
https://linuxhint.com/use-fuseblk-linux/

$ ls -l /var/log/packages/*ntfs*
\-rw-r–r– 1 root root 3262 2月 18 2022 /var/log/packages/ntfs-3g-2021.8.22-x86_64-1
(既に入っている)

$ sudo mount -t ntfs-3g -o rw /dev/sda3 /mnt2
Windows is hibernated, refused to mount.
Falling back to read-only mount because the NTFS partition is in an
unsafe state. Please resume and shutdown Windows fully (no hibernation
or fast restarting.)
Could not mount read-write, trying read-only
(中身は見れるが、WinにフォーマットさせたHDDが同様にroでしかmountできなかった場合、コピーでき
ない事になる)

Windows is hib…、でググった:
https://bugzilla.redhat.com/show_bug.cgi?id=1988745
(chkdsk c: /F をやってみるか。HDD250GB側をrwでmountできなかったら)
https://precure-3dprinter.hatenablog.jp/entry/2018…

とりあえず、HDD250GBにfdiskコマンドでGPT(o:DOSではなくgを入力)して同じ容量のパーティション
を切って中身をコピーした。
$ sudo fdisk -l /dev/sdb
ディスク /dev/sdb: 232.89 GiB, 250059350016 バイト, 488397168 セクタ
ディスク型式: XXXX XXXX
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: XXXX-XXXX-XXXX-XXXX-XXXX
\
デバイス 開始位置 終了位置 セクタ サイズ タイプ
/dev/sdb1 2048 206847 204800 100M EFI システム
/dev/sdb2 206848 239615 32768 16M Microsoft 予約領域
/dev/sdb3 239616 244379647 244140032 116.4G Microsoft 基本データ
/dev/sdb4 244379648 245702655 1323008 646M Windows リカバリ環境
/dev/sdb5 245702656 488397134 242694479 115.7G Linux ファイルシステム
$
$ sudo cp /dev/sda1 /dev/sdb1
$ sudo cp /dev/sda2 /dev/sdb2
$ sudo cp /dev/sda4 /dev/sdb4

Win11でsdb3をNTFSフォーマットし、
$ sudo mount -t ntfs-3g -o rw /dev/sdb3 /mnt3
(問題なくmountできた)
$ df
ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置
/dev/root 70553228 53123192 13816752 80% /
devtmpfs 4003584 0 4003584 0% /dev
tmpfs 32768 940 31828 3% /run
cgroup_root 8192 0 8192 0% /sys/fs/cgroup
/dev/sda8 2909964 1353902 1406046 50% /home
tmpfs 801512 0 801512 0% /run/user/501
/dev/sda3 249276412 41312812 207963600 17% /mnt2
/dev/sdb3 122070012 94932 121975080 1% /mnt3
$ cd /mnt2
$ sudo tar cpf – . | (cd /mnt3/; sudo tar xpf -)
[Child 1633, MediaDecoderStateMachine #1] WARNING: Decoder=7f03d6152000 state=DECODING_METADATA Decode metadata failed, shutting down decoder: file /builds/worker/checkouts/gecko/dom/media/MediaDecoderStateMachine.cpp:372
[Child 1633, MediaDecoderStateMachine #1] WARNING: Decoder=7f03d6152000 Decode error: NS_ERROR_DOM_MEDIA_DEMUXER_ERR (0x806e000c) – virtual RefPtr<MP4Demuxer::InitPromise> mozilla::MP4Demuxer::Init(): No MP4 audio () or video () tracks: file /builds/worker/checkouts/gecko/dom/media/MediaDecoderStateMachineBase.cpp:151
\
再起動させてみたが失敗した。やっぱりWinはデッドコピーでないとムリか。

1を試す。
とりあえずLinuxの領域はBackUpをとって削除した。
windows ディスク 分割、でググった:
Windows10でHDDのパーティションを分割(必要ある?方法ある?)
https://www.aomei.jp/articles/split-hdd-partition-win10.html#maodian2
\
Winの領域を削ってもWinのパーティションのみのコピーでは起動できない。結局、
全コピー(デッドコピー)するしかない。が、コピーして使っていない領域がはみ出た後にパーティ
ションを切ってもダメだった。(シグネチャは消さなかった)
\
windowsを他のディスクへ移す、でググった:
https://akiba-pc.watch.impress.co.jp/docs/dosv/1006613.html
https://freesoft-100.com/review/soft/easeus-todo-backup.html
(フリーソフトは大体、後から使えなくなるし、OSSでないのはあまり使いたくない)

WinのBackUp機能を試すか。
win11 回復ドライブ 作り方、でググった:
https://support.microsoft.com/ja-jp/windows/%E5%9B%9E%E5%BE%A9%E3%83%89%E3%83%A9%E3%82%A4%E3%83%96%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B-abb4691b-5324-6d4a-8766-73fab304c246
win11 回復ドライブ 使い方、でググった:
https://pc-karuma.net/windows-10-create-usb-recovery-drive/
(レガシーbootし、HDD250GBを回復しようとすると、PCを回復できません。システムドライブが
小さすぎます、とくる。では、リカバリ環境を前の方に詰めて回復ドライブを作ろうとすると、
必要ないくつかのファイルが見つかりません、とくる。Windows リカバリ環境 は移動できない
のだろう。サイズが同じ以上でないと回復できなさそうだ)

Win11のインストールディスクでHDD250GBにインストールし、回復ドライブでデバイスドライバ
の回復をやってみるか。(後から、回復ドライブにはデバドラの回復は無かった)
USB-boot用の方をDLして起動させたが、サイズが小さいときた。

rufusを使ってみるか。rufusはGPLらしい。rufusにはISOファイルが必要らしい。
https://rufus.ie/ja/
せっかくなので、上でつくったUSB-bootの中身をLinuxでISO化しよう。
$ sudo installpkg /mnt2/slackware64/ap/cdrtools-3.02a09-x86_64-1.txz
$ grep -E ‘bin|lib’ /var/log/packages/cdrtools-3.02a09-x86_64-1 | sed s@^@/@ | xargs ldd | grep found
(依存libの不足はなかった)
USB-bootを指して見てみると、
$ sudo fdisk -l /dev/sdb
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/sdb1 * 2048 60751871 60749824 29G c W95 FAT32 (LBA)
$ sudo mount /dev/adb1 /mnt2
$ sudo mkisofs -r -J -V Win11Inst -o win11inst.iso /mnt2/
Setting input-charset to ‘UTF-8’ from locale.
Using WINSE000.SYS;1 for /mnt2/sources/winsetupmon.sys (winsetupboot.sys)
\- – –
\ 99.85% done, estimate finish Sat Jan 14 xx:yy:zz 2023
Total translation table size: 0
Total rockridge attributes bytes: 122618
Total directory bytes: 311296
Path table size(bytes): 1326
Max brk space used 11c000
2228277 extents written (4352 MB)
\
rufusを使ってwin11inst.isoから無条件でインストールするUSB-bootを作成し、HDD250BGの120GB
領域にクリーンインストールすることができた。EFI-bootを作成したのでboot時にBIOSメニュー
でUSBのFS?のBoot/bootx64.efiを設定する必要があった。
クリーンインストールなので、Win11の動かないドライバはその都度DLしてくることにした。
(元のWindowsディレクトリはWindows.oldとなって残っていたが、ドライバの更新でそこを指定し
ても、最新には更新されなかった)
(最小システムの条件を満たしてない件は、公称64GBだが、160BGにしたら入れれるか?いつか試す)
https://qiita.com/YukiMiyatake/items/d3f235db55cf37afc037

参考情報:
linux iso9660 作成、でググった:
https://zero-config.com/centos/iso-0001.html
https://qiita.com/legitwhiz/items/d83a409d4cc833c22300

installまたは展開時のメッセージ:
# cdrtools (CD-R, ISO and related tools)
# Tools for mastering and writing compact discs.
# cdda2wav – CD audio sampling utility.
# cdrecord – burn discs in most ATAPI and SCSI CD-R drives.
# mkisofs – create ISO9660/HFS/Joliet CD-ROM images.
# mkzftree – compress a file tree to make a compressed CD-ROM.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です