ZONDEEL BLOG

技術と生活のログ

Ubuntu で Ramdisk を作成し、キャッシュをそこに移動する。

Ubuntuの場合それほどメモリを消費しないので
余剰分のメモリで Ramdisk を作成してキャッシュファイルをそこへ移動する。
(SSDへの書き込みを減らす意味も含めている。)

Ramdiskという性質上、その場合のキャッシュファイルについては
再起動等で消去されてしまうことになる。

また、環境としては Ubuntu 14.10 64bit(β) を使用しているが
あまり関与しない情報だと思う。

Ramdisk の作成

マウント先を作成する。

sudo mkdir /ramdisk
sudo chmod 777 /ramdisk

fstab を編集し、1.5Gの容量の Ramdisk を作成する。

sudo vi /etc/fstab

以下を最終行に追記する。

16.04 等 14.04 以降の場合
tmpfs     /ramdisk tmpfs rw,size=2G,x-gvfs-show     0 0
14.04 の場合
/dev/shm /ramdisk tmpfs size=1536m 0 0


使用するファイルシステムは tmpfs と ramfs があるようだが、
tmpfs は確保するメモリ容量を可変で使ってくれるらしい。

■参考
RAM ディスク - ArchWiki
tmpfs は本当に容量が動的なのか - naoyaのはてなダイアリー

マウントする。
(fstabにある設定のものを全てマウント)

sudo mount -a

正しくマウントされているかを確認する。
以下のように設定通りのものが表示されれば大丈夫。

df -h | grep ramdisk
/dev/shm        1.5G   32M  1.5G   3% /ramdisk

キャッシュファイルを Ramdisk へ移動する

今回の対象は以下の2ディレクトリ。
乱暴だが一旦削除してしまう。

rm -rf ~/.cache
rm -rf /tmp

削除したディレクトリの代わりに
Ramdisk へのシンボリックリンクを作成する。

ln -s /ramdisk ~/.cache
sudo ln -s /ramdisk /tmp

Ramdisk とは関係ない余談

.xsession-errors が HOME 直下に日々書かれるのが気になる。
出力先を変える方法が分からなかったので、 /dev/null へリンクする。

以下の内容を .bashrc へ追記する。

# .xsession-errors can grow huge... remove it
if [ ! -h $HOME/.xsession-errors ]
then
    /bin/rm $HOME/.xsession-errors
    ln -s /dev/null $HOME/.xsession-errors
fi
 
if [ ! -h $HOME/.xsession-errors.old ]
then
    /bin/rm $HOME/.xsession-errors.old
    ln -s /dev/null $HOME/.xsession-errors.old
fi

■参考
.xsession-errors can grow HUGE | The Ubuntu Incident

Ubuntu に最新の NVIDIA Driver をインストールする。

何か描画が可怪しいので、とりあえず NVIDIA Driver を最新のものを入れてみる。

NVIDIAドライバダウンロード

http://www.nvidia.co.jp/Download/index.aspx?lang=jp

上記のページより自分のものに合うドライバーをダウンロードする。
自分の場合は GT650Ti の Linux 64bit を対象としてダウンロード。

Install / Uninstall NVIDIA Driver 340.32 On Ubuntu / LinuxMint | Ask Me Tutorials

http://www.askmetutorials.com/2014/08/install-uninstall-nvidia-driver-34032.html

上記のページを参考にインストールを実施する。
ちょっと手法が違うが以下で対処した。

  1. Ctrl + Alt + F1 でコンソールモードに入る。
  2. # sudo apt-get purge nvidia*
  3. # sudo service lightdm stop
  4. # sudo service gdm stop
  5. # sudo chmod 755 ~/Downloads/NVIDIA-Linux-x86_64-340.32.run
  6. # sudo ~/Downloads/NVIDIA-Linux-x86_64-340.32.run

ここから CUI で進むが、何を省いていいのかは正直わからないので
32bit ドライバーも含む形で全て Yes を選択。

最終的に sudo reboot を実施し、正常に起動できれば完了。
正常にできない場合は・・・ちょっとわからない。