V-antena and Tanimoto's page

谷本の備忘録・雑記帳・work

>

カテゴリー: settings

CATEGORY ARCHIVE

windows11pro PCのCドライブの容量(SSD 128GB)が不足したのでSSD換装を行なった。windows10の場合とは異なる苦労ポイント(EFIパーティション等)があったので記録として残す。

おおまかな流れは

・SSDのclone(オープンソースのclonezira使用)
・2つあった回復パーティションのうち不要な方を削除
・回復パーティションの移動(削除・再作成)
・EFIパーテョションの移動(別場所に作成・不要分削除)
・Cドライブの拡張

となります。

使用した機器・ソフト&ツール

機器
USBメモリー、換装用SSD, SSDケース

ソフト&ツール
rufus, clonezilla, diskpart, ディスクの管理, 別ドライブのubuntu(GPART相当機能があれば何でも良い)
※diskpartとディスクの管理は、windows内のコマンドやツールです。

SSDのクローン

様々なネット記事があるのでそれを参考に出来る。 しかし、いろんなツールが有料化されているので、オープンソースであるclonezillaを使った。 特に難しくないので、あらましだけをメモる。

・rufusを使って、USBメモリーにclonezillaを入れる
・clonezilla live (& to ram)を起動
・(日本語選択)
・キーボードは日本語キーボードの選択肢がないので、defaultのまま
 下矢印,y,enterぐらいしか使わないので問題なし
・USBメモリーを抜き出し、SSD入りのSSDケースをUSB接続しなおす
・device-deviceを選択
・beginner modeを選択
・disk to local diskを選択

power off後、PC内のSSDから上記で作成したSSDに交換し、再起動

新SSDからwindowsを起動後、「ディスクの管理」を起動し、状況を再確認。
私の場合、下記の様であり、回復パーティション2個とEFIパーティションがCドライブの容量拡張の邪魔になっていた。

そこで、コマンドプロンプトを管理者権限で起動して以下の作業を行っていく

不要な回復パーティションの特定(必要な回復パーティションの特定)と削除

.コマンドプロンプトから、reagentc /info を使って、使っている回復パーティションを特定する。
その後、diskpartを起動し、使っていない方のパーティションを削除(disk番号、パーrヒション番号は実態に合わせる事。下記は例)

list disk
select disk 0
list partition
select partition 5
list partition
delete partition override

回復パーティションの移動(削除と再作成)

まず回復パーティションを無効にする(windows配下に移す)

reagentc /dsable

次に、diskpartで、回復パーティションを削除

list disk
select disk 0
list partition
select partition 3
detail partition         ※後で、種類と属性をコピペするので表示しておく
delete partition override

detail partitionの応答イメージは、以下の感じ。

次に、ディスクの後方に「ディスクの管理」を使って、新しく回復パーティションを作成する。作成に当たっては、
ボリュームラベル: Recovery
ファイルシステム: NTFS
とする。

diskpart で、list disk, select disk 0, list partitionでパーティションを確認(今回はパティション6)。パーティションを選択し、IDと属性を上記で表示させた値で設定する。

list disk
select disk 0
list partition

select partition 6
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
gpt attributes=0x8000000000000001

exit

回復パーティションを再構築する。

reagentc /enable
reagentc /info

reagentc /info でenableになっていれば成功。
(なお、後でみたらdisableだったので再度enable をやったら成功した)

EFIパーテョションの移動(別場所に作成・不要分削除)

(EFIパーティションがCドライブの前にある場合は、ここの作業は不要)

まず、「ディスクの管理」を使って、SSDの後方にEFI用パーティション作成する。
   ボリュームラベル:ESP
   ファイルシステム:FAT32
   ドライブレター:何かつける(ここではJ)

コマンドプロンプト画面から、bcdbootコマンドを使ってEFIを構築。

 bcdboot c:\windows /s J: f/ UEFI

※EFIパーティションの場合はコマンド内で作ってくれるのか、set idやgpt attributesの設定は不要

windowsを離れて、別ドライブから、以前のEFIパーティションを削除する。

 ・今回の場合、別SSDにインストールしてあったubuntuを立ち上げる
 ・ubuntuから、「ユーティリティ」->「ディスク」を使って、以前のEFIパーティションを削除する

Cドライブの拡張

・再度、windowsを起動
「ディスクの管理」から、Cドライブを拡張する

最終的に下記の様に拡張できた。

※失敗して立ち上がら無くなれば、以前のSSDに戻す事が可能なので心配しないで実行する

Lan環境や外部wifiが無い場所でミニPCにwifiでアクセスしたかった。そこでミニPCにubuntu 24.04を入れwifiドングルを使ってAPモードを苦労したが実現できたので、メモとして残す。

想定使用環境

LAN無し、外部wifi無い場所で使う。電源はある場所で使う。APモードからインターネット接続せず。

実現環境

 1.ミニPCにwifiドングルを使い、APモードはこのドングル経由で実現する
 2.ミニPCに元からあったwifiデバイスは通常のwifi接続に使用する
 3.APモードからのアクセスはインターネット接続しない

その他の方法を選ばなかった理由

1.windowsでは既設のwifiデバイスだけでAPモードが簡単にできたが、なぜかSSIDが見えないときが結構あった。それで、簡単にあきらめた。

2.Ubntuでも、Lanやモバイルルータを前提にすれば簡単にできたのだが、モバイルルータを使わずに実現したかったのであきらめた

3.WSLででも出来そうだったが、windowsを経由するならいっそ直接やった方が処理能力的に良いのではと思いu直接のbuntu上でトライした。実際のところの比較はやれていないのでこの想定が正しいのかは不明。

設定

1.使用するソフトをインストール

sudo apt install hostapd
sudo apt install isc-dhcp-server

2.まず、wifiドングルのデバイスのIPのインターフェイス名を知る

 sudo nmcli device status を使って調べる

3.NetworkManagerがあるとwifiデバイス単位の操作が難しいのでwifiドングルをNetworkmangerの対象から外す(代わりにhostapdで行う)

sudo nano /etc/NetworkManager/conf.d/99-unmanaged-devices.conf
下記の様にする

[device-wlx123456789abc-unmanaged]
match-device=interface-name:wlx123456789abc
managed=0

4.どのデバイス(インターフェイス)をAPモードで使うかを指定する

sudo nano /etc/default/isc-dhcp-server

以下を設定。インターフェイス名は上記の2で調べたもの

4行目 : コメント解除
DHCPDv4_CONF=/etc/dhcp/dhcpd.conf 

INTERFACESv4="wlx123456789abc"
INTERFACESv6=""

5. systemd-resolvedを使わないようにする

sudo nano /etc/NetworkManager/NetworkManager.conf

下記のfalseを追加
[main]
plugins=ifupdown,keyfile
systemd-resolved=false    <----追加

6.DHCPを設定する

sudo nano /etc/dhcp/dhcpd.conf

例えば次の様に設定する

# option definitions common to all supported networks...
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns1.example.org;

interfaces="wlx123456789ABC";

default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
log-facility local7;

subnet 192.168.111.0 netmask 255.255.255.0 {

option routers 192.168.111.1;
option subnet-mask 255.255.255.0;
range 192.168.111.10 192.168.111.30;
option domain-name "testtest";
option domain-name-servers 192.168.111.1, 8.8.8.8;
option broadcast-address 192.168.111.255;
default-lease-time 600;
max-lease-time 7200;


}

7. hostapd の設定

sudo nano  /etc/hostapd/hostapd.conf

例えば、下記の様に設定する

interface=wlx123456789abc
ctrl_interface=/var/run/hostapd
#ctrl_interface_group=0

driver=nl80211

ssid=YourSSID
wpa_passphrase=YourPassword
wpa=2
hw_mode=g
country_code=JP
channel=7
ieee80211d=1
wmm_enabled=0
macaddr_acl=0
auth_algs=1
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
sudo nano /etc/default/hostapd

DAEMON_CONF="/etc/hostapd/hostapd.conf"
DAEMON_OPTS="-B"
#  これを忘れるとうまく起動しなかった

8.IPアドレスの設定

理由は不明だが、interfaceやhostapd, dhcpdで設定出来なかったのコマンドで設定する。

sudo nano /etc/systemd/system/my-startup2-script.service

以下の様に設定する。

[Unit]
Description=For_wifi_AP_host_ip_setting
After=network.target

[Service]
Type=simple
ExecStart=sudo ifconfig wlx123456789abc 192.168.111.1 netmask 255.255.255.0 up
Restart=no
User=root

[Install]
WantedBy=multi-user.target

サービスの登録

sudo systemctl start isc-dhcp-server.service
sudo systemctl enable isc-dhcp-server.service

sudo systemctl enable my-startup2-script.service

リブート 及び 調査で使うツール

rebootとしておしまいのはず。

参考ツール(コマンド)

sudo airmon-ng check

journalctl _PID=dddd

CPUがcore i7-7700 OSがwindows10 pro のPCをwindows11 proにupgradeしたのでその記録

該当PCの情報

BTOで購入したマシン(当初ubuntuで運用)に、SSDを増設・windows10 proのusbを購入してインストールしていたもの。

CPU : Intel core i7-7700
マザボ :ASUS Prime H270-PLUS
パーティション:MBR形式
Boot :レガシー 形式
TPM  :2.0のものが付いていた( 別の自作PCにはheadがあるだけ)

従って、MBRからGPTへの変更と、レガシーからUEFIへの変更がまず必要。

MBRからGPTへの変更

windows10に備わっているmbr2gptコマンドを使用する。

powershell(管理者)から行なう。

  1. mbr2gpt /validate /disk:1 /allowFullOS
    Validation completed successfully を確認
  2. mbr2gpt /convert /disk:1 /allowFullOS
    Conversion completed successfully を確認

BIOSモードをレガシーからUEFIへ変更

BIOSの設定から、レガシーからUEFIに変更し保存しresetし再起動する

※Bootメニュー中のCSM(Compatibility Supported Module)のところから変更する

windows10からwindows11へのupgrade

Githubにある flyby11 を使ってupgradeする。 

upgrade後のいくつかのエラー対策

下記は書きかけです。

1.プログラム互換性アシスタント  エラー

https://www.php.cn/ja/faq/650294.html

2.AI suite3 エラー

失敗したかも。 uninstallしてからの方が良いかも

mbr2gptでエラーが出て苦労の挙句解決できたのでメモ

背景

中古のノートPCを購入(CPU: Intel i5-8350U OS:windows 11 Pro)したのだが何かおかしい。

・セキュアbootになっていない
パーティションタイプがMBRになっている

CPUはwindows 11サポート対象だが上記はシステム要件を満たしていない。なのに動作している。windows 11のクリーンインストールでもなく通常のupgrade手順でもなく、抜け道でupgradeされたものなのかも(CPU、TPMはシステム要件を満たしているので通常のupgrade手順で出来るはずだが。 おそらく、中古PC販売者がCPU等がもっと旧いPCでも同じ手順で出来る様に全て抜け道で行ったのではないかと推測。 )

動いているとはいえシステム要件を満たしていないのは気になるので、MBRからGPTへの変換やセキュアbootに変更しようとした。 ところがMBRからGPTへの変換でエラーが出て解決に苦労したので、解決した方法を備忘録として残す。

なお、遭遇したエラーは
mbr2gpt /validate /disk:0 /allowFullOS   コマンドに対して

MBR2GPT cannot find OS partition for disk 0

が返ってくるというものであった。

対応のアウトライン

次の順で行った。 なお、コマンドは管理者権限でのコマンドプロンプトを使う事。powershellでは管理者権限であっても動かないものがある。また、通常のコマンドプロンプトでも動かないものがある。

1.ディスクの構成を確かめる
2.問題個所を除去する
3.mbrからgptへ変換する

これらの対策は、
https://www.diskpart.com/gpt-mbr/mbr2gpt-cannot-find-os-partition-7201.html
のページのsolution-1によるものです。

なお、このエラーはwindowsのupgradeの際にやり方によりゴミが残る事によるものだそう。

ディスクの構成を確かめる

diskpartコマンドでdiskpartモードに入ってから行う。

・list disk  でディスク番号を確認。その後diskを選択。 
 sel disk 0 や sel disk 1などでwindowsがインストールされているディスクを選択。

・list parで、boot ディレクトリーがありそうなpartition を確認。

・該当partitionにドライブletterがアサインされていなければ、
sel par コマンドと assign letter=w などドライブletterを割り当てる。
 例: sel par 2 then assign letter=b

・diskpartから抜け出し、 dir /a b:\  などで、boot <dir> があるpartitionか確認する

・もし そのパーティションにboot <dir>が無かった場合は、別のパーティションで同様に探す

問題個所を除去する

bドライブにbootディレクトリーがあったとして説明する。

bcdedit /store b:\boot\bcd /enum all を実行し、unknown となっているところが無いか調べる。 

もしunknownがあれば、 そこの部分の {identifier}部分を使って、
bcdedit /store b:\boot\bcd /delete {identifier}  にてその部分を削除する。

これをunknownが無くなるまで繰り返す。

mbrからgptへ変換する

disk0がwindowsが入っているdiskとして説明。

mbr2gpt /validate /disk:0 /allowFullOS

を行い、これがsuccessfully completed となったら

mbr2gpt /convert /disk:0 /allowFullOS

にてMBRからGPTに変換する。

後始末:BIOSでレガシーからUEFI起動に変更

再起動しBIOSを立ち上げ起動方法を変更する

windowsタブレットにubuntuをインストールしたのでメモ

背景

中古のwindowsタブレットを持っていたが、過放電を起こしてしまいバッテリーが30%程度まで劣化してしまった。また、格安の中古タブレットをたまたま見つけ購入したのでバッテリー劣化したタブレットにubuntuをインストールしてみたというもの

該当のタブレット

Fujitsu製のArrows Tab Q509/VE

CPU : Intel N4000
メモリー:4GB

インストールしたubuntu 及び インストールに使った物

ubuntu: ubuntu 24.04.02 desktop

使った物:usbメモリー 、usbキーボードusbマウス 及び それらを接続するためのusb hub
(下記写真は usb hub)

最初にusbキーボードを接続して、BIOSからbootの優先順位を変更するのを忘れないように

 インストール自体はrufusを使った通常の手法で出来た。但しマウスやキーボードが必要で結局usb hubもインストール作業に必要だった。

インストール結果

1.タッチは有効でした
2.文字入力促された場合、その場所をタップするとソフトキーボードが出現
3.タブレットを傾けると、それに合わせて表示も向きが自動的に調整される
4.wifiとbluetoothも問題なく使用可能

5.アプリの画面表示でwindowの右上がdefaultでは切れているので、設定のディスレイで解像度を調整する必要がある。200% にdefaultでは為っているので 175%に変更すると良さそう。100%だと文字が小さすぎる。

感想

タブレット自体が非力なので大した事は期待できないが、ubuntu tabletとしての使用は問題なさそうでした。

V-antena and Tanimoto's page

あなたはIPv4でアクセスしています