Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
この記事に対してトラックバックを送信する(FC2ブログユーザー)
http://jakepuppylinux.blog32.fc2.com/tb.php/24-4c83e3e3

-件のトラックバック

-件のコメント

コメントの投稿

投稿フォーム
投稿した内容は管理者にだけ閲覧出来ます

PuppyLinuxTips 5

目次
21) /initrdというディレクトリについて
22) pup_save.2fsの容量をもっと小刻みに設定する方法
23) Pfindで検索する範囲を簡単に指定するには
24) 実行ファイルを簡単に作る方法(2)
25) pup_save.2fsの容量を少なくする工夫

21) /initrdというディレクトリについて

Puppyでファイル操作していると、トップディレクトリの下に/initrdというディレクトリがあり、その中にはpup_ro1とかpup_rwとかあることに気づくが、これが何を意味しているのか知っている人は少ないかも知れない。結論から言うと、CD起動(もしくはUSB起動)の場合、pup_ro1とは個人保存ファイルpup_save.2fsであり、pup_ro2は例えば、puppy_4.00.3-JP.sfsとかのsfsファイルであり、pup_rwは起動後からの変更されたファイル群である。開発環境devx_400.sfsなどを読み込んだら、pup_ro3とかに表示される。
Puppyを終了する際にpup_save.2fsにデータが保存されるのであるが、これは、平たく言えば、pup_ro1にpup_rwを上書きコピーすることである。これらのことを知っているから特別メリットがあるわけでもないが、以下のような例では役に立つこともある。(以下では、定時に自動的にpup_saveに保存する機能、/usr/sbin/savepuppydは停止してあるものとする)
例えば、/root/.xinitrcというファイルを前回の起動時に改編してpup_save.2fsに保存したとする。今回、さらに改編したのだが、どうもミスをしてしまった。しかし、どこをミスしたのかわからない。できれば、前回の状態に戻したい。と思ったとしよう。ミスしたまま保存してしまえば、前回の状態には戻らない。同じく、/root/.xinitrcを削除して終了すると、やはり前回の状態は永遠に失われてしまう。一方、電源を切るなどして、強制終了という荒っぽい手段を使うと、今回のセッションで作成した他の保存したいファイル等も保存できなくなってしまう。
こういう場合は、pup_rwを見てみる。/initrd/pup_rw/rootの中に、.xinitrcがあるはずだ。つまり、今回のセッションで修正したので、pup_rwにあるのだが、これを消してしまう。そして再起動すると/root/.xinitrcはミスをする前の状態となっているはずである。もし、再起動する手間を惜しむなら、/initrd/pup_rw/root/.xinitrcを削除したのち、/initrd/pup_ro1/rootにある.xinitrcを/rootに上書きコピーすればよい。これは前回の状態の.xinitrcであるので、このまま改編作業ができる。もし、前回の状態も気に入らなくて、デフォルトの状態に戻したいと思ったら、/initrd/pup_ro1/root/.xinitrcも削除してしまえばよい。必要なら、/initrd/pup_ro2/root/.xinitrcを/rootに上書きすればよい。これはCDイメージのままの.xinircファイルである。
つまり、今回のセッションで手を加えたファイルを見たければ、pup_rwを、前回終了時の状態を見たければ、pup_ro1を、デフォルトのファイルが必要ならpup_ro2をあたればよい。なお、これらはCD起動もしくはUSB起動の場合である。ハードディスクにインストールした場合は以上とは状況が異なる点を注意されたい。


22) pup_save.2fsの容量をもっと小刻みに設定する方法

PuppyをCDから起動したりしたら、終了時に個人保存ファイル、pup_save.2fsの作成をおこなうのであるが、デフォルトではpup_save.2fsの容量は、32M、64M、128M、256M、512M、....の中から選択するようになっている。
しかし、ちょっとしたテストであれば32Mも要らないという場合もあるし、32Mでは少ないが、64Mでは大きい、という場合もあるだろう。もう少し、容量を細かく設定したいときには、事前に/etc/rc.d/rc.shutdownを編集する。
ただし、/etc/rc.d/rc.shutdownはシャットダウン時に必要なファイルで誤って編集してしまうと正常に終了できなくなることもあるので、十分な能力のある人のみが自己責任でおこなうように。
Puppy 4.00.4JPの場合、/etc/rc.d/rc.shutdownの48行目以降に以下のような部分がある。

choosesizefunc(){
local KFREE SIZELIST NUM CHOICES FLABEL SLABEL ACHOICE KSIZE
KFREE=$1 ; SIZELIST="" ; NUM=1 ; CHOICES=""
FLABEL="`expr $KFREE \/ 1024`MB"
[ $KFREE -ge 1048576 ] && FLABEL="`dc $KFREE 1048576 \/ p`GB"
for ACHOICE in 32 64 128 256 512 768 1024 1280.....

最後の"32 64 128 256 512 768 1024 1280"というのが、pup_save.2fs容量の選択肢となる。そこで、これを変更するとpup_save.2fsの容量設定の際の選択できる容量を増減できる。例えば、"16 20 24 28 32 40 48 56 64 80 96 112 128 160 192 224 256 512 640 768 896 1024 1280"というようにすると、最小は16Mから4Mきざみで設定できる。

23) Pfindで検索する範囲を簡単に指定するには

PfindはPuppy付属のファイル検索ソフトで、『詳細設定』では検索する範囲を入力して、検索効率をあげることができる。とはいえ、"/usr"くらいなら、入力も簡単だが、"/mnt/+root+USBメモリ+pup_301.sfs/usr/sbin"とかいう長ったらしいものとなるとタイプミスなんて子ともあり、いちいち入力するのもうんざりだ。しかし、そういうときには、下の写真に示すように、指定したい範囲のディレクトリアイコンをドラッグして、『検索 場所』の入力欄にドロップすればよい。Pfind-1103.jpg
入力欄にドロップしたディレクトリ(この場合は、"/mnt/+root+USBメモリ+pup_301.sfs/usr/sbin")が表示されるはずだ。この際、最初に"/ (全てのファイル)"とあるので、これは削除する。
Puppyには、Pfindに限らず、ディレクトリやファイルの指定に同じ方法が使えるアプリは多い。

24) 実行ファイルを簡単に作る方法(2)

PuppyLinuxTips 3 15) 実行ファイルを簡単に作る方法の続編である。ROXファイラーを開き、適当なところで、右クリックして、『新規作成』を選択すると、下の方に"Script"というのがあるので、それをクリックすると、ROXの中に"Script"という名前の実行ファイルが作成される。中には、"#!/bin/sh"と書かれただけで、あとは白紙である。名前を適当なものに変更して、コマンドを書き込めば、実行ファイルとして使用できる。
ROX-Script1103.jpg


25) pup_save.2fsの容量を少なくする工夫

Puppyのpup_save.2fsは個人のPCの設定やインストールしたプログラムなどが入っているのであるが、長く使用しているとどんどん容量が多くなってくるものである。しかし、pup_saveはできるだけ小さい方がよい。pup_saveのバックアップコピーを作るにも容量が大きいとかさばってしまう。
例えば、複数のpup_saveを使う場合、同じプログラムが複数のpup_saveに入っている、ということも容量の無駄と言えば無駄である。そこで、こういう場合には、プログラムをひとつのpup_saveだけに置き、他のpup_saveでそのプログラムを使用する場合には、リンクで済ませば、全体としての容量も節約できる。
例えば、ブラウザのOperaは通常、Puppy内では、/root/.opera/、/usr/lib/opera/、/usr/share/opera/という3つの領域からできている。それらのトータルの容量は何十MBにもなる。pup_saveをいくつか作ってそれらの全てにOperaを入れると相当な量となる。しかし、ひとつのpup_saveだけにoperaを入れておいて、他のpup_saveにはそこからリンクするようにしておけば、全体のpup_saveの容量はだいぶ節約できる。
以下の例では、pup_saveファイルを2つ作る。これらは、できれば、同じパーティションにある方が使いやすい。一方のpup_save(ここでは、pup_save-opera.2fsとする)にはOperaをインストールしておく。もう一方のpup_save(pup_save-test.2fsとする)にはOperaはインストールされていない。しかし、pup_save-test.2fsでもOperaが使えるようにできる。
まず、pup_save-test.2fsを読み込んでPuppyを起動する。次に、pup_save-opera.2fsをワンクリックするとマウントされ、中のファイルの追加や削除が可能となる。(13) USBブートのためのUSBメモリをPuppyで作る方法あるいは9) pup_save.2fsの容量を縮小する裏技参照)
そして、マウントしたpup_save-opera.2fsの/root/.opera/、/usr/lib/opera/、/usr/share/opera/のリンクを/root/、/usr/lib/、/usr/share/に作るのである。少々ややこしい話であるが、pup_saveがいずれも/mnt/homeにある場合は、

ln -s /mnt/+mnt+home+pup_save-opera.2fs/root/.opera /root/.opera
ln -s /mnt/+mnt+home+pup_save-opera.2fs/usr/lib/opera /usr/lib/opera
ln -s /mnt/+mnt+home+pup_save-opera.2fs/usr/share/opera /usr/share/opera

ということである。もちろん、roxファイラでGUIで操作できる。

/usr/lib/operaをクリックしたらpup_save-opera.2fsの/usr/lib/operaへ飛ぶということである。ただし、このリンクが有効なのは、pup_save-opera.2fsがマウントされている場合である。したがって、Operaを起動するには、常にpup_save-opera.2fsをマウントしなければならない。いちいち手動でおこなうのは面倒だが、簡単なスクリプトで自動でできる。例えば、

#!/bin/bash
filemnt /mnt/home/pup_save-opera.2fs
sleep 5
/usr/lib/opera/opera/9.60/opera

というようなスクリプトを書いて、これで起動するようにすればよい。




PuppyLinuxTips Indexへ戻る
スポンサーサイト
この記事に対してトラックバックを送信する(FC2ブログユーザー)
http://jakepuppylinux.blog32.fc2.com/tb.php/24-4c83e3e3

0件のトラックバック

0件のコメント

コメントの投稿

投稿フォーム
投稿した内容は管理者にだけ閲覧出来ます

Appendix

プロフィール

jakepuppylinux

Author:jakepuppylinux
FC2ブログへようこそ!

最近のコメント

最近のトラックバック

カテゴリー

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

QRコード

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