(2013-02-11 初稿 - 2020-08-11 転記)
240GB の SSD を新規購入し Ubuntu 12.10をインストールして利用していましたが、やはり空き容量が心配で楽しめなくなってきました。^^;
そこで、以前使っていたハードディスク(以下、HDD)をユーザ用として増設することにしました。
増設したHDDに /home を移動する方法もありますが、ここでは利用頻度が低く、かつ容量が大きいディレクトリのみを移動させることにしました。
この理由は、せっかく購入した高速なSSDをできるだけ有効に利用し、システム全体の速度向上を考えたからです。
例えば、テンポラリファイルやvimのスワップファイルのディレクトリは、SSD上にあった方がより高速になると思われます。
なお、以下の作業は、データを消去してしまう危険性を伴いますので、バックアップを取るなど、十分に注意をして行なってください。
作業の概要としては、以下のとおりです。
0 準備
1 HDDを増設する
2 増設したHDDの確認と中身の消去
3 新規パーティッションの作成
4 新規パーティッションのフォーマット
5 ファイルのコピー
6 コピーしたファイルのバックアップ化
7 シンボリックリンクの作成
8 動作確認
9 バックアップの削除
10 その他の調整など
なお、新たに購入したHDDを用いる場合は、2番目を飛ばして実行してください。
参考までに、筆者の環境を以下に示します。
OS: Ubuntu 12.10 64bit
SSD: Intel SSD 335 Sries 240GB
HDD: Western Digital製 2TB
ほぼバージョンやハードには依存しないと思いますが、念のため… ^^;
以下の作業で、parted または gparted を利用します。
まだ、インストールされていないようでしたら、以下のコマンドでインストールしてください。
ここでは、gpartedをインストールします。
sudo apt-get install gparted
※筆者は、最初、昔から利用していたfdiskを利用したのですが、大容量のHDDを管理するGPTが利用できないとのエラーがあり、最初からやり直すはめになりました。
今後、増設を予定されている方は、gparted または parted を利用してください。
ここでは、SATAケーブル等で内蔵HDDを増設します。
USBなどで増設する場合は、このページで解説する対象となりませんので、あしからず… m(__)m
作業の前に、パワーサプライのスイッチを切る、または、コンセントを抜いて電源を完全に落としてください。
デスクトップPCの場合は、HDDを固定後、SATAケーブルと電源を接続するだけで、特に難しい作業ではないと思います。
増設したHDDのドライブ番号を確認します。
以下のコマンドを入力するか、Dash等メニューから起動してください。
gparted &
パスワードの入力後、筆者のところでは、/dev/sdbとして認識されました。
続いて、増設したHDDの既存のパーティションを削除します。
gpartedの「パーティション」メニューから、「削除」を選択して、全てのパーティションを削除します。
新しくHDDを購入した方は、ここからスタートになります。
gpartedの「パーティション」メニューの「新規」を選択します。
筆者の場合は、データ保存用として利用するので、全て一つのパーティッションに設定しました。
続いて、「パーティション]メニューの「フォーマット」で「ext4」を選び、フォーマットを行います。
「パーティション」メニューの「情報」を選択すると、以下の画像のような情報が表示されますので、UUIDをコピーしてください。
表示されたUUIDを/etc/fstabに貼り付け、ここでは /home2 にマウントするように編集します。
sudo vi /etc/fstab
(/home2に設定する)
UUID="cf717d0a-ab75-448e-a5fd-30aed964c667" /home2 ext4 defaults 0 2
(2016-01-07追記)
ここで、一旦、再起動します。
ここでは、自分のホームディレクトリと同様に使えるように、/home2にユーザ名のディレクトリを作成し、パーミッションを変更します。
なお、ここでのユーザ名は、「hoge」とします。
sudo mkdir /home2/hoge
sudo chown hoge.hoge /home2/hoge
ファイルのコピーの前に、大きなファイルを検索します。
自分のホームディレクトリで、以下のコマンドを実行してください。
最後に表示されたディレクトリがサイズの大きなディレクトリになります。
du -m | sort -n
7488 ./mydoc 古いドキュメントを入れておくディレクトリ
18873 ./gazo デジカメ等の画像を入れておくディレクトリ
ここでは、gazo と mydoc を移動させることにします。
cd
cp -a gazo /home2/hoge
cp -a mydoc /home2/hoge
cd
mv gazo gazo.bak
mv mydoc mydoc.bak
ホームディレクトリにシンボリックリンクを貼ることで、ターミナルなどでは、これまでと同様な操作で、ファイル操作を行うことができるようになります。
cd
ln -s /home2/hoge/gazo gazo
ln -s /home2/hoge/mydoc mydoc
ディレクトリを移動し、シンボリックリンクに変更したので、各種ソフトウェアで動作の確認を行います。
筆者が試したところでは、画像ファイルを整理するshotwellでは、シンボリックリンクを解釈してくれず、再度画像をインポートする必要がありました。
なお、インポートする際には、せっかく画像を移動したので「元の場所でインポート」を選択してください。
shotwellの詳細は、以下のページを参照してください。
shotwell
筆者は、画像など大きな容量を使うディレクトリのバックアップには、unisonを利用しています。
(ちなみに、小さくて変更頻度が高いディレクトリは、Dropboxを利用しています。)
残念ながら、unisonもシンボリックリンクを解釈してくれないので、以下の設定ファイルを作成しました。
(2013-03-03 修正)
unisonはシンボリック・リンクをちゃんと解釈してくれました。
しかし、筆者の使い方が特殊で、一方はシンボリック・リンク、リモート側は通常のディレクトリとなっているため、結局以下の設定ファイルを利用しています。
詳細は、unisonのページをご覧ください。
cat .unison/pcA-pcB.prf
# Unison preference file
# option
times = true
prefer = newer
root = /home2/hoge
root = ssh://remotePC/
path = gazo
path = mydoc
ignore = Name *~
ignore = Name .*~
ignore = Name .bak
作成した設定ファイルは以下のように利用します。
unison pcA-pcB
なお、unisonの詳細な使い方については、以下を参照してください。
unisonでファイル、ディレクトリの同期
十分に動作を確認したら、バックアップしたディレクトリを以下のように削除します。
rm -rf gazo.bak
rm -rf mydoc.bak
筆者は、kvm+spiceで仮想化を行なっており、このimagesファイルがかなり大きいので、増設したHDDに移動してみました。
なお、kvm等の詳細については、以下を参照してください。
kvm
kvm+spiceでゲストのサウンドを聞く
cd /var/lib/libvirt
sudo cp -a images /home2
sudo mv images images.bak
sudo ln -s /home2/images images
virtmanager は、作成したシンボリックリンクで起動することができました。ヽ(^o^)丿
やはりこちらも、ちゃんと動作確認した後に、バックアップしたimagesディレクトリを削除します。
cd /var/lib/libvirt
sudu rm -rf images.bak
作業前と作業後で使用料をdfコマンドで確認したところ、以下のとおりになりました。
【作業前】
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 213G 70G 133G 35% /
udev 3.8G 12K 3.8G 1% /dev
tmpfs 1.6G 864K 1.6G 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 152K 3.9G 1% /run/shm
none 100M 8.0K 100M 1% /run/user
cgroup 3.9G 0 3.9G 0% /sys/fs/cgroup
【作業後】
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 213G 12G 191G 6% /
udev 3.8G 12K 3.8G 1% /dev
tmpfs 1.6G 876K 1.6G 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 2.5M 3.9G 1% /run/shm
none 100M 12K 100M 1% /run/user
cgroup 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sdb1 1.8T 59G 1.7T 4% /home2
/dev/sda1が70Gから12Gへと減少し、かなりすっきりしました。
HDDの増設により、SSDのみの構成に比べて動作の遅延を心配しましたが、筆者の体感ではほとんど差異を感じませんでした。
かなりすっきりしましたので、しばらくは240GのSSDでも心配は無さそうです。(^^)
また、ドキュメント類が多くなったら、/home2へ移動させるつもりです。
それでは、また。