スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

homeフォルダとtmpフォルダをramdisk化(tmpfs化)して高速化する

かなり前ですが、Kubuntuをusbメモリにインストールしました。
Kubuntuのデスクトップ 環境は標準でKEDですが、 KEDは美しくていいですね。

前回、tmpフォルダをramdiskにして高速化する方法を書きました。
今回Kubuntuをインストールしたということで、また設定しようと思いました。
しかし前回の設定でUbuntuを使っててもメモリの使用が1Gも越えなかったので、
「私のは4Gもあるし、もっとramdiskとしてもいいんじゃないか」と思い、
今回はhomeフォルダもramdisk化しようと思いました。
homeフォルダにはいろんな設定ファイルが隠しフォルダとして入っているので、それなりに高速化できるはずです。
(ramdiskとは、メモリ上に作る仮想のドライブのことです。読み書きが高速ですが、電源を切るとその内容も消えます)
なお、Ubuntuでも以下と同じ事をすれば高速化できます。

以下参考にしたページ
http://d.hatena.ne.jp/riocampos/20090614/p1
https://forums.ubuntulinux.jp/viewtopic.php?pid=45494


1、(recovery mode)で起動

起動して一番最初の黒い選択画面(GRUBメニュー)で、上から二番目の(recovery mode)を選択してください。
画面に文字がバーと流れて、黒い画面の中に選択画面がでます。
一番下の「root Drop to root shell prompt」を選択して「Enter」
(自分の環境では文字化け(?)してて「root ■ ■ root ■ ■」みたいになってました)
端末を開いたときみたいな黒い画面になったらOKです。

2、ramdiskの作成

/etc/fstabを編集します。

# vi /etc/fstab

viの使い方は前回の記事を参考にしてください。
ファイルの最後に

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /home/name tmpfs defaults,noatime 0 0


の2行を追加。(区切りはtab、nameはユーザー名。以下nameはすべてユーザー名)
保存終了してコマンドラインにもどります。
これで次回起動時から、/tmpと/home/nameはramdiskになります。

3、homeフォルダのバックアップ作成

# rsync -av /home/name/ /home/name_backup/

/home/name_backupの中にコピーされる。(保険用バックアップ)

# mkdir /home/bak
# mv /home/name/ /home/bak/name/

homeフォルダが/home/bak/nameへ移動される。
起動時にこのフォルダからhomeフォルダ(ramdisk)に読み込んで、シャットダウン時にこのフォルダにバックアップをとることにします。

4、起動時にhomeフォルダ(ramdisk)に読み込む設定

/etc/init/mountall.confを編集します。

# vi /etc/init/mountall.conf

最後の方の「post-stop script」の後へ

/usr/bin/rsync -a /home/bak/name/.kde/ /home/name/.kde/
/usr/bin/rsync -a /home/bak/name/ /home/name/


を書き込みます。(茶色い文字はKubuntuの場合のみ。KDEの設定ファイル(~/.kde)を先に読み込んでやらないとhomeフォルダがでかくなった時にエラーがでるためです。)
以下ようであればOKです。


・ ・ ・
post-stop script
/usr/bin/rsync -a /home/bak/name/.kde/ /home/name/.kde/
/usr/bin/rsync -a /home/bak/name/ /home/name/
  rm -f /forcefsck 2>dev/null || true
end script


5、シャットダウン時にバックアップをとる設定&ブラウザのキャッシュ削除設定

# vi /etc/init.d/umountfs

の最後の方のstop)とdo_stopの間に

rm -rf /home/name/.cache/google-chrome
/usr/bin/rsync -a --delete /home/name/ /home/bak/name/


を書き込みます。
私は標準ブラウザは使わずにChromeを使っています。標準より圧倒的に早いので気に入ってます。
Chrome以外の人は一行目をそのブラウザのキャッシュがあるところに変えてください。

書き込み後はこんな感じです。

・ ・ ・
case "$1" in
  ・ ・ ・
  stop)
    ・ ・ ・
    rm -rf /home/name/.cache/google-chrome
    /usr/bin/rsync -a --delete /home/name/ /home/bak/name/
    do_stop
    ;;
  ・ ・ ・
esac

:



これで終わりです。
あと、homeフォルダはあまりでかくしないようにしたほうがいいかもしれません。
ramdiskに読み込む時に時間がかかってしまうからと、メモリが足りなくなったら大変だからです。
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

わたがしα

Author:わたがしα
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。