初回終了時の個人保存ファイル設定を日本語のGUIで

4.X系の開発

モデレータ: 暇人, YoN, nyu

アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

pupsaveがSFSをコピーしない

投稿記事 by シノバー »

YoN さんが書きました: PUPMODE=5
PUPSFS=sr0,iso9660,pup_420retroJPalpha.sfs
/dev/hda1|ntfs|9341764|5629624|
/dev/hda2|ntfs|9155580|2962740|/1backupD/pup_420JPbeta.sfs
/dev/hdd1|ext2|18239996|15212496|/puppylivecdbuild420JPRC-20090513/pup_420JPRC.sfs
/dev/sda1|ext2|3886448|316700|
...
SFSTYPE=iso9660, SFSCHOICE=, SFSHERE=pup_420JPRC.sfs
hdd1に420JPRCをリマスタした痕跡が残ってますね。
/dev/hdd1/puppylivecdbuild420JPRC-20090513/pup_420JPRC.sfs
あるいは /mnt/home/...
pup_saveの保存先として指定したフォルダは
hdd1のルートですか?
保存先ホルダが同じlivecdbuild420JPRC-20090513 でなければ
SFSをコピーしようとするはずなんですが...。
The bar master, Shino's Bar
http://shinobar.net/
アバター
YoN
Site Admin
記事: 1239
登録日時: 07/04/01(日) 08:00
お住まい: 信州

投稿記事 by YoN »

pup_saveの保存先として指定したフォルダは
hdd1のルートですか?

そうです。保存先は、puppylivecdbuild420JPRC-20090513 と指定されていたのを消して hdd1のルートに指定し直しました(空欄にしました)。
するとSFSファイルのコピーをスルーして個人ファイルだけを保存してしまいました。

試しに、
pupsave-0.9.1 を正規の場所(/usr/X11R7/bin/)に pupsave とリネーム、上書きコピーして実行特性を付けてテストしてみました。

1:個人ファイルを保存する前に、hdd1にある「.sfs」ファイルを全てリネーム。
2:4.20retroJPalphaライブCDから「puppy pfix=ram」で起動。
3:今までの手順と同じに再起動プロセスを実行。

結果は、無事SFSファイルをコピーして、hdd1のルートディレクトリに個人ファイルが作成されました。
CDドライブもマウントされません。

「パピーをライブCDから起動後、一番最初に個人ファイルを保存する時は、他のSFSファイル(もしあれば)を削除あるいはリネームしてから保存した方がいい」
という事のようです。
[Puppy4.1.2-retro-JP] EPSON Endeavor MT-3500
Celeron 533MHz 256MB
[Lupu-5.0.1 LiveCD + lang_support_ja-1.4.sfs] SOTEC Whitney System CR Board
Celeron 766MHz 512MB
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

pupsaveがSFSファイルを保存しない。

投稿記事 by シノバー »

YoN さんが書きました:保存先は、puppylivecdbuild420JPRC-20090513 と指定されていたのを消して hdd1のルートに指定し直しました(空欄にしました)。
するとSFSファイルのコピーをスルーして個人ファイルだけを保存してしまいました。
こちらで同様のことを実験してみましたが、再現しません。

コード: 全て選択

# ./pupsave-0.9.1 --debug cd
...	
PUPMODE=5
PUPSFS=sr0,iso9660,pup_420retroJPalpha.sfs
/dev/hda1|ntfs|20988888|15990128|/puppy420/pup_420retroJPbeta3.sfs
/dev/hda2|ext3|20659060|15862532|
/dev/hda3|ext3|20659060|10536924|/puppy/pup_420retroJPalpha.sfs
/dev/hda5|vfat|91180528|83879888|
/dev/sda1|vfat|1002056|575940|
...
SFSTYPE=iso9660, SFSCHOICE=, SFSHERE=
保存先をhda3のルート(空白)を指定しました。
/puppy/pup_420retroJPalpha.sfsと保存先フォルダが異なるので
SFSHEREが空白になってます。
パピーの基本システムが含まれているSFSファイルは現在ライブCDの中にあります。これを個人保存ファイルと同じところにコピーしておくと起動がかなり速くなります。
すでに別のフォルダに /puppy/pup_420retroJPalpha.sfs があります。複数の場所にSFSファイルを置くことはお奨めしません。
というメッセージが出ますが、保存を選択することは可能です。
もともと420retroJPalphaにあるpupsaveを使って
# pupsave PUPSFS=hdb,iso9660,pup_420retroJPalpha.sfs
とやってみても、同様にSFS保存のダイアログは出ます。

気持ち悪いですが、これはここまでかなあ。
ただし別件でパーティション選択のデフォルトに誤りを発見しました。
あとで改良版をアップします。
The bar master, Shino's Bar
http://shinobar.net/
アバター
YoN
Site Admin
記事: 1239
登録日時: 07/04/01(日) 08:00
お住まい: 信州

投稿記事 by YoN »

シノバーさん、お騒がせしました。

状況を文字で表現することは、とても難しいです。

ライブCDのリマスタで作成したフォルダにできる「.sfs」メインファイルが hdd1 に3個あります。
これを「pup_420XXX.sfs-bakup」などとリネームして(.sfs ファイルがない状態にして)から、個人ファイルを保存する事でCDドライブがマウントされなくなりました。

とりあえず、逃げ道はこんなところです。いろいろありがとうございました。
ただし別件でパーティション選択のデフォルトに誤りを発見しました。
あとで改良版をアップします。
これでレトロの日本語ベータ版を作ります。通常の4.2日本語ファイナル版にも入れたいと思います。
[Puppy4.1.2-retro-JP] EPSON Endeavor MT-3500
Celeron 533MHz 256MB
[Lupu-5.0.1 LiveCD + lang_support_ja-1.4.sfs] SOTEC Whitney System CR Board
Celeron 766MHz 512MB
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

pupsave-0.9.2

投稿記事 by シノバー »

ライブCDから起動してfurgalインストールしたケースで
パーティション選択のデフォルトがfurgalインストール先を選ぶべきなのに
そうなっていなかったものの訂正です。
http://shino.pos.to/linux/puppy/pupsave-0.9.2
/usr/X11R7/bin/pupsave として実行属性を付けて保存ください。
The bar master, Shino's Bar
http://shinobar.net/
アバター
YoN
Site Admin
記事: 1239
登録日時: 07/04/01(日) 08:00
お住まい: 信州

独り言

投稿記事 by YoN »

独り言です。

現在1つの同じHDD sdb1(retro版ではhdd1)に4.2JPRCと4.2retroJPbetaの2つのバージョンのパピーがあります。

HDD(sdb1=hdd1)のルートには、
の2つのメインファイル、
pup_420JPRC.sfs
pup_420retroJPbeta.sfs

と2つの個人ファイル、
pup_save-420JPRC.2fs
pup_save-420JPretroB.2fs

があります。この状態で通常版とレトロ版の2枚のライブCDを使って起動してみました。
[4.2JP通常版CDから起動]
1:通常版(4.2JPRC)ライブCDからエンターキーで起動(pfix=ram は使いませんでした)
2:次の個人ファイルの選択画面が出ます。

0 none
1 sdb1 /pup_save-420JPretroB.2fs
2 sdb1 /pup_save-420JPRC.2fs

通常版CDから起動したので「2」を選択しました。
3:しばらく待つと、jwmが起動します。sdb1 だけがマウントされています。(これが正常)

[4.2retroJP版CDから起動]
4:次にレトロ版CDに入れ替えて再起動しました。
5:2と同じ個人ファイルの選択画面がでます。

0 none
1 sdb1 /pup_save-420JPretroB.2fs
2 sdb1 /pup_save-420JPRC.2fs

6:レトロ版CDから起動したので「1」を選択しました。
7:しばらくしてjwmが起動すると、CDドライブとsdb1 の2つがマウントされています。(以前と同じトラブル)

[sfsファイル名のリネーム]
8:ここで試しに sdb1 にある pup_420JPRC.sfs を pup_420JPRC.sfs-backup などとリネームしてレトロ版CDから再起動してみました。
9:結果は、sdb1 のみがマウントされました。(これが正常)

通常版では、sfsファイルをきちんと見分けているようです。レトロ版は混乱しているのかも知れません。

「それがどうした」と言われればそれまでですが、
通常版でもレトロ版でも、HDDの複数の.sfs ファイルをきちんと見分けてCDをマウントしないで起動できないかな?と思ってます。

CDがマウントされるとその都度CDを読みに行くので、古くてパワーのないPCでは、パピーを使うのがいやになります。

Frugalインストールがあると言われそうです・・・。

あるいは、バージョン毎にサブディレクトリを作った方がいいのかも。
[Puppy4.1.2-retro-JP] EPSON Endeavor MT-3500
Celeron 533MHz 256MB
[Lupu-5.0.1 LiveCD + lang_support_ja-1.4.sfs] SOTEC Whitney System CR Board
Celeron 766MHz 512MB
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

どのSFSファイルを使う?

投稿記事 by シノバー »

YoN さんが書きました:通常版では、sfsファイルをきちんと見分けているようです。レトロ版は混乱しているのかも知れません。
単純にSFSファイルのアルファベット順によるもののようです。

パピーは起動のときにSFSファイルを探すのですが、
選択された個人ファイルと同じフォルダから一つだけピックアップします。
HDD(sdb1=hdd1)のルートには、2つのメインファイル、
pup_420JPRC.sfs
pup_420retroJPbeta.sfs
この場合、たぶんアルファベット順(コード順?)で pup_420JPRC.sfs のほうが採用され
pup_420retroJPbeta.sfsはここで予選落ちとなります。

その後CD内に pup_420retroJPbeta.sfs を発見
ハードディスク上の候補は pup_420JPRC.sfs なので、
これは違うぞとういことで CD内のファイルを採用します。
YoN さんが書きました:バージョン毎にサブディレクトリを作った方がいいのかも。
基本はそれですね。
The bar master, Shino's Bar
http://shinobar.net/
アバター
YoN
Site Admin
記事: 1239
登録日時: 07/04/01(日) 08:00
お住まい: 信州

投稿記事 by YoN »

シノバーさん、独り言なのにわかりやすい説明をありがとうございます。

独り言その2

コードが書けてプログラミングができれば面白くてしょうがないと思いますが、
この年令では一念発起して「C言語・・・」などという本を買って読んでは途中で挫折してきました。残念ながら、いまさら勉強しても頭に入りません。
自分ができることは精一杯やり、できないことはできる方に頼るのが良いかなと思ってます。

しつこく、2つのバージョンのライブCDから起動した場合の問題です。
改めて同じHDDに4.2通常版用と4.2レトロ版用のサブディレクトリを作り、それぞれの個人ファイルを作ってみました。

結果は、「あっちを立てればこちらが立たず、こちらを立てればあちらが立たず」いままでとかわらない状態です。

やはり /mnt/home (ルートディレクトリ)、サブディレクトリのどちらにsfsメインファイルを置いても通常版あるいはレトロ版どちらかのCDがマウントされてしまいます。
ルートディレクトリ、サブディレクトリに.sfsファイルを置いてもCDがマウントされることを防ぐには、.sfsファイルを1つだけにすることです。

Frugalではこの辺の問題をgrubがうまくやってくれているのかなと思います。

複数のバージョンのライブCDをとっかえひっかえ入れ換えてパピーを起動するのは、特殊なケースなのでしょう(個人ファイルを保存しなければ何の問題もありません)。
[Puppy4.1.2-retro-JP] EPSON Endeavor MT-3500
Celeron 533MHz 256MB
[Lupu-5.0.1 LiveCD + lang_support_ja-1.4.sfs] SOTEC Whitney System CR Board
Celeron 766MHz 512MB
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

HDD上のSFSファイルが使用されない

投稿記事 by シノバー »

YoN さんが書きました:改めて同じHDDに4.2通常版用と4.2レトロ版用のサブディレクトリを作り、それぞれの個人ファイルを作ってみました。
...
やはり /mnt/home (ルートディレクトリ)、サブディレクトリのどちらにsfsメインファイルを置いても通常版あるいはレトロ版どちらかのCDがマウントされてしまいます。
YoNさんのおかげで、たいへんなことが分かってしまいました。
pup_saveをルートではなくサブディレクトリに作り、CD起動した場合に SFSファイルの扱いに問題があります。
  1. pup_saveは指定したサブディレクトリに作られるが、SFSファイルは無条件にルートにコピーされる。
  2. CDからブートオプションなしで起動し、サブディレクトリにあるpup_saveを使用した場合、
    HDD上のいずれのSFSファイルも使用されず、CDのSFSファイルが使用される。
(1)でコピーされたSFSファイルは使われるチャンスは無いので、rc.shutdownのバグと考えられます。

rc.shutdownを修正し、この場合SFSファイルをサブディレクトリにコピーしたとしても、(2)の問題により、このままでは使われません。
SFSファイルがpup_saveと同じサブディレクトリにあり、かつ
起動オプションで psubdir=... を指定したときのみ、HDD上のSFSファイルが使われます。

(2)はinitを修正すれば解決できないことはありません。
直ししますか?

なおCD上のSFSファイルを使うときはマウントされたままになりますが
起動オプションに pfix=copyを指定し、RAMに余裕があれば取り出しできます。

[/list]
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: HDD上のSFSファイルが使用されない

投稿記事 by シノバー »

訂正です。 initをいいかげんに読んでました。
以下の問題は、同一パーティション
異なる pup_420xxx.sfsが複数ある場合に起こります。
2. CDからブートオプションなしで起動し、サブディレクトリにあるpup_saveを使用した場合、
HDD上のいずれのSFSファイルも使用されず、CDのSFSファイルが使用される。
異なる pup_420xxx.sfsが 別のpartitonにあれば、
すなわち使われた pup_saveのあるpartitionには pup_420xxx.sfsが一つだけのときは
HDD上の該当SFSファイルが使われます。
ブ−トオプションに psubdirが指定されていなければ、ル−トにあっても良いし、一つ下の階層であっても構いません。
シノバー さんが書きました:パピーは起動のときにSFSファイルを探すのですが、
選択された個人ファイルと同じフォルダから一つだけピックアップします。
「同じフォルダから一つだけ」ではなく「同じパーティションから一つだけ」でした。
そうなると、現在の rc.shutdownが必ずルートにSFSファイルをコピーするのは
バグとは言えないのか?
The bar master, Shino's Bar
http://shinobar.net/
アバター
YoN
Site Admin
記事: 1239
登録日時: 07/04/01(日) 08:00
お住まい: 信州

投稿記事 by YoN »

pup_saveは指定したサブディレクトリに作られるが、SFSファイルは無条件にルートにコピーされる。
pupsaveのプロセスの最後で日本語ウィンドウからコンソールに切り換わり、シャットダウンプロセスが英語で表示されます。
見ていると、copying pup_save420XXX.sfs....云々と出てsfsファイルをコピーしてシャットダウン(リブート)します。
再起動後、どこにコピーされたか見ると確かにルートディレクトリにコピーされていました。サブディレクトリには何もコピーされていません。
この段階でコピー先が選択できれば良いのにと思いました。

さらに、それではと強引に.sfsファイルをそれぞれのサブディレクトリに手動でコピーしてもだめでした。
これはlayered-filesystemとも関連すると思いました。
手動でコピー後ライブCDから起動しても例の、
「Updating... layered-filesystem next boot will be faster!」というメッセージがでないで起動しました。
という事は個人ファイルを作成する一番最初の時にしかレイヤーファイルシステムは使えないのでしょうか?
あるいは何か強制的に再構築できるコマンドがあるのかわかりません。
[Puppy4.1.2-retro-JP] EPSON Endeavor MT-3500
Celeron 533MHz 256MB
[Lupu-5.0.1 LiveCD + lang_support_ja-1.4.sfs] SOTEC Whitney System CR Board
Celeron 766MHz 512MB
アバター
YoN
Site Admin
記事: 1239
登録日時: 07/04/01(日) 08:00
お住まい: 信州

1つ解決しました。

投稿記事 by YoN »

複数のパピーライブCDから起動して、それぞれの個人ファイルを内蔵HDDのサブディレクトリに保存した場合の個別の起動方法

何のことはありません。CDでもFrugalと同じオプションを付ければ良いだけの話でした。

使ったライブCD:
(1) 4.2JPRC
(2) 4.2retroJP beta

個人ファイルの保存先(サブディレクトリ):
それぞれのサブディレクトリに .sfsメインファイル、.2fs個人ファイルがあります。
(1) /mnt/home/420RC
(2) /mnt/home/420retroBETA

CDドライブがマウントされないで起動できるオプション:
(1) puppy psubdir=420RC pmedia=idehd
(2) puppy psubdir=420retroBETA pmedia=idehd

これでOKでした。どちらのバージョンのパピーもCDドライブはマウントされずに起動しました。
しかしオプションが長いので、紙にメモしてPCの横に貼り付けています。
起動の度に長いオプションを入力しないで済む、もっと簡単な方法はないかな?と思います。(Frugalではなくて)

ただし、パピーを一番最初に起動し、シャットダウンする時の.sfsファイルがルートにコピーされる問題は解決していません。
[Puppy4.1.2-retro-JP] EPSON Endeavor MT-3500
Celeron 533MHz 256MB
[Lupu-5.0.1 LiveCD + lang_support_ja-1.4.sfs] SOTEC Whitney System CR Board
Celeron 766MHz 512MB
voice
記事: 115
登録日時: 08/11/02(日) 08:27

投稿記事 by voice »

SFSの読み込みに関しての私の体験談です。ただし、Puppy4121JPでのことなので420でどこまで役に立つかわかりません(本当なら私も420のテストをやったほうがいいのでしょうが・・・すいません)。関係なかったらスルーしちゃってください。
pup_saveは指定したサブディレクトリに作られるが、SFSファイルは無条件にルートにコピーされる。(シノバー wrote)
これは、私もありました。そのうえ、pup_***.sfsのないサブディレクトリのpup_saveでCD起動するとそのサブディレクトリにpup_***.sfsをコピーします。それも、/直下のpup_***.sfsをです(CDが作動している様子はありませんし、CDからコピーするときより全然はやい)。これだと、HDD内に同じpup_***.sfsが2つあることなるので容量が無駄になります。さらにいろいろなパターンがあって、pup_***.sfsのない/直下のpup_saveをCD起動するとサブディレクトリのpup_***.sfsをコピーしたり、pup_***.sfsのないパーティションのpup_saveをCD起動すると別パーティションのpup_***.sfsをコピーしたりします。そもそも初回終了時に「SFSをコピーしますか」でNOを選択しても次回起動時に強制コピーされるのってどうなの、って感じです。
「Updating... layered-filesystem next boot will be faster!」というメッセージがでないで起動しました。
という事は個人ファイルを作成する一番最初の時にしかレイヤーファイルシステムは使えないのでしょうか?(YoN wrote)
これって、/直下にdevx_***.sfsとか追加したときにもでませんでしたっけ。それでもって、初回(pup_save作成時)と2回目で/直下のSFSの構成が同じだからメッセージがでなかった、ということになると思うのですが。initとかrc.updateとかに何種類かある***UNIONRECORDっていう変数で条件分岐してるのだと思うのですが。見当違いだったらごめんなさい。

余談1:=””入りのBBCodeと音引き(たとえばスルーの「ー」)が両方あると、spanの出来損ないみたいなのがでてきて表示が変になるのは仕様上しかたないのでしょうか。

余談2:編集回数が出るときと出ないときの違いって何?
Puppy4.1.2.1-JP(Full/Frugal)
HP dc5100 sf Celeron D 330(改) 2.66GHz/2048MB/40GB
VAIO PCV-L500(改) Pentium III Katmai 550MHz/256MB/30GB
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

rc.shutdown-sfsfolder

投稿記事 by シノバー »

ううむ。けっこう根が深いですね。
initの問題はスレッドを新しく立てます。

とりあえず rc.shutdown を修正したものをアップします。
sfsファイルのコピー先ディレクトリを pup_saveの保存先と一致させたものです。
voiceさん報告の問題も少しはましになるのかな。
http://shino.pos.to/linux/puppy/rc.shutdown-sfsfolder
/etc/rc.d/rc.shutdown と差し替え、実行属性を付けてください。
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

pupsave-0.9.3

投稿記事 by シノバー »

複数のSFSファイルが存在する場合への対応です。

pupsave-0.9.3 を作ったはずが、うっかりして失いました。
あとで pupsave-0.9.4をアップします。
最後に編集したユーザー シノバー [ 09/05/25(月) 22:22 ], 累計 1 回
The bar master, Shino's Bar
http://shinobar.net/
返信する