WSL2 Ubuntu 作業メモ

とりあえず順不同で、メモしておく方が良さそうな内容を記述しておくことにします。

WSLに増設したSSDを割り当てる

Windowsが起動した時点で増設のストレージが割り当てられれば問題ないのですが、対策方法が不明なため現状は毎回個別設定を行います。

PS C:\Windows\System32> GET-CimInstance -query "SELECT * from Win32_DiskDrive"

DeviceID           Caption                  Partitions Size          Model
--------           -------                  ---------- ----          -----
\\.\PHYSICALDRIVE1 KINGSTON OM8PDP3256B-A01 3          512105932800  KINGSTON OM8PDP3256B-A01
\\.\PHYSICALDRIVE0 CT1000BX500SSD1          4          1000202273280 CT1000BX500SSD1

PS C:\Windows\System32> wsl --mount \\.\PHYSICALDRIVE0 --bare

上記内容の –mount で、WSL2 に増設した SSD を割り当てます。

自動的に割り振られるホスト名を変更

難しいホスト名を単純な “WSL01” に置き換えます。再起動後に適用されるようです。

PS C:\Windows\System32> Rename-Computer -NewName "WSL01"

仮想マシン(Ubuntu) の起動を一般ユーザーに

仮想マシンに入って、/etc/wsl.conf ファイルを作成してその中に次を記述するらしい。

# cat << EOF > /etc/wsl.conf
> [user]
> default=sunao
> EOF

Ubuntu側の漢字処理を組込む

以下の説明を参考にして、中で説明のコマンドを実行して再起動です。

https://astherier.com/blog/2021/07/windows11-wsl2-wslg-japanese/
$ wget https://astherier.com/static/blog/2021-07-11/japanize-wslg.sh
$ bash japanize-wslg.sh

$ rm japanize-wslg.sh

systemctl コマンドが使えない

WSL2 は、PID 1 に init が陣取っているようで、色々なシステムが動作できない状態になるらしいのです。ここでディズニーに出てくる genie の力を借りて systemd を PID 1 に入れ替えてしまうことをするらしいです。

sunao@WSL01:~$ localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: ホストが落ちています

以下の再確認でも同じメッセージです。

sunao@WSL01:~$ systemctl
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: ホストが落ちています

PID 1 が systemd でないためにエラーが起きているようです。次の情報を参考に作業してランプから genie にお越しいただこうと思います。

https://qiita.com/RyoSakon001/items/26b3d073b70dfe911d59

忘れないようにコマンド入力と出されるメッセージをメモとして残しておきます。

sunao@WSL01:~$ sudo apt install daemonize dbus gawk libc6 libstdc++6 policykit-1 systemd systemd-container
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
dbus はすでに最新バージョン (1.12.20-2ubuntu4) です。
dbus は手動でインストールしたと設定されました。
取得:3 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 libnss-mymachines amd64 249.11-0ubuntu3.3 [146 kB]
547 kB を 2秒 で取得しました (279 kB/s)
以前に未選択のパッケージ daemonize を選択しています。
(データベースを読み込んでいます ... 現在 83017 個のファイルとディレクトリがインストールされています。)
.../daemonize_1.7.8-1_amd64.deb を展開する準備をしています ...
daemonize (1.7.8-1) を展開しています...
以前に未選択のパッケージ systemd-container を選択しています。
.../systemd-container_249.11-0ubuntu3.3_amd64.deb を展開する準備をしています ...
systemd-container (249.11-0ubuntu3.3) を展開しています...
以前に未選択のパッケージ libnss-mymachines:amd64 を選択しています。
.../libnss-mymachines_249.11-0ubuntu3.3_amd64.deb を展開する準備をしています ...
libnss-mymachines:amd64 (249.11-0ubuntu3.3) を展開しています...
systemd-container (249.11-0ubuntu3.3) を設定しています ...
Created symlink /etc/systemd/system/multi-user.target.wants/machines.target → /lib/systemd/system/machines.target.
daemonize (1.7.8-1) を設定しています ...
libnss-mymachines:amd64 (249.11-0ubuntu3.3) を設定しています ...
First installation detected...
Checking NSS setup...
libc-bin (2.35-0ubuntu3) のトリガを処理しています ...
man-db (2.10.2-1) のトリガを処理しています ...
dbus (1.12.20-2ubuntu4) のトリガを処理しています ...
Scanning processes...
Scanning processor microcode...
Scanning linux images...

Failed to retrieve available kernel versions.

The processor microcode seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.
sunao@WSL01:~$ wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
--2022-06-30 10:12:52--  https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb
packages.microsoft.com (packages.microsoft.com) をDNSに問いあわせています... 23.99.120.248
packages.microsoft.com (packages.microsoft.com)|23.99.120.248|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 3124 (3.1K) [application/octet-stream]
‘packages-microsoft-prod.deb’ に保存中

packages-microsoft-prod.de 100%[========================================>]   3.05K  --.-KB/s    in 0s

2022-06-30 10:12:52 (1.10 GB/s) - ‘packages-microsoft-prod.deb’ へ保存完了 [3124/3124]

sunao@WSL01:~$ sudo dpkg -i packages-microsoft-prod.deb
以前に未選択のパッケージ packages-microsoft-prod を選択しています。
(データベースを読み込んでいます ... 現在 83093 個のファイルとディレクトリがインストールされています。)
packages-microsoft-prod.deb を展開する準備をしています ...
packages-microsoft-prod (1.0-debian10.1) を展開しています...
packages-microsoft-prod (1.0-debian10.1) を設定しています ...
sunao@WSL01:~$ rm packages-microsoft-prod.deb
sunao@WSL01:~$ sudo apt update
取得:1 https://packages.microsoft.com/debian/10/prod buster InRelease [29.8 kB]
ヒット:2 http://archive.ubuntu.com/ubuntu jammy InRelease
取得:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
取得:4 https://packages.microsoft.com/debian/10/prod buster/main arm64 Packages [25.9 kB]
取得:5 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [109 kB]
取得:6 https://packages.microsoft.com/debian/10/prod buster/main armhf Packages [26.5 kB]
取得:7 https://packages.microsoft.com/debian/10/prod buster/main amd64 Packages [174 kB]
取得:8 https://packages.microsoft.com/debian/10/prod buster/main all Packages [4,034 B]
取得:9 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [99.8 kB]
取得:10 http://archive.ubuntu.com/ubuntu jammy/main Translation-ja [295 kB]
取得:11 http://security.ubuntu.com/ubuntu jammy-security/main amd64 c-n-f Metadata [3,156 B]
取得:12 http://archive.ubuntu.com/ubuntu jammy/universe Translation-ja [1,534 kB]
取得:13 http://archive.ubuntu.com/ubuntu jammy/multiverse Translation-ja [7,160 B]
取得:14 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 c-n-f Metadata [5,720 B]
2,425 kB を 2秒 で取得しました (973 kB/s)
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージはすべて最新です。

指定された dotnet-runtime-5.0 が古いらしく依存関係でエラーが出ました。

sunao@WSL01:~$ sudo apt install dotnet-runtime-5.0
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
インストールすることができないパッケージがありました。おそらく、あり得
ない状況を要求したか、(不安定版ディストリビューションを使用しているの
であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移
動されていないことが考えられます。
以下の情報がこの問題を解決するために役立つかもしれません:

以下のパッケージには満たせない依存関係があります:
 dotnet-runtime-deps-5.0 : 依存: libssl1.0.0 しかし、インストールすることができません または
                                   libssl1.0.2 しかし、インストールすることができません または
                                   libssl1.1 しかし、インストールすることができません
E: 問題を解決することができません。壊れた変更禁止パッケージがあります。
sunao@WSL01:~$ sudo apt install dotnet-runtime
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
E: パッケージ dotnet-runtime が見つかりません
sunao@WSL01:~$ aptitude search dotnet-runtime
p   dotnet-runtime-2.1                            - Microsoft .NET Core Runtime - 2.1.30 Microsoft.NETCore.A
p   dotnet-runtime-2.2                            - Microsoft .NET Core Runtime - 2.2.8 Microsoft.NETCore.Ap
p   dotnet-runtime-3.0                            - Microsoft .NET Core Runtime - 3.0.3 Microsoft.NETCore.Ap
p   dotnet-runtime-3.1                            - Microsoft .NET Core Runtime - 3.1.26 Microsoft.NETCore.A
p   dotnet-runtime-5.0                            - Microsoft .NET Runtime - 5.0.17 Microsoft.NETCore.App 5.
p   dotnet-runtime-6.0                            - Microsoft.NETCore.App.Runtime 6.0.6
p   dotnet-runtime-deps-2.1                       - dotnet-runtime-deps-2.1 2.1.30
p   dotnet-runtime-deps-2.2                       - dotnet-runtime-deps-2.2 2.2.8

最新は、6.0 のようですので、最新版を継続してインストールを続けます。ログは aptitude で確認を挟んだ結果、記録された一部の行が消えています。

取得:3 https://packages.microsoft.com/debian/10/prod buster/main amd64 dotnet-runtime-deps-6.0 amd64 6.0.6-1 [2,806 B]
取得:4 https://packages.microsoft.com/debian/10/prod buster/main amd64 dotnet-runtime-6.0 amd64 6.0.6-1 [22.8 MB]
23.0 MB を 12秒 で取得しました (1,865 kB/s)
以前に未選択のパッケージ dotnet-host を選択しています。
(データベースを読み込んでいます ... 現在 83101 個のファイルとディレクトリがインストールされています。)
.../dotnet-host_6.0.6-1_amd64.deb を展開する準備をしています ...
dotnet-host (6.0.6-1) を展開しています...
以前に未選択のパッケージ dotnet-hostfxr-6.0 を選択しています。
.../dotnet-hostfxr-6.0_6.0.6-1_amd64.deb を展開する準備をしています ...
dotnet-hostfxr-6.0 (6.0.6-1) を展開しています...
以前に未選択のパッケージ dotnet-runtime-deps-6.0 を選択しています。
.../dotnet-runtime-deps-6.0_6.0.6-1_amd64.deb を展開する準備をしています ...
dotnet-runtime-deps-6.0 (6.0.6-1) を展開しています...
以前に未選択のパッケージ dotnet-runtime-6.0 を選択しています。
.../dotnet-runtime-6.0_6.0.6-1_amd64.deb を展開する準備をしています ...
dotnet-runtime-6.0 (6.0.6-1) を展開しています...
dotnet-host (6.0.6-1) を設定しています ...
dotnet-runtime-deps-6.0 (6.0.6-1) を設定しています ...
dotnet-hostfxr-6.0 (6.0.6-1) を設定しています ...
dotnet-runtime-6.0 (6.0.6-1) を設定しています ...
man-db (2.10.2-1) のトリガを処理しています ...
Scanning processes...
Scanning processor microcode...
No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.
sunao@WSL01:~$ sudo apt install apt-transport-https
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  apt-transport-https
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
1,512 B のアーカイブを取得する必要があります。
この操作後に追加で 169 kB のディスク容量が消費されます。
取得:1 http://archive.ubuntu.com/ubuntu jammy/universe amd64 apt-transport-https all 2.4.5 [1,512 B]
1,512 B を 1秒 で取得しました (2,864 B/s)
以前に未選択のパッケージ apt-transport-https を選択しています。
(データベースを読み込んでいます ... 現在 83307 個のファイルとディレクトリがインストールされています。)
.../apt-transport-https_2.4.5_all.deb を展開する準備をしています ...
apt-transport-https (2.4.5) を展開しています...
apt-transport-https (2.4.5) を設定しています ...
Scanning processes...
Scanning processor microcode...
Scanning linux images...

Failed to retrieve available kernel versions.

The processor microcode seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.
sunao@WSL01:~$ sudo wget -O /etc/apt/trusted.gpg.d/wsl-transdebian.gpg https://arkane-systems.github.io/wsl-
transdebian/apt/wsl-transdebian.gpg
--2022-06-30 10:19:17--  https://arkane-systems.github.io/wsl-transdebian/apt/wsl-transdebian.gpg
arkane-systems.github.io (arkane-systems.github.io) をDNSに問いあわせています... 185.199.109.153, 185.199.108.153, 185.199.111.153, ...
arkane-systems.github.io (arkane-systems.github.io)|185.199.109.153|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 2280 (2.2K) [application/octet-stream]
‘/etc/apt/trusted.gpg.d/wsl-transdebian.gpg’ に保存中

/etc/apt/trusted.gpg.d/wsl 100%[========================================>]   2.23K  --.-KB/s    in 0s

2022-06-30 10:19:17 (30.7 MB/s) - ‘/etc/apt/trusted.gpg.d/wsl-transdebian.gpg’ へ保存完了 [2280/2280]

sunao@WSL01:~$ sudo chmod a+r /etc/apt/trusted.gpg.d/wsl-transdebian.gpg

root ユーザーに変更して作業を継続します。

sunao@WSL01:~$ sudo su -
Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.10.102.1-microsoft-standard-WSL2 x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of 2022年  6月 30日 木曜日 10:20:27 JST

  System load:    0.0029296875      Processes:             28
  Usage of /home: 0.0% of 95.56GB   Users logged in:       0
  Memory usage:   3%                IPv4 address for eth0: 172.28.186.10
  Swap usage:     0%


0 updates can be applied immediately.



This message is shown once a day. To disable it please create the
/root/.hushlogin file.
root@WSL01:~# cat << EOF > /etc/apt/sources.list.d/wsl-transdebian.list
deb https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main
deb-src https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main
EOF
root@WSL01:~#
ログアウト

追加したリポジトリから genie 関連のシステムを取り込みます。

sunao@WSL01:~$ sudo apt update
取得:1 https://arkane-systems.github.io/wsl-transdebian/apt jammy InRelease [3,215 B]
ヒット:2 https://packages.microsoft.com/debian/10/prod buster InRelease
取得:3 https://arkane-systems.github.io/wsl-transdebian/apt jammy/main Sources [1,609 B]
ヒット:4 http://archive.ubuntu.com/ubuntu jammy InRelease
取得:5 https://arkane-systems.github.io/wsl-transdebian/apt jammy/main amd64 Packages [2,115 B]
ヒット:6 http://security.ubuntu.com/ubuntu jammy-security InRelease
ヒット:7 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
取得:8 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [99.8 kB]
107 kB を 1秒 で取得しました (83.5 kB/s)
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージはすべて最新です。
sunao@WSL01:~$ sudo apt install systemd-genie
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
  build-essential dpkg-dev fakeroot g++ g++-11 gcc gcc-11 libalgorithm-diff-perl libalgorithm-diff-xs-perl
  libalgorithm-merge-perl libasan6 libatomic1 libc-dev-bin libc-devtools libc6-dev libcc1-0 libcrypt-dev
  libexpat1-dev libfakeroot libgcc-11-dev libitm1 libjs-sphinxdoc liblsan0 libnsl-dev libpython3-dev
  libpython3.10-dev libstdc++-11-dev libtirpc-dev libtsan0 libubsan1 linux-libc-dev lto-disabled-list make
  manpages-dev python3-dev python3-pip python3-psutil python3-wheel python3.10-dev rpcsvc-proto zlib1g-dev
提案パッケージ:
  debian-keyring g++-multilib g++-11-multilib gcc-11-doc gcc-multilib autoconf automake libtool flex bison
  gdb gcc-doc gcc-11-multilib gcc-11-locales glibc-doc libstdc++-11-doc make-doc python-psutil-doc
以下のパッケージが新たにインストールされます:
  build-essential dpkg-dev fakeroot g++ g++-11 gcc gcc-11 libalgorithm-diff-perl libalgorithm-diff-xs-perl
  libalgorithm-merge-perl libasan6 libatomic1 libc-dev-bin libc-devtools libc6-dev libcc1-0 libcrypt-dev
  libexpat1-dev libfakeroot libgcc-11-dev libitm1 libjs-sphinxdoc liblsan0 libnsl-dev libpython3-dev
  libpython3.10-dev libstdc++-11-dev libtirpc-dev libtsan0 libubsan1 linux-libc-dev lto-disabled-list make
  manpages-dev python3-dev python3-pip python3-psutil python3-wheel python3.10-dev rpcsvc-proto
  systemd-genie zlib1g-dev
アップグレード: 0 個、新規インストール: 42 個、削除: 0 個、保留: 0 個。
57.5 MB のアーカイブを取得する必要があります。
この操作後に追加で 200 MB のディスク容量が消費されます。
続行しますか? [Y/n]
取得:1 https://arkane-systems.github.io/wsl-transdebian/apt jammy/main amd64 systemd-genie amd64 2.4 [53.8 kB]
取得:2 http://archive.ubuntu.com/ubuntu jammy/main amd64 libc-dev-bin amd64 2.35-0ubuntu3 [20.3 kB]
取得:3 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 linux-libc-dev amd64 5.15.0-40.43 [1,286 kB]
取得:4 http://archive.ubuntu.com/ubuntu jammy/main amd64 libcrypt-dev amd64 1:4.4.27-1 [112 kB]
取得:5 http://archive.ubuntu.com/ubuntu jammy/main amd64 rpcsvc-proto amd64 1.4.2-0ubuntu6 [68.5 kB]
取得:6 http://archive.ubuntu.com/ubuntu jammy/main amd64 libtirpc-dev amd64 1.3.2-2build1 [192 kB]
取得:7 http://archive.ubuntu.com/ubuntu jammy/main amd64 libnsl-dev amd64 1.3.0-2build2 [71.3 kB]
取得:8 http://archive.ubuntu.com/ubuntu jammy/main amd64 libc6-dev amd64 2.35-0ubuntu3 [2,099 kB]
取得:9 http://archive.ubuntu.com/ubuntu jammy/main amd64 libcc1-0 amd64 12-20220319-1ubuntu1 [47.2 kB]
取得:10 http://archive.ubuntu.com/ubuntu jammy/main amd64 libitm1 amd64 12-20220319-1ubuntu1 [30.2 kB]
取得:11 http://archive.ubuntu.com/ubuntu jammy/main amd64 libatomic1 amd64 12-20220319-1ubuntu1 [10.4 kB]
取得:12 http://archive.ubuntu.com/ubuntu jammy/main amd64 libasan6 amd64 11.2.0-19ubuntu1 [2,283 kB]
取得:13 http://archive.ubuntu.com/ubuntu jammy/main amd64 liblsan0 amd64 12-20220319-1ubuntu1 [1,069 kB]
取得:14 http://archive.ubuntu.com/ubuntu jammy/main amd64 libtsan0 amd64 11.2.0-19ubuntu1 [2,261 kB]
取得:15 http://archive.ubuntu.com/ubuntu jammy/main amd64 libubsan1 amd64 12-20220319-1ubuntu1 [976 kB]
取得:16 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgcc-11-dev amd64 11.2.0-19ubuntu1 [2,526 kB]
取得:17 http://archive.ubuntu.com/ubuntu jammy/main amd64 gcc-11 amd64 11.2.0-19ubuntu1 [20.1 MB]
取得:18 http://archive.ubuntu.com/ubuntu jammy/main amd64 gcc amd64 4:11.2.0-1ubuntu1 [5,112 B]
取得:19 http://archive.ubuntu.com/ubuntu jammy/main amd64 libstdc++-11-dev amd64 11.2.0-19ubuntu1 [2,083 kB]
取得:20 http://archive.ubuntu.com/ubuntu jammy/main amd64 g++-11 amd64 11.2.0-19ubuntu1 [11.4 MB]
取得:21 http://archive.ubuntu.com/ubuntu jammy/main amd64 g++ amd64 4:11.2.0-1ubuntu1 [1,412 B]
libitm1:amd64 (12-20220319-1ubuntu1) を設定しています ...
libc-devtools (2.35-0ubuntu3) を設定しています ...
libalgorithm-merge-perl (0.08-3) を設定しています ...
libtsan0:amd64 (11.2.0-19ubuntu1) を設定しています ...
systemd-genie (2.4) を設定しています ...
dpkg-dev (1.21.1ubuntu2.1) を設定しています ...
libgcc-11-dev:amd64 (11.2.0-19ubuntu1) を設定しています ...
gcc-11 (11.2.0-19ubuntu1) を設定しています ...
libc6-dev:amd64 (2.35-0ubuntu3) を設定しています ...
gcc (4:11.2.0-1ubuntu1) を設定しています ...
libexpat1-dev:amd64 (2.4.7-1) を設定しています ...
libstdc++-11-dev:amd64 (11.2.0-19ubuntu1) を設定しています ...
zlib1g-dev:amd64 (1:1.2.11.dfsg-2ubuntu9) を設定しています ...
g++-11 (11.2.0-19ubuntu1) を設定しています ...
libpython3.10-dev:amd64 (3.10.4-3) を設定しています ...
python3.10-dev (3.10.4-3) を設定しています ...
g++ (4:11.2.0-1ubuntu1) を設定しています ...
update-alternatives: /usr/bin/c++ (c++) を提供するために自動モードで /usr/bin/g++ を使います
build-essential (12.9ubuntu3) を設定しています ...
libpython3-dev:amd64 (3.10.4-0ubuntu2) を設定しています ...
python3-dev (3.10.4-0ubuntu2) を設定しています ...
man-db (2.10.2-1) のトリガを処理しています ...
libc-bin (2.35-0ubuntu3) のトリガを処理しています ...
Scanning processes...
Scanning processor microcode...
Scanning linux images...

Failed to retrieve available kernel versions.

The processor microcode seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.
sunao@WSL01:~$ genie -l
genie: WARNING: systemd default target is default.target; targets other than multi-user.target may not work
genie: WARNING: if you wish to use a different target, this warning can be disabled in the config file
genie: WARNING: if you experience problems, please change the target to multi-user.target
Waiting for systemd....!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  ^C で強制停止を行いました。

Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/usr/lib/genie/genie/__main__.py", line 581, in <module>
  File "/usr/lib/genie/genie/__main__.py", line 564, in entrypoint
  File "/usr/lib/genie/genie/__main__.py", line 351, in do_initialize
  File "/usr/lib/genie/genie/__main__.py", line 294, in inner_do_initialize
KeyboardInterrupt
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/usr/lib/genie/genie/__main__.py", line 581, in <module>
  File "/usr/lib/genie/genie/__main__.py", line 568, in entrypoint
  File "/usr/lib/genie/genie/__main__.py", line 384, in do_login
  File "/usr/lib/genie/genie/__main__.py", line 112, in pre_systemd_action_checks
  File "/usr/lib/python3.10/subprocess.py", line 503, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
  File "/usr/lib/python3.10/subprocess.py", line 1141, in communicate
    self.wait()
  File "/usr/lib/python3.10/subprocess.py", line 1204, in wait
    return self._wait(timeout=timeout)
  File "/usr/lib/python3.10/subprocess.py", line 1938, in _wait
    (pid, sts) = self._try_wait(0)
  File "/usr/lib/python3.10/subprocess.py", line 1896, in _try_wait
    (pid, sts) = os.waitpid(self.pid, wait_flags)
KeyboardInterrupt

PID 1 が systemd に置き換えられているのか気になるところです。 top コマンドで確認してみました。

sunao@WSL01:~$ genie -s
genie: WARNING: systemd is in degraded state, issues may occur!
sunao@WSL01-wsl:~$ top
top - 10:26:42 up  1:57,  1 user,  load average: 0.03, 0.12, 0.06
Tasks:  32 total,   1 running,  31 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :  15705.3 total,  13924.7 free,    593.7 used,   1186.9 buff/cache
MiB Swap:   4096.0 total,   4096.0 free,      0.0 used.  14828.2 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1117 sunao     20   0   11388   3800   3208 R   0.3   0.0   0:00.01 top
      1 root      20   0  171676  13176   8592 S   0.0   0.1   0:00.71 systemd
     48 root      19  -1   39600  15708  14616 S   0.0   0.1   0:00.09 systemd-journal
     72 root      20   0   22944   6560   4456 S   0.0   0.0   0:00.09 systemd-udevd
     95 systemd+  20   0   16112   7984   6976 S   0.0   0.0   0:00.05 systemd-network
     96 message+  20   0    8852   5028   4148 S   0.0   0.0   0:00.10 dbus-daemon
     99 root      20   0   39580  21104  11820 S   0.0   0.1   0:00.08 networkd-dispat
    100 root      20   0  236444   9216   7036 S   0.0   0.1   0:00.03 polkitd
    101 syslog    20   0  222396   5312   4488 S   0.0   0.0   0:00.04 rsyslogd
    102 root      20   0 2279332  49004  17588 S   0.0   0.3   0:00.65 snapd
    106 root      20   0   15304   7308   6344 S   0.0   0.0   0:00.10 systemd-logind
    110 root      20   0  392764  13156  10816 S   0.0   0.1   0:00.05 udisksd
    151 root      20   0  316920  11872  10100 S   0.0   0.1   0:00.05 ModemManager
    246 systemd+  20   0   25256  12412   8384 S   0.0   0.1   0:00.06 systemd-resolve
    329 root      20   0    7936   1256   1116 S   0.0   0.0   0:00.00 cron
    341 root      20   0  116584  23532  14824 S   0.0   0.1   0:00.03 unattended-upgr
    353 root      20   0    7216   1096   1008 S   0.0   0.0   0:00.00 agetty
    355 root      20   0    7216   1072    984 S   0.0   0.0   0:00.00 agetty
   1039 root      20   0    2884    952    856 S   0.0   0.0   0:00.00 sh

systemd が PID 1 に収まっているようです。

genieの効果はいつまで続くのか?

永久的に genie の効果が持続しているようではないらしく、systemd が PID 1 に収まっているのは特定の期間だけのようで、どの時点にかはわかりませんが元の init に戻っています。


genie の環境が刻々と変化しているようで

今年 2022 年 GW前後の新しい動き、『WSL2+Ubuntu22.04に標準で入ったsystemdを試す』との情報に systemdを起動して PID 1 に収まっている記事がありましたが、現時点で確認すると PID 1 は元々の init が占めていて、別な場所に systemd が乗っています。

この systemd は wsl2 専用らしい

sunao@WSL01-wsl:~$ ls -l /usr/libexec/wsl-systemd
-rwxr-xr-x 1 root root 550  3月 18 00:08 /usr/libexec/wsl-systemd

sunao@WSL01-wsl:~$ /usr/libexec/nslogin
sunao@WSL01-wsl:~$

ランプの精の genie 君も成りを潜めていて PID 1 を奪い取ることをしていないようです。その説明の中で書かれている nslogin を起動してもメッセージはなくプロンプトが帰ります。

apache2を起動して結果を見ました

何かよくわかりませんが、apache2 を起動すると、特にエラーもなく起動されたようです。

sunao@WSL01-wsl:~$ sudo systemctl start apache2
sunao@WSL01-wsl:~$ sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-07-06 10:14:08 JST; 13s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 816 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 820 (apache2)
      Tasks: 4 (limit: 18840)
     Memory: 5.3M
     CGroup: /system.slice/apache2.service
             ├─820 /usr/sbin/apache2 -k start
             ├─821 /usr/sbin/apache2 -k start
             ├─822 /usr/sbin/apache2 -k start
             └─823 /usr/sbin/apache2 -k start

 7月 06 10:14:08 WSL01-wsl systemd[1]: Starting The Apache HTTP Server...
 7月 06 10:14:08 WSL01-wsl systemd[1]: Started The Apache HTTP Server.

コマンド top の結果を次に載せておきます。当初からの init が PID 1 を占めているようで、systemd は別の場所に乗っているです。

top - 11:22:05 up  2:02,  3 users,  load average: 0.00, 0.00, 0.00
Tasks:  70 total,   1 running,  69 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :  15705.3 total,  14445.1 free,    511.9 used,    748.2 buff/cache
MiB Swap:   4096.0 total,   4096.0 free,      0.0 used.  14932.6 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
      1 root      20   0    1776   1056   1020 S   0.0   0.0   0:00.02 init
     13 root      20   0    2116    356      0 S   0.0   0.0   0:00.00 init
     14 root      20   0    2124    356      0 S   0.0   0.0   0:00.19 init
     15 sunao     20   0    9748   5376   3628 S   0.0   0.0   0:00.02 bash
     34 sunao     20   0    8164   2148   1716 S   0.0   0.0   0:00.00 dbus-launch
     35 sunao     20   0    8292   2432   2052 S   0.0   0.0   0:00.00 dbus-daemon
     38 sunao     20   0  323148  38188  29196 S   0.0   0.2   0:00.13 fcitx
     45 sunao     20   0    8292   2928   2568 S   0.0   0.0   0:00.00 dbus-daemon
     49 sunao     39  19    6572    236      0 S   0.0   0.0   0:00.00 fcitx-dbus-watc
     50 sunao     20   0  187448  20192  13688 S   0.0   0.1   0:00.07 mozc_server
     82 root      20   0    2116    356      0 S   0.0   0.0   0:00.01 init
    107 root      20   0    6812    960    872 S   0.0   0.0   0:00.00 unshare
    108 root      20   0   18900  11340   7932 S   0.0   0.1   0:00.69 systemd
    155 root      19  -1   47796  15572  14464 S   0.0   0.1   0:00.16 systemd-journal
    189 root      20   0   23068   6672   4480 S   0.0   0.0   0:00.35 systemd-udevd
    191 root      20   0    4732   1684   1228 S   0.0   0.0   0:00.21 snapfuse
    192 root      20   0    4796   1804   1220 S   0.0   0.0   0:02.17 snapfuse
    217 systemd+  20   0   16112   8040   7028 S   0.0   0.0   0:00.16 systemd-network
    218 message+  20   0    9044   4892   4012 S   0.0   0.0   0:00.18 dbus-daemon
    221 root      20   0   39580  21088  11800 S   0.0   0.1   0:00.08 networkd-dispat
    222 root      20   0  236444  11000   6780 S   0.0   0.1   0:00.04 polkitd

使い方や動きがしっくりきていませんが、しばらく様子を見ながら付き合っていこうと考えています。

常用ノートPCが末期的に

遅くても今まで不便していなかったのですが…

何年前から利用しているのかは忘れてしまいましたが、元々 Windows 8.1 がセットアップされていた非力なノートPCを愛用していました。安価だったのでエプソンダイレクトで購入してずっと利用していました。世の中の情勢の変化もあり今は利用環境も変化しましたが、当初はGPS軌跡データの処理ができるので使い始めました。

その後、Windows 10 にアップグレードして、内蔵hddをSSDに換え、Linux Ubuntu を追加してのデュアルブート構成で、最近になってからは Windowsを立ち上げることなく Linux のみ使用していました。

遅いながらもゆったりと構えて不自由無く利用していたのですが、最近はディスクアクセスランプが点灯したままのフリーズが目立ち、動くのはマウスポインタだけで何分もフリーズが続き、忘れた頃に復帰していたりします。

元々非力で処理が遅いのに、さらに頻繁なフリーズが加わるようになってしまいました。このままの継続利用は無理なようで、何とかしなければと思いながら、色々な情報にアンテナを立て、何か別の機器をと思いながら物色していました。

一体で使い勝手が良いのでノートPCが理想的かと

新品のノートPCは、基本的に高価で、中古の場合は官公庁等の大量の置換で排出されたもので、世代も古くスペック的にも難があります。デスクトップPCも色々とあるようで、大きさ的にノートPCの代替が可能な製品は限られるようです。

近年はゲーム対象の小型機器も市場に出されているようで、安価ではないもののそこそこ魅力的な機種もあるようです。世の中も様変わりし、昔は対立ムード一色だったOS環境も目を見張る変化で、マイクロソフトが Linux に大きく歩み寄り、Windows 11 に wsl2 で Ubuntu を載せて同時に両方の OS を稼働させるのが可能で、かなり実用的になってきたようです。

悩んでいた時にAmazonのタイムセール

時々Amazonがタイムセールを行っているのは知っていて、特に気にも留めていなかったものの、何となく関係ないニュース記事を見ていて、IntelやAMDの最新のプロセッサの話題にも触れた中で、タイムセールが行われていて普段より安く購入できると記事の中で伝えていました。何となく見ていた記事に少し興味を持ち、IntelのCore i5 i7 とか、AMDのRyzen 9 何ていうのがニュース的に扱われていて、調べてみるとバリエーションもあるようで、Linux しか使わないならOS無しの選択もあり得るようだし、一応世の中標準のWindows は必要かとも考えて、プロセッサ数とメモリサイズを考えに含めて検討しました。

タイムセール対象品でないのが気になりました

実装メモリ32GB、PCIe SSD 512GB で、小型の筐体にAMD Ryzen 9 4900H 能書きによると8プロセッサらしい、筐体は開閉しやすい構造で、7mm厚の2.5インチベイが 2か所あり増設が容易らしい、1TB SSD の追加で wsl2 Ubuntu も動作可能か、Windows 10 が実装され、11 へのアップグレード対象品になっている。無い知識を絞り出して悩んで決断です。

MINISFORUMからリリースのミニPC「EliteMini HM90」能書きによるとディスプレイは、一般的なHDMI、自分では今まで意識していなかったインターフェースの DisplayPort / USB Type-C とあるようで、自分では使わないと思うけどフルで 3画面をサポートしているらしいです。

悩んで購入を決めた小型PC
衝動買い的に手配しました

夜中に注文を入れ、翌日配送と恐ろしいほど早い、普段は使わないけど最悪のメンテナンスではいつもお世話になりっぱなしの USB マウスとキーボードを挿し、テレビのHDMIをモニタとして繋いで電源投入です。久しぶりに目にする Windows 系の画面、何を操作したのか記憶は飛んでしまいましたが、指示されるままに Windows 11 までのアップグレードを一気に済ませました。

当然ですが初期不良もなく立ち上がりました

一応最低限の Windows 11 pro が起動する環境が手に入ると、粗くて見ずらいテレビ画面の前で昔の USBマウスとキーボードを使い身体をのめり込むようにしての作業は苦痛そのものです。モニタにしているのは、昔のシャープAQUOSと呼ばれたテレビですが、今年正月に購入した 50インチの 4K対応テレビの画面を見慣れてくると、大昔のテレビでは画面が粗すぎて文字の判読に苦労してしまいます。

2.5インチSSD 、 マウスとキーボードを検討

ネットの情報を参考に、Ubuntu をセットアップしてから、手持ちのHDDをUSBインターフェースのアダプタに組込み接続して、 Ubuntu から扱えるようにする操作をしてみました。Linux側からのマウントも初期化操作も問題なく動作するようなので、ケーブル取り回しの不安定性が気になる外付けドライブではなく、2.5インチ内蔵ベイに組込めるSSDの購入が最優先事項です。

色々と課題は山積のようですが、wsl2 で Ubuntu を実現する資源の確保は最低限の必須事項です。増設の内蔵 SSD とケーブル不要のマウスとキーボードが最低限の最優先資材のようですね。それとモニタも何とかしないと実用に耐えません。モニタについては、大きさと価格、機能、そして最近のインターフェースの方式についても調査して利用する場面での効果について検討の余地がありそうです。

良く理解できていないままWSL2をインストール

Windows 11 になってからは、WSL2 のインストールが簡単になって一行のコマンドで完結すると説明している情報がほとんどで、あまり意識しないまま実行してしまいました。後から色々な情報を確認すると Linux 側の一般ユーザー登録も一連の中に含まれているらしく、無意識にそこを飛ばしてしまっていたらしく root ユーザーでの # プロントのみが表示され、後からの一般ユーザー登録で苦労することとなりました。

まさかGUIインターフェースの組込みも一緒とは

正式リリース前に色々と作業している先駆者たちの情報があふれ、当初はグラフィックの表示は別に作られていて、WSLg と呼ばれていたようで、私もそれを組込みたくて色々と情報を収集したのですが取越し苦労の無駄をしていたようで、一連の WSL2 のインストール作業の中で完了していたようです。

内蔵ベイへ入れるSSD
レシーバーのドングルをUSBに挿すワイヤレス

キーボードもマウスも乾電池式で、キーボードが単四型1本、マウスが単三型1本と一貫性がありませんが、販売価格が安くて文句は言えません。ゆくゆくは手持ちの充電式電池で利用すると思います。

何とかWSL2 組込みを始めると気になるのはディスプレイ

ディスプレイも大きさや性能、価格、そしてインタフェースで色々な製品が販売されているのに改めて驚きました。ノートPCの代替品までは無理としても安く小型でドット密度の細かいものが良さそうに思い検討しました。

平べったくて 13.3インチと小さ目

購入してみて感じたことは、表示はものすごく小さいけど表示される情報量は多く、近くで見るのに不自由のない近視の私にはちょうど良いディスプレイのようです。さらに外部電源を接続していなくても PC と USB Type-C ケーブルで接続すれば、信号と電源が1本で完結できシンプルで申し分ありません。

IE11ってどうなの?

マイクロソフトのブラウザについてです。無償でアップグレードできる最新のOS Windows 10 では、以前からの延長にあるブラウザ Internet Explorer自体を使わせない方針に舵取りしているように思います。
ブラウザなのか、ブラウザの代替の別物なのかが良く理解できていないのですが、Edgeなるものが起動します。これってセキュリティの強化なのか、初期起動のトップには私の公開しているページを登録することができないような規制をかけているようです。
名前でアクセスできるように、無償のDDNSを利用させて頂いているわけですが、sunao-mita.pgw.jp この pgw.jp 部分が存在しないとしてエラーにします。
それと、アイコンマークの e ですが、昔からIEを指していましたが、微妙に絵を変えて Edgeなるものが立ち上がるように変わっています。そして、IEが何処にあるのか見付からない…不便だ、何なのこれ!
IEが動作するようにして、自分の写真公開用のページの動作確認をしてみると、北海道のメニューページで動かなくなってしまいました。確か前には動いているのを確認しているのに、アップデートしたらバグですか?
他社のFirefoxとChromeでは、問題なく普通に動いてます。しかし、IE11では時間の経過と共に CPU稼働率やメモリ消費が増加して、動作不能になってしまいます。
実は処理の冒頭でちょっと小細工していて、reload()メソッドを呼んでいました。その記録をCookieでメモしていたのですが、どうもIE11では処理できないらしい。html起動時に不安定でCookie処理でミスしているのかも知れません。
仕方なくIEを判別して、reload()処理をスキップするように変更しました。私のサイトで動作不能の時は、ぜひ FirefoxChrome で試してみてください。
何となく軽い動きで Chromeの動きはお薦めです。もっとも私のページは FirefoxとFirebugのお世話になって開発しています。当然有償の開発環境等の手持ちは無く、マイクロソフト系の動作確認はできますが、デバッグや原因究明はできません。

Windows Vista 最後の仕上げ (5)

今回のVista作業の開始時に、ネットワークがipv4のアドレスを自動取得できなくて、少し不都合だったため固定アドレスを強制的に割振り、ipv4をipv6より優先しようとコマンドを叩いたら、最初の一行目以外は受付けなくなり他の設定が消去されてしまいました。最後にそれの修復とDHCPからipv4のアドレスが取得できている確認を行いました。
ウイルス対策ソフトをマイクロソフトの無償のEssentialに入れ替えて、重要な更新プログラムを全て適用しました。あと残っているのは、Adobe Reader 7 です。直接アップグレードする経路は無いらしく、Adobe系のページに入るとIE9以前のブラウザはサポートしない旨の画面が出て拒否されました。
仕方なくIEについて調べましたが、9の後は11なのでしょうか、深くは確認しませんでしたが、11 以降は、Windows 7 から?
Vistaの公式ブラウザは、IE9 だとマイクロソフトのページに書かれていました。仕方なく適当なキーワード検索で行き着いたページからReaderをダウンロードしました。Adobe Reader 10 です。ダウンロードは別に Google Toolber と Google Chrome が勝手に入りました。
私が公開している写真のページも、グーグルマップと連携させている処理ではメモリが足りなくなるらしく、スワップがフル稼働してフリーズ状態になってしまうようです。あとは対策として実装メモリを倍の2GBにしてみるだけですね。
折角なので勝手に導入されたブラウザのGoogle Chrome を起動して、動作確認を考えたのですが、全く動きませんでした。仕方なくアンインストールを行い、インストールを再実行して無事に立ち上げができることを確認しました。
業界でメジャーなブラウザの3種類がともに、メモリが1GBしかないVistaにセットアップされて、動作を比較できる幸運な機会です。これを逃したら次はないと思われる幸運です。そこで、自分が公開している写真のページをグーグルマップと連携して各ブラウザで表示してみました。
検証の画面は1ヶ月半滞在した2015年の北海道のメニューです。ここではグーグルマップ上に、210ファイルにもなってしまったGPSの走行軌跡を重ねて表示しています。結論からWindows付属のIE9では、途中でフリーズして他の機能も動作しないほどの状況になり、強制終了させるタスクマネージャーまで動かせないような、システム全体がフリーズ状態になってしまいます。
FirefoxChromeでは共に最後まで動作して、期待する表示になりました。CPUが100%を示して長時間そのままになることはないようです。リソース不足の機器で利用するには理想的なブラウザでしょうか。
動作する2つのブラウザを、今のVistaの状態で、全てのGPS軌跡を描き終える時間として、2回づつ計4回で計測してみました。微妙な数値の違いは手順に慣れるまでの誤差が、その違いに影響しただけだと思われます。FirefoxとChromeは、ほとんど同じ時間で描き終えます。これ程まで同じ時間とは想像していませんでした。
IE9: 動作不能、計測不可
Firefox: 3:10 3:05 3:05 3:04
Chrome: 3:05 3:04 3:05 3:04
次に無償のアップグレードで、Windows 10 に変更した Acer AspireRevo ASR3610 を使い同じページを計測してみます。
IE11: 3:15 3:14 3:11 3:16
Firefox: 3:10 3:08 3:05 3:23
Chrome: 3:28 3:28 3:10 3:32
全体的に少し遅いような気がしますが、どのブラウザも大きな差が出ていないですね、サーバーとのデータ転送の時間がそのままに現れているように見て取れます。
 

Windows Vista sp2 先が見えてきた (4)

問題のVistaにsp2まで適用することができて、いよいよ正規のWindows Update による更新が可能になったと思われます。
1個の更新プログラムがあります…のような少量の更新で、エラーになりながら、再更新を何度か実施したような記憶があって、あまりに時間が掛かるので放置して寝ました。
朝起きると再起動の後らしく、パスワード待ちになっていました。そしてやっと、162個の更新プログラムがあります…との状況まで辿り着きました。そして、約4時間の経過後に 162個中57個目の更新プログラムをインストールしています… と表示して実行中です。
この時点で、システムのパーティション使用領域は、37.1GBです。それもsp1の対策中にダウンロードしたファイルやログの消去で、使用領域を減らしているのにです。工場出荷の製品時のパーティションは 30GB しか無かったので、たぶん Windows Update は全く機能していなかったのでしょうね。
162個の更新は、約9時間半掛かって終了しました。そして、システムのパーティションは、使用領域が 39.1GB になっていました。その中には Internet Explorer 9 が入っているようで、自動的にバージョンアップしていたようです。
さらに続けて更新プログラムを適用しています。ここまで来れば、先が見えたと考えても良さそうですね。
年寄りのボケ防止、休んでいた頭を目覚めさせるリハビリとしては、丁度良い題材だったと思います。久し振りに脳みそを刺激するホルモンが大量に流れたのではないかと思っています。
私も素人ですが、世間一般に大勢いる素人の人達では、こんな複雑で時間も多く掛かる作業は無理ですよね、Windows系は簡単に見せようとして、色々な場所を隠蔽してシステムを構成しているのが、逆に複雑にしてしまってるように思います。
大きなディスクにシステムを丸コピーした作業の時から、連続でフルに丸5日です。足掛けではなく丸5日が掛かっています。その前のコピーの試行も含めれば、フルに7日も掛かっている事になりますよね。こんな事は損得抜きのリハビリとしての作業でなければできない作業ですね。
Windows 7 では、同様な作業と無償の Windows 10 へのアップグレードを含めても半日を少し越えた程度だったと思いましす。今回の Windows Vista は久し振りに楽しませて頂きました。
 

Windows Vista sp1 その後 (3)

参った! Vistaは頑固者で一筋縄では行きません。
結局のところ、堂々巡りのsp1から脱出できないまま、数人が改善したと述べている手順を試すことにしました。
マイクロソフトからの作業手順に従って、サービスの Windows Update を停止して、ダウンロードしたファイルやログを全消去して、復元ポイントを新しく作成して、対応するsp1の Windows6.0-KB936330-X86-wave0.exe ファイル をダウンロードして、システムをセーフティーモードで起動して、ダウンロードした sp1 を管理者モードで実行しました。
期待したのに肩透かし、その後 「システムの整合性をとる」手順を管理者権限のコマンドプロンプトで行い、一部の修復ができなかったとの表示を含み完了し、再びセーフティーモードで sp1 を実行しましたが、同様に結果はエラーで、 エラーコード: 0x80070002 最初の頃のエラーコードは色々と変化していた様な記憶ですが、最近ではこのエラーコードに固定しています。
そこでエラーコードに対応する復旧手順の指示書に従って作業してみましたが、何故かエラーコードは同じ エラーコード: 0x80070002 えっ! その復旧なのに……、この意味は期待しているファイルが見付からないといった内容なのだとか?
次から次へと色々と行っているので、一部記憶違いがあるかも知れませんが、システム更新準備ツールとかのリンクから Windows6.0-KB947821-v35-x86.exe をダウンロードしました。同じような環境で再現した方が可能性があると思い、アップグレードしたIE8を削除して元のIE7に戻して、ダウンロード自体はブラウザにFirefoxを使いました。
今までの経いから期待をしないで  Windows6.0-KB947821-v35-x86.exe を起動すると長い時間が立って完了しました。その後で sp1を起動すると、今度こそは正常に完了したようです。ちゃんとシステムのプロパティで、Windows Edition の下に Service  Pack 1 の文字が書かれています。
その後のアップデートを継続実行しています。sp2までは長い道のりか?
また新たな壁に当たっています。やはりsp2が壁になってしまいました。同様にネットを検索するとsp2で進まなくなる人達が続出しているようです。その書き込みの内容にもsp1で使用したモジュールの名前が出てきます。
半信半疑で Windows6.0-KB947821-v35-x86.exe を実行してみましたがやはり駄目でした。でも解決方法を指示するリンクからダウンロードすると同じモジュールがダウンロードされたので、そのモジュールで解決した場合もあるようです。ただ、解決方法のリンクページは今のIE7 ではスクリプトが実行できないらしく、画面がグチャグチャでまともに見ることができません。
そんな訳で、IE8をスタンドアロンで再投入してから、次の対策に進めてみようかと思いました。IE8のインストールでは同時に色々な関連するモジュールが一緒にインストールされていると思われます。そして三度目のシステム更新準備ツール Windows6.0-KB947821-v35-x86.exe を実行してみました。
何となく同じソフトなのに、実行時間が長くなっているような気がします。実際にインストールされている内容で処理が異なるのでしょうね、きっと…そしてダウンロードしてあったsp2の Windows6.0-KB948465-x86.exe を実行しました。
長い時間が立ち、今度は最後まで実行したようです。システムのプロパティで、Windows Edition の下に Service  Pack 2 が表示されました。
 

Windows Vistaに四苦八苦 (2)

MS Windows Vista にはまってます。
別に書いているブログの続きです。何とか容量を拡張したVistaのシステムを Windows update しようと算段していますが、かなり難航していて頭を整理するためにブログに向かっています。
Windows update も、自動取得できないipv4のアドレスを手動で与えて何とか動き出して、99個、35個、…と更新されていましたが、Service Pack 1 になってから、何度起動しても履歴リストには[成功]と出ていて、5個も記録されているのに、再チェックでまた現れます。
よくよく見てみると Internet Explorer 7 のサポートは終わっていると書かれています。メニューの無いブラウザで、どこからバージョンを確認するのか四苦八苦してやっとのことで確認すると、確かにバージョンは 7 らしい。
Internet Explorer 9  [今すぐダウンロード] のボタンが表示されているので、一応クリックはしてもダイアログが表示され、対象モジュールは、 名前: IE9-WindowsVista-x64-jpn.exe と表示されていて、当然 [実行(R)] しても互換性がありませんのようなダイアログが開きます。そりゃOSが32bitのVistaなので、64bit用のソフトは動きません。
その画面の下には、まだ疑問がある場合は、 とリンクが貼られています。 でも…クリックしてもIE7では、表示できない作りになっているらしい。これって永遠の無限ループに落っこちていますよね。
仕方無く Mozira FireFox をダウンロードして、IE9-WindowsVista-x86-jpn.exe を入手、インストールしようとしてもパッチの前提条件で弾かれてしまい入らないようです。Service Pack 2 辺りが導入されていないとダメなように思います。しかし、それ以前に Service Pack 1 が導入されていないとそれも無理のようで、それには IE9 (Internet Explorer を今後 IE と記述) に変えろと突っぱねられたら、堂々巡りのデッドロックですよね。
以前、Windows XP を利用していた頃に、Service Pack 4 は、それ以前の Service Pack を包含していると認識していましたが、Vista の Service Pack 2 は、導入の前提条件に Service Pack 1 が導入されていることをあげていました。何かおかしいですよね、導入の前提条件に含まれるものが、その導入条件にその相手を含めているなら、導入する方法に解が無いことになりますよね。
打開策として、中間を取って IE8の導入を試みることにしました。と言ってもすんなりダウンロードの画面に辿り着くことはできず一苦労です。気長にネット検索で、それらしい画面を見付けることができて運良く無事に IE8-WindowsVista-x86-JPN.exe のダウンロードができました。そして、導入もできたようです。
おおっ !、やっとループから抜けることができたようです。4つの更新プログラムが表示されています。まだ先は長そうで、次のトラップがいつ出現するのか楽しみです。
完全に糠喜びでした。先に進んだと思って喜んだのですが、IE8が導入されているので、さすがに IE9 を入れろと行った画面は出て来なくなりましたが、でも以前と同様に SP1 の更新が履歴上は成功となっていて、以前同様に SP1 の適用でループしています。
マイクロソフトさんは、今更初期のVistaが世の中に存在することはありえないとの立場で、更新プログラムをメンテナンスしているのでしょうね、きっと。昔売っちまった物を今更使うな、使うなら新しいOSを買い換えろとの考えなのでしょうか。
更新パッチがメディアで販売もされているようですが、でもそれを買えば必ず更新できるのか疑問を感じますよね、高い金がかかるならそこそこの性能でも安いので、最新のOSを導入した最新の機器を購入した方が良さそうな気もします。
八方塞がりに突入してしまいました。
ネット検索に、「vista sp1 インストールできない」 のキーワードで、色々な人が苦労していることを知りました。この件は、2010年頃にも大勢の人に騒がれているようで、マイクロソフトのサポートで情報のやり取りが記録された物もアップされていました。今年 2015年にも私と同様な疑問を持ちながら悩んでいる人達が大勢いることがわかりました。
ダウンロードセンターから sp1 をダウンロードして実行して解決した人がいるようなので、同様にダウンロードして実行しています。モジュールは、Windows6.0-KB936330-X86-wave1.exe です。過去の記録では wave1 の部分が wave0 だったようなので改良されているのでしょうか。
起動すると長い時間が経過した後、内部エラーが発生しました…となり終了します。一度では納得できないので、再実行しましたが、同様に内部エラーの発生を示すダイアログが表示されて終わります。ただ、エラーコードが何故か異なっていたようでした。

Windowsにはまってます (1)

最近は利用するPCが Linux一辺倒で、一部のWindowsでしか動かせないGPSロガーのデータ収集とか、Windows系のシステムを入替えたりの作業で時々操作するだけになってしまったため、Windowsの操作や機能が疎くなってしまいました。
以前同じ会社で一緒に仕事をしていた友から、使えないWindows Vistaの話を聞きました。使えないとはどのような状況かというと、内蔵ディスクが60GBなので、その当時は一般的な格安ノートの製品の1つかと思われますが、何と半分にパーティション分けされていて、システム側が最初からほぼ空きのない状態で構成されています。
簡単に工場出荷の初期状態に戻せるとのフレコミのようですが、最初から数%の空きしかなくて、何もしなくてもWindows updateが行われれば、それだけでディスクエラーになるのではないかと思われる状況でした。製品名はEVEREX VA4100J Cel M 1.46 1GB 60GB DVD/RW です。
久し振りのWindows系のOSなので、ちょっと興味を持ちまして、頭の体操を兼ねてディスクを借りて持ち帰り、家に手持ちで空きのディスクがないかと探し回りましたが、見付けたのは500GBと80GBの2つでした。
60GBから80GBでは容量にあまり変わりがないし、かと言ってこのスペックに500GBじゃ過剰品質のようにも思え、他にも何とかしようと思っていたWindows 7の非力な PCが頭に浮かびました。こちらは160GBのディスクが内蔵されていました。
Windows Vista 60GB ⇒ 160GB,  Windows 7 160GB ⇒ 500GB とプランが決まりました。まず、先に160GBを空けなければなりません。歳を重ねた今でもちょっと気の短いところがあって、分解方法がわからず、無理やり分解を始めました。爪が欠けたりしても何故か明けられず、ネットで情報収集、何だ目隠しのシールを貼ったビスがあるのか…
その160GBのディスクが入っていた機器の構成をネットの情報で検索し確認しました。記憶力の低下が進み記憶から消えることが増えたので、自分で必要なメモとして追記しておきます。
たぶん製品名は、Acer AspireRevo ASR3610-A45、『 デュアルコア「Atom 330」へ強化し、処理能力の向上を図っている。上位機種「ASR3610-A45」は、4GBのDDR2メモリーや160GB HDDを搭載し、VESA取り付けキットやWebカメラ専用スタンドなどが付属、…OSはともに64bit版「Windows 7 Home Premium」をプリインストールする。 』 と価格.comの情報から拾いました。Windows 7 が出て直ぐの製品で、NVIDIA「ION」グラフィックスを搭載したハンディ・デスクトップPC、と書かれています。
Atom 330 プロセッサではかなり非力ですが、一応フルスペックになる4GBのメモリを搭載して、64bit OSが動くので、500GBディスクの換装と Windows 10 で蘇らせて利用しようと思います。
ちゃんと先に情報収集を行えば何の問題もなかったのですが、後悔先に立たずですね。基本的には DDコマンドでディスク to ディスクのフルコピー、その後レスキュー用のgparted で、パーティションをずらして広げて立ち上げると、最初にchkdskが勝手に起動して修復が行われて正常にディスク交換は完了しました。
そのままでは芸が無いので、Windows 10 に無償のアッブグレード、元が非力PCでもとりあえずのシステム換装です。今までは手持ちのLinux系や Windows XP 、 Windows 7 でディスクの入替えを実施して、大容量ディスクにヤドカリ君を実行しています。
そしていよいよ Windows Vista の作業です。いつもと同様に DDコマンドでコピーして、gparted で何とかパーティションを拡張して、手持ちの Windows 10 のノートにUSBアダプタで接続すると、ディスクのチェックが警告されてましたが、見た目は正常な状態に見えます。
本体から外したディスクだけの持ち帰りだったので、Linux常用のノートPCに装着して起動すると立ち上げ途中でリカバリの選択画面が出て、そのまま従うとコピーらしい動作後にリブートして、その後新規のユーザー登録が始まり Vistaが起動しました。容量も期待した100GBに拡張できていました。
その状態だと本来の装着する機器とはハード構成が異なるので、元に戻そうと思いパーティション間を DDコマンドでコピーして、大丈夫だろうと少し自信を持って友のもとに移動して、本来の機器に装着しました。同様にチェックが走りリカバリが起動して、立ち上がった結果の容量を見てがっかりです。えっ…30GBしか認識できない。
外からパーティションを確認すると100GBあるのに立ち上げた Windows からは 30GBにしか見えない。結局解決出来なくて、ツールの持ち合わせもなく、本体も含めて持ち帰りました。
基本の作業は DDコマンドを利用したコピーですが、色々な作業を実行しましたが、パーティションを広げた状態で、工場出荷に戻しても期待した状況にできませんでした。
Windows 環境でのコピーでは、フルコピーのコマンドには xcopy が利用できるようですが、色々なオプションで対象を絞るようです。rd削除コマンドも含めて、エラーが出て拒否されるものが発生しています。
色んなことを試行錯誤しながら試して、最終的には拡張したパーティションにシステムをセットアップした状況で立ち上げが成功しました。
Windows update が利用できない。調べると ipv4のipが作成されていない。自分が公開するページは、ipv6経由で接続できているので気が付かなくて、これには参った。
ipv4のアドレスが拾えないので、手動で固定のipを設定すると Windows update が機能したようで、修正を実行中です。
Vista は、特異なシステムのように感じます。初期状態でネットワークのモジュールに決定的なバグがあるような気がします。ipv6 より ipv4 を優先させたくて、設定を変更するコマンドを発行したけれど、何故か理由がわからずエラーで操作できません。 最新の Windows update が適用された時点で、動作確認を行わないと何とも言えないのが実状です。