
※今回の記事は、Claude相談室に入り浸るまでの期間のまとめで、ChatGPTによる代筆です
/etc/fstab【file systems table】騒動記
今回のLinux移行は、これまでの「Linuxをちょっと試してみる」とは違う。
今回は、いよいよWindowsから本気で離れるための移行である。
メイン環境にはZorin OSを選び、普段使いに必要な設定やアプリを少しずつ整えていく。
ところが、出だしは拍子抜けするほど順調だった。
「なんだ。Linuxって、思っていたほど難しくないやん」
……この感覚が、今回の事件の始まりだった。
Linuxを使い始めて少し慣れてきたところで、私は「/homeを別パーティションに分離する」という、初心者が最初から手を出す必要のない作業に挑戦した。
結果は、見事に撃沈。
ただし、この失敗は単なる失敗ではなかった。
Linuxの起動、EFI、GRUB、UUID、fstab、マウント、systemdなど、普段は意識する必要のない仕組みを一気に覗くことになったからだ。
そして最後には、もっと重要なことにも気づいた。
「できるようになったからといって、やらなければならないわけではない」
今回は、その顛末を「移行初期のターニングポイント」として記録しておく。

1.Zorin OSのスタートは、拍子抜けするほど順調だった
今回のLinux移行では、最初から大きなトラブルに遭遇したわけではない。
むしろ逆だった。
- Zorin OSをインストールし、基本的な環境を整えていく。
- キーボード。
- Mozc。
- 画面。
- タスクバー。
- アプリケーション。
- ファイル管理。
- NAS。
必要なものを順番に設定していくと、意外なほど普通に使える。
しかも、以前Ubuntuを試したときよりも「普段使いのOS」としての感触がいい。
ここで、ちょっと調子に乗った。
「これなら、Linuxの内部も少しくらい触ってみても大丈夫だろう」
その「少しくらい」が、今回の騒動につながった。
2./homeを別パーティションにしたくなった
Linuxでは、ユーザーの個人データや設定ファイルなどが入る/homeを、OS本体とは別パーティションにする構成がある。
OSを再インストールするときにもユーザーデータを残しやすい。
考え方としては、たしかに合理的だ。
そこで、
せっかくLinuxを本気で使うのだから、/homeも分離しておこう
と考えた。
しかし、ここで本来なら一度立ち止まるべきだった。
今回の目的は、
Linuxの内部構造を極めることではない。
あくまで、
WindowsからZorin OSへ移行して、普通にパソコンを使えるようにすること。
OSは土台であり、最終目的ではない。
ブログを書き、プログラムを作り、普段の作業をする。
そのためのLinuxなのだ。
ところが、この時点ではまだ「Linuxを理解すること」そのものが少し面白くなっていた。
そして私は、余計な一歩を踏み出した。(^。^;
3.最初の関門「特殊ファイルはコピーできません」
まず、既存の/homeの内容を、新しく用意したパーティションへコピーする。
すると、いきなりこんな趣旨のメッセージが出た。
特殊ファイルはコピーできません
ここで、
「これは一体どういうことだ?」
となる。
Linuxには、Windowsの一般的なファイルとは違う「特殊ファイル」や、ファイルシステムが扱う特殊なオブジェクトが存在する。
ただ、今回の目的はLinuxの特殊ファイルについて勉強することではない。
そこで、とりあえず「すべてスキップ」を選択。
すると、通常のユーザーデータはどんどんコピーされていった。
最終的には、
約47,000ファイル
がコピーされた。
フォルダ構造もきちんと残っている。
ここまでは、順調に見えた。
4.次は/etc/fstab
問題は、コピーしただけでは終わらないことだった。
新しいパーティションを、システム起動時に/homeとして使わせる必要がある。
そこで登場したのが、/etc/fstab
である。
ここで、Linuxのファイルシステムを少し勉強することになった。
今回の構成では、パーティションそのものをデバイス名だけで指定するのではなく、UUIDを使って指定する。
たとえば、
lsblk -f
でファイルシステムとUUIDを確認できる。
さらに、
blkid
でもUUIDを確認できる。fstabに指定した内容が正しいか確認するため、
sudo mount -a
を実行する。
すると、今度はsystemd関連の警告が出た。fstabを変更したので、
sudo systemctl daemon-reload
を実行する。
そして、もう一度、
sudo mount -a
エラーが出ない。「おお、いけたか?」
となった。
5.しかし、再起動すると話が変わった
確認のため再起動。
ところが、期待した状態になっていない。
ファイルマネージャー上でも、思ったように新しい領域が見えない。
ここから、
「いったい今、どのSSDの、どのパーティションを使っているのか?」
という問題が発生した。
このあたりから、一気にLinuxの「分かりにくい世界」に入っていく。
6.NASのエラーまで出てきて、さらに混乱
さらに悪いことに、NASの認証関連でもエラーが出た。
たとえば、
/home/hikosama-zorin/.nascred
に関係するエラーである。
しかし、これは今回の/home分離問題とは別件だった。
Linuxのトラブルでは、
同じタイミングで出たエラーが、全部同じ原因とは限らない。
これを身をもって体験することになった。
ひとつの問題を追っているつもりが、別の問題まで目の前に現れる。
初心者にとって、これはかなり厄介だ。
7.lsblkとUUIDの世界へ
そこで、現在のディスク構成を確認する。
基本となるコマンドは、
lsblk -f
である。
今回、最終的に確認できた構成は、おおむね次のようなものだった。
sda1 vfat FAT32 UBUNTU2401
sda2 ext4
sda3 ext4 SPAREsdb1 ext4 /
sdb2 ext4 Zorin-DATA
ここで重要なのは、
「sdaだからこう」「sdbだからこう」と名前だけで判断しないこと。
実際のマウントポイント、UUID、LABELなどを合わせて確認する必要がある。
たとえば、
lsblk -f
で、
- デバイス名
- ファイルシステム
- LABEL
- UUID
- マウントポイント
を一度に確認できる。
Linuxのディスク作業では、このコマンドがかなり重要だと分かった。
8.Live USBのお世話になる
結局、通常起動したOSの中だけで作業を続けるのではなく、Live USBから起動してパーティションを操作することになった。
ここでは、
使用中のシステムパーティションをアンマウントしてから操作する
という、基本的だが重要なことも体験した。
そして、
- システム領域を縮小
- 約120GBを確保
- 残りを
Zorin-DATAとしてext4で作成
という作業を行った。
このあたりになると、もはや「Linuxを普通に使う」という範囲を完全に超えている。
しかし、Linuxの内部がどう動いているのかを垣間見ることはできた。
9.そして、また/homeのマウントでつまずく
作成したパーティションを確認すると、
sdb1 ext4 /
sdb2 ext4 Zorin-DATA
という構成になった。
ところが、その後の設定で、Zorin-DATAが/homeと通常のマウントポイントの両方に関係してしまう状態になった。
つまり、
「今、どこに何をマウントしているのか?」
が、さらに分かりにくくなった。
ここでLinuxの恐ろしさを実感する。
Windowsなら、
「Dドライブにデータを置きました」
で終わる話が、
Linuxでは、
- パーティション
- ファイルシステム
- UUID
- マウントポイント
/etc/fstab- systemd
などが絡んでくる。
もちろんLinuxを使う以上、これらの仕組みを知っておくことは無駄ではない。
ただし、
普段使いのLinux環境を作るために、ここまでやる必要があるのか?
という疑問も出てきた。
10.最後はCapsLockとMozcまで巻き込まれた
そして、さらに悪いことに、キーボードのCapsLockが不安定になり、Mozcによる日本語入力までうまく動かなくなった。
これはかなり痛かった。
パソコンを使うための基本中の基本だからだ。
ここまで来ると、
/homeを分離したかっただけなのに、なんで日本語入力まで壊れているんだ?
という状態である。
Linuxの奥深さを学んだというより、
自分からトラブルの沼を掘っている
ような感覚になってきた。
11.結局、/home分離をあきらめる
何度かやり直してみた。
しかし、うまくいかない。
そして、ここで一度リセットすることにした。
すると、面白いことが起きた。
初期状態に戻して、設定を一つずつ順番に行う。
すると、
- CapsLock
- Mozc
- 縦タスクバー
- 各種基本設定
などが、比較的すんなり整っていく。
しかも、基本的な環境構築そのものは、
約2時間程度
で済んだ。
「なんだ、最初からこうすればよかったのでは?」
という結論になった。
12.今回の本当の収穫
今回の失敗を、
「/home分離に失敗した」
だけで終わらせるのは、少しもったいない。
むしろ重要だったのは、
Linuxを使う目的を再確認できたこと
だった。
Linuxそのものは面白い。
しかし、Linuxを深く研究することが目的ではない。
自分にとってOSは「土台」だ。
その上で、
- ブログを書く
- プログラムを作る
- 写真や音楽を管理する
- 普通にパソコンを使う
ことが目的になる。
だから、
Linuxの仕組みを理解するために、わざわざ自分の環境を難しくする必要はない。
ということに気づいた。
13.「できる」と「やるべき」は別だった
今回、一番大きな反省点はここだと思う。
少しLinuxの操作ができるようになった。
ターミナルも使える。lsblkも分かる。
UUIDも見られる。fstabも編集できる。systemctl daemon-reloadも知った。
だから、
「/home分離くらい、やってみてもいいだろう」
となった。
しかし、
できることと、やるべきことは別だった。
Linux初心者が最初にやるべきなのは、
「Linuxの構造を全部理解すること」
ではない。
まず、
普通に安定して使える環境を作ること。
それで十分だった。
14.今回の結論
今回の騒動を一言でまとめるなら、
順調すぎて調子に乗った。
これに尽きる。
ただし、完全な無駄だったとも思っていない。
EFI、GRUB、UUID、fstab、マウント、systemdなど、これまで名前しか知らなかったLinuxの仕組みを、実際のトラブルを通して見ることができた。
その意味では、かなり濃い「Linux入門」になった。
ただし、
二度と同じことをやるか?
と聞かれれば、
「今のところ、やらない」
である。
Linuxは面白い。
でも、Linuxそのものを目的にはしない。
これからは、必要になったときに必要な範囲だけ勉強する。
そのくらいの距離感が、ちょうどいいようだ。
コメント