年初に Arch Linux 専用機としてラップトップを買いまして 2ヶ月ほど試運転してました。
今まではラップトップに元から付いていた 320GB の HDD を使ってたのですが、少しこなれてきたこのタイミングで SSD に交換することにしたのでした。
購入したのはこちら。
2015年現在、128GB の容量では最安値クラスの商品ですが、レビューを見て動作が安定してそうなのでこれにしました。
もう何千円か盛れば 256GB 買えるじゃんと思われるかも知れませんが、僕の場合主に仕事で Arch Linux を使っており、以下のような特徴があります。
- 僕以外にユーザが居ない。つまり /home 以下には僕のユーザディレクトリしかありません。
で、ホームディレクトリ全体のサイズが常時 20GB ぐらい、膨らんでも 30GB ぐらい。 - コマンドライン中心の作業が多く、パッケージがでかいアプリって gnome と各種ブラウザぐらい。
というわけで、今 df で見てみたらシステム領域が占めてる容量が 5GB ちょっとという感じ。 - Arch は仕事専用機、もっと言うとプログラミング+文書作成とルーティンワーク専用機にしており、その他のこと(音楽や画像ファイルの管理とか、メールとかチャットとか)はすべて Mac のお仕事というように棲み分けしてます。
そういう感じなので、/dev/sda は全体で 100GB 程度あれば十分というわけです。
以降、いろいろ書きますが、中には素人丸出しの部分もあるので何かツッコミがあれば こちらの about ページ の下の方にある連絡先までどうぞ(ブログ上でコメントをやり取りする文化がないもので、すみません)。
パーティショニング
試運転時はシングルパーティションで使ってたのでこれを機会にパーティションを切りました(この節は SSD 云々というよりはディスクの移行に際しての自分へのメモという感じです)。
目的としては /var と /home を別パーティションにすること。
あとはついでに /boot も分けました(今のマシンは 2011 年当時のもので単純な BIOS で動作してますが、今後は EFI boot の機種が増えそうなのでなんとなくやっといたほうがいいかなと)。
パーティショニングについては Arch Wiki の こちらのページ を参考にしました。
いろいろ書いてありますが、僕が最終的にプランを立てたのはこんな構成。
パーティション | マウントポイント | 容量 | type id | フォーマット |
---|---|---|---|---|
/dev/sda1 | /boot | 200MB | 8300 | Ext4 |
/dev/sda2 | / | 15GB | 8300 | Ext4 |
/dev/sda3 | /var | 8GB | 8300 | Ext4 |
/dev/sda4 | /home | 残り全部 | 8300 | Ext4 |
どこをどう分けるとかどのくらいの容量にするとか・・・調べれば調べるほどいろんな情報が出てきて正直切りがないなと思いましたよ。
途中で「要は動けばいいんだよ」と神の声が聞こえたので、スピリットに従って以上のような構成にしました。
ググっててよく見かけたのが /var を分ける派と分けない派のご意見。
/var はシステムの履歴が貯まるところなので、ここがいっぱいになると不具合が生じる。ただし /var が可変だと動作が遅くなる可能性がある(SSD だとあまり気にならないのかも知れないけど)。
なので選択肢は 2 つ。
- /var を分けてちゃんと整理しながら使う
- 放っておく
で僕は単に性格上、要らないものを捨てるのが好きなので分けることにしました。
パーティショニングには gdisk を使いました。
買ってきたばかりの生まれたて SSD ならばいきなり o で全体を新規ディスクと認識させてからパーティションを切っていけばよいです。
もし出荷時におせっかいソフトが入っていたり、既に某かの用途で使用していたのなら、d (delete) と w (write) で地道に元のパーティションを削除してから o ですね(あ、これは SSD 全体をフォーマットする体で書いてます)。
あとは n とサイズ、ファイルタイプ指定でずんずんパーティションを作っていき、最後に w で完了です。
パーティションを切ったらそれぞれを
# mkfs.ext4 /dev/sdaN
でフォーマットしていきます。
/etc/fstab
ここが SSD 独特のところです。最初に書いたパーティショニングは HDD でもやることは変わらないです。
Arch Wiki がすごすぎるので詳しいことは全部 こちら にお任せしますが、掻い摘んで少し書きます。
SSD は寿命について云々言われることが多く、実際自分も全く気にしてないわけじゃないです。
長らく達者で働いてもらうために有効にしておいたほうが良い機能が TRIM です。
TRIM がその SSD でサポートされているか否かはこちらのコマンドで確認できます。
# hdparm -I /dev/sda | grep TRIM
TRIM サポートを確認できたら、/etc/fstab の中で discard
というオプションを使って TRIM を有効にします。
例えば ビギナーズガイドの fstab の生成 のところを見ると、# genfstab -U -p /mnt >> /mnt/etc/fstab
した後、# nano /mnt/etc/fstab
のようにエディタで一度開いて確認しろよ、と書いてあります。
genfstab
コマンドは最低限のオプションしか付け加えてくれないので、エディタで開いたタイミングでマウントフラグの部分を defaults,noatime,discard
みたいに書き換えましょう。
詳しくは Arch Wiki の SSD のページ に書いてあります。
profile-sync-daemon(psd)
仕事中もそうでない時もブラウザはだいたい立ち上げてるわけですが、この子たちはすごい量の一時ファイルを生成し続けます。
デフォルトでそれらは SSD や HDD の中に直接書き込まれるわけです。
で、問題になるなるのがやっぱり SSD の寿命です。SSD は書き込まれる量で寿命が決まります。
psd はその大量の一時ファイルを一旦 RAM で保持して、一定時間ごとに SSD/HDD 内の然るべき場所に戻すという仕事をしてくれます。
このおかげで SSD/HDD への書き込み量は減少し、なおかつ、RAM へのアクセスだけでブラウザが稼働できるので動作が軽くなります。
「じゃあ結構メモリの容量必要なんじゃないの?」と思われるかも知れませんが、ブラウザのキャッシュって一個一個がとても小さいのでその時々で保持しなきゃいけないキャッシュの総量は大したことないです。
問題なのはその頻度ですね。SSD からしてみれば書き込まれたバイト数の「累計」が寿命に影響するので。
psd のインストールから使い方は こちらの Arch Wiki に書いてあるとおりですが、要点だけ掻い摘んで書きます。
インストールは
yaourt
で、
% yaourt -S profile-sync-daemon
とすると、AUR からインストールしてくれます。
インストールしたら何はともあれ、psd を有効にするユーザを伝えなくちゃいけないので、
% sudo vim /etc/psd.conf
とエディタで上記ファイルを開いて、USERS=
の後にあなたのユーザ名を記入してあげてください。
ここまで出来たら psd が何をしてくれるかを以下のコマンドで確認します。
% profile-sync-daemon parse
psd の実行プランに納得がいったら、起動時に自動的に有効になるようセットします。
% sudo systemctl enable psd.service
再起動して無事有効になっていれば、割と体感でわかる程度にブラウザの動作が軽くなっているはずです。
補足
Arch Linux のインストールや X の設定など、全体的なことについてはもっとしっかりした情報源があるので端折りました。
インストール手順についてはたくさんの方が各所のブログにメモを残してくれていて非常に助かります。
でも基本はやっぱり Arch Wiki ですね。本文の中でも引用してる部分があるのでリンクを辿って一読してみることをおすすめします。
Arch Linux のインストールを初めて行うならまずは ビギナーズガイド を読んでみてください。
「ほんとに初心者ガイドか?」っていうくらいいろいろ詳しく書いてありますが、最初はちんぷんかんぷんでも自分のマシンを上手に使うには結局のところ知らなきゃいけないことがうまく纏まってます。
Arch Wiki を深堀していけば自然と Linux 全般やパソコン全般に詳しくなっていきます。
それと合わせて、この記事のようなブログをオプションとして読んでいただければ嬉しいです。