Linuxクライアントを軽くする7つの方法
こんにちは。門脇です。
私の開発用PCですが、ここ最近までメモリが512MBで、
X + opera + icedove + xchat + emacs + urxvt何枚か開くだけでスワップします。
まさに、毎日がメモリの残量との戦い。
少しでも使用量を減らそうと工夫した結果をまとめてみました。(以下、シェルはzshを使用します。適時読み替えてください)
1・urxvtdの使用
urxvtと言えばrxvtのunicode対応版ですが、これには urxvtd と言うデーモンも付属しています。これを使えばurxvtを複数開くより効率的にメモリを使用できるので、開けば開くほどお得感が増します。
使い方はいたって簡単。
.xsessionなどでurxvtdを起動するようにするなどしてurxvtdを起動すれば準備完了。
ターミナルを開く場合には urxvtc を実行すれば、urxvtの窓が開きます。
設定はこんな感じ
.xsessionなどで
2・sshやスクリーンは軽量シェルに実行させる
私は zsh を愛用しています(使いこなしているかは別w)
補完機能や、複数行編集時などかゆい所に手が届くシェルですが、若干重い。
ssh実行中はzshである必要は無いので、別の軽量シェルを使います。
ここでは軽量な ash を使用してみます。
でインストールして、
.zshrcに、
とすれば、ssh_exampleを実行した瞬間、ashに切り替わってzshは終了し、sshが終了するとzshに切り替わります。
つまり、ssh実行中は若干の節約。
さらにashの分を節約するには、
でOKですが、こうするとsshが終了した瞬間ターミナルも終了してしまうため、突然セッションが切れた場合などにめんどくさい思いをするかもしれませんので、わざわざashを使っていたりします。
さらに節約するには、/etc/inittab の gettyをコメントアウトして、仮想コンソールの数を減らします。
これらで数十MBの削減になります。
3・余計なデーモンを止める
私の場合は、 lprng を止めている位です。apacheなどは別の開発サーバーに置いてあるので、あまり削減の余地はありませんでした。
その他要らなさそうなものを片っ端から切る。
4・軽量なウィンドウマネージャを使用する
KDEとかgnomeのような重量級ではなく、
fluxboxやratpoisonなどの軽い物を使う。
派手な機能はなくても、軽いものを使用。
ratpoisonはこの程度しか使用しないので、かなり軽量。
5・ブラウザの軽量化
Firefoxは、初期状態だけならそこそこ軽いが、アドオンを追加するごとに重くなっていく。下手すると300MB越える。
その点operaならデフォルトで大抵の機能は揃っている上に軽い。さらに、できるだけメモリにキャッシュしない設定にすればなおよし。
極論を言えば、w3m・・・(ry
6・emacsなどは別のサーバーで
別に開発サーバーが用意されていれば極力そっちを使う。emacsはかなりメモリを食うので、全部開発サーバーで動かしています。
クライアントの負担はsshのセッションのみ。
7・urxvtで壁紙を使用しない
せっかく透過や画像が使えるからとか言って無駄にリソースを消費するような処理をさせない。
私の場合は・・・思いっきり表示してますけどね。
これだけ実行してみたところ、とりあえずスワップはしにくくなりました。ただ、時間が経つにつれてoperaが重くなっていくので、
たまにoperaを再起動する必要があったりします。
以上、私が実行した軽量化の方法でした。
私の開発用PCですが、ここ最近までメモリが512MBで、
X + opera + icedove + xchat + emacs + urxvt何枚か開くだけでスワップします。
まさに、毎日がメモリの残量との戦い。
少しでも使用量を減らそうと工夫した結果をまとめてみました。(以下、シェルはzshを使用します。適時読み替えてください)
1・urxvtdの使用
urxvtと言えばrxvtのunicode対応版ですが、これには urxvtd と言うデーモンも付属しています。これを使えばurxvtを複数開くより効率的にメモリを使用できるので、開けば開くほどお得感が増します。
使い方はいたって簡単。
.xsessionなどでurxvtdを起動するようにするなどしてurxvtdを起動すれば準備完了。
ターミナルを開く場合には urxvtc を実行すれば、urxvtの窓が開きます。
設定はこんな感じ
.xsessionなどで
- urxvtd
-q -f -o
2・sshやスクリーンは軽量シェルに実行させる
私は zsh を愛用しています(使いこなしているかは別w)
補完機能や、複数行編集時などかゆい所に手が届くシェルですが、若干重い。
ssh実行中はzshである必要は無いので、別の軽量シェルを使います。
ここでは軽量な ash を使用してみます。
- hoge
27287 0.0 0.3 7512 2780 pts/13 Rs 22:35 0:00 zsh - hoge
28164 0.0 0.0 1768 144 pts/0 Ss+ Jul29 0:00 /bin/ash -c ssh hoge@hogehoge; exec /bin/zsh
- #
apt-get install ash
でインストールして、
.zshrcに、
- alias
ssh_exvample="exec /bin/ash -c 'ssh hoge@example.com; exec /bin/zsh' "
とすれば、ssh_exampleを実行した瞬間、ashに切り替わってzshは終了し、sshが終了するとzshに切り替わります。
つまり、ssh実行中は若干の節約。
さらにashの分を節約するには、
- exec
ssh hoge@example.com
でOKですが、こうするとsshが終了した瞬間ターミナルも終了してしまうため、突然セッションが切れた場合などにめんどくさい思いをするかもしれませんので、わざわざashを使っていたりします。
さらに節約するには、/etc/inittab の gettyをコメントアウトして、仮想コンソールの数を減らします。
3:23:respawn:/sbin/getty 38400 tty3 4:23:respawn:/sbin/getty 38400 tty4 5:23:respawn:/sbin/getty 38400 tty5 6:23:respawn:/sbin/getty 38400 tty6
これらで数十MBの削減になります。
3・余計なデーモンを止める
私の場合は、 lprng を止めている位です。apacheなどは別の開発サーバーに置いてあるので、あまり削減の余地はありませんでした。
その他要らなさそうなものを片っ端から切る。
4・軽量なウィンドウマネージャを使用する
KDEとかgnomeのような重量級ではなく、
fluxboxやratpoisonなどの軽い物を使う。
派手な機能はなくても、軽いものを使用。
- hoge
27151 0.0 0.1 6876 1316 tty1 S Jul29 0:23 ratpoison
ratpoisonはこの程度しか使用しないので、かなり軽量。
5・ブラウザの軽量化
Firefoxは、初期状態だけならそこそこ軽いが、アドオンを追加するごとに重くなっていく。下手すると300MB越える。
その点operaならデフォルトで大抵の機能は揃っている上に軽い。さらに、できるだけメモリにキャッシュしない設定にすればなおよし。
極論を言えば、w3m・・・(ry
6・emacsなどは別のサーバーで
別に開発サーバーが用意されていれば極力そっちを使う。emacsはかなりメモリを食うので、全部開発サーバーで動かしています。
クライアントの負担はsshのセッションのみ。
7・urxvtで壁紙を使用しない
せっかく透過や画像が使えるからとか言って無駄にリソースを消費するような処理をさせない。
私の場合は・・・思いっきり表示してますけどね。
これだけ実行してみたところ、とりあえずスワップはしにくくなりました。ただ、時間が経つにつれてoperaが重くなっていくので、
たまにoperaを再起動する必要があったりします。
以上、私が実行した軽量化の方法でした。
トラックバックURI
最近の記事
JavaScriptのクロスドメイン問題対応方法 [2012年05月17日 : 笹亀弘]
JavaScriptのコーディング規約を気軽にチェック [2012年05月14日 : 中川善樹]
誕生日プレゼント [2012年05月10日 : 阿部恵]
イラストでわかる!git入門の入門 [2012年05月09日 : 志田仁美]
【CSS3】HSL色空間による色指定のすゝめ [2012年05月09日 : 橋本章史]
インスピレーションをかきたてるポスターデザインのまとめ記事のまとめ [2012年04月25日 : 鴨田健次]
エンジニアの英会話 〜とっさの一言〜 [2012年04月19日 : 斉藤勝也]
イコライザーをFireworksで描いてみました [2012年04月16日 : 和田記光]
SFNewTech Japan Night のファイナリストに選出されました!(他、もろもろの出展の御案内) [2012年04月06日 : 小林有佳]
使えるとちょっと便利なSSHのTIPS [2012年04月04日 : 牧野克俊]













コメントフォーム