お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-02-10 10:32:59

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#2 2009-02-10 12:29:09

hito
管理者
登録日: 2007-03-18

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

単にファイルを消すのにやたら時間がかかってるだけだったりしないでしょうか?

/var/cache/apt/archives以下にファイルが山ほどあったりしませんか?

オフライン

 

#3 2009-02-10 12:35:24

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-10 13:02:58)

オフライン

 

#4 2009-02-10 14:59:14

einundzwanzighundertsechs
メンバ
登録日: 2008-12-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

取り合えず気づいたこと.
> -rw-r----- 1 root root    0 2008-10-30 07:54 lock
lock の日付が古すぎますね.

以下のようにキャッシュを削除した日付が反映されるはず.
$ ls -l /var/cache/apt/archives/
合計 4
-rw-r----- 1 root root    0 2009-02-10 14:26 lock
drwxr-xr-x 2 root root 4096 2008-12-24 02:41 partial
$ date
2009年  2月 10日 火曜日 14:47:14 JST
$ sudo apt-get clean
$ ls -l /var/cache/apt/archives/
合計 4
-rw-r----- 1 root root    0 2009-02-10 14:47 lock
drwxr-xr-x 2 root root 4096 2008-12-24 02:41 partial

何らかの理由でロックを確保できず,待ち状態になっている?
$ sudo strace synaptics 2>&1 | grep open
または
$ sudo strace apt-get clean 2>&1 | grep open
でキャッシュ削除時の open システムコールの様子を調べてみては?

こちらでは,
$ sudo strace apt-get clean 2>&1 | grep open
... 中略 ...
open("/var/cache/apt/archives/lock", O_RDWR|O_CREAT|O_TRUNC, 0640) = 4
open("/var/cache/apt/archives/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
open("/var/cache/apt/archives/partial/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5

最後の編集者: einundzwanzighundertsechs (2009-02-10 15:07:05)

オフライン

 

#5 2009-02-10 17:24:28

hito
管理者
登録日: 2007-03-18

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

微妙なところですが、キャッシュの削除以外、Synapticの設定変更でも同じような現象に遭遇されたりしますか?

https://bugs.launchpad.net/ubuntu/+source/synaptic/+bug/298389

また、
・通常のアップデート処理
・通常のパッケージインストール
・apt-getコマンドによるキャッシュ削除
$ sudo apt-get clean
あたりではおかしな事になりませんか?(ならないと想像)

オフライン

 

#6 2009-02-10 22:23:09

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-10 22:26:05)

オフライン

 

#7 2009-02-11 01:00:15

einundzwanzighundertsechs
メンバ
登録日: 2008-12-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

ごめんなさい.私のミススペルです.
synaptics -> synaptic

オフライン

 

#8 2009-02-11 01:40:19

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-11 01:46:40)

オフライン

 

#9 2009-02-11 03:24:28

hir0
メンバ
登録日: 2008-09-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

open()

<fcntl.h>
<int open(const char *pathname, int flags, mode_t mode);>

O_NOFOLLOW : シンボリックリンクの場合は辿らない。
--------------------------------------------------------
open("/var/cache/apt/archives/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640)

{/var/cache/apt/archives/ に有るlockと言うファイルを読み書き権限で開け。
lockが存在しなければ rw-r----- で新規に作れ。
lockがシンボリックリンクならばファイルを開くな。}

オフライン

 

#10 2009-02-11 06:29:41

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-11 06:30:18)

オフライン

 

#11 2009-02-11 07:54:33

hir0
メンバ
登録日: 2008-09-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

hir0さん、どうも有り難うございます。
/var/cache/apt/archives/lock
はシンボリックリンクでもありませんし、ファイルサイズが0ですし、sudo moreで念のために調べても中身はない様です。

???
私の言葉じゃないですよ。
kiyoshiさんの端末が出したメッセージ?じゃないですか。
↓↓↓
open("/var/cache/apt/archives/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640)

O_NOFOLLOW
となっていて、何やら、「追跡するな」と意味ありげですが、意味が分かりませんので、解説くださると助かります。

すみません。
O_NOFOLLOWの名前の意味って事ですか?

オフライン

 

#12 2009-02-11 11:21:56

einundzwanzighundertsechs
メンバ
登録日: 2008-12-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

混乱させたみたいでゴメンなさい.
当方は 8.04 なので apt-get の挙動が多少違うようです.
こちらでは,
open("/var/cache/apt/archives/lock", O_RDWR|O_CREAT|O_TRUNC, 0640) = 4
O_TRUNC => ファイルサイズを 0 に切り詰めろ
つまり open の段階でファイルの中身が上書きされるので,write が行われなくても,アクセスタイムが更新されるのでしょう.

症状が lock の獲得待ち,もしくは,ファイルI/Oの処理待ちが疑われたので,
ともかく open システムコールをトレースすればフリーズの原因となったファイルが解るかも,
と考えたのです.

オフライン

 

#13 2009-02-11 13:40:01

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-11 13:47:10)

オフライン

 

#14 2009-02-11 18:02:51

hir0
メンバ
登録日: 2008-09-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

大丈夫ですか?
O_NOFOLLOWは引数で、その意味を聞いたのはkiyoshiさんですよね。

O_NOFOLLOW
となっていて、何やら、「追跡するな」と意味ありげですが、意味が分かりませんので、解説くださると助かります。

で、同じ事を書きますが意味が 
O_NOFOLLOW : シンボリックリンクの場合は辿らない。

で次が使用例です、kiyoshiさんが質問に使った文を引用しました。
open("/var/cache/apt/archives/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640)

次に解説です。
{/var/cache/apt/archives/ に有るlockと言うファイルを読み書き権限で開け。
lockが存在しなければ rw-r----- で新規に作れ。
lockがシンボリックリンクならばファイルを開くな。}


はhir0さんの書き込みではないのですか?

説明求むとあったからですが、
なぜUbuntuがシステムに対して出している命令にkiyoshisさんが答えるのですか?

kiyoshiさんが打ったコマンドに対してエラーを含む何らかの出力(結果)に対して答えるべきだと思います。
その件に関しては私は終始ノータッチです。(今現在も)

オフライン

 

#15 2009-02-12 21:31:57

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-12 21:45:36)

オフライン

 

#16 2009-02-13 02:11:07

hir0
メンバ
登録日: 2008-09-28

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

なるほど、意味をよく理解してAPIなどの関数が式通りに動作しているかどうかの確認をしてたのですね。
失礼しました。
突然#10のシステムコールの引数?(open関数)の検証が始まった事に気付かず流れが見えませんでした。
それで「私の言葉じゃないですよ。kiyoshiさんの端末が出したメッセージ?じゃないですか。」と書き込んだら、

open()

<fcntl.h>
<int open(const char *pathname, int flags, mode_t mode);>

O_NOFOLLOW : シンボリックリンクの場合は辿らない。
--------------------------------------------------------
open("/var/cache/apt/archives/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640)

{/var/cache/apt/archives/ に有るlockと言うファイルを読み書き権限で開け。
lockが存在しなければ rw-r----- で新規に作れ。
lockがシンボリックリンクならばファイルを開くな。
}

はhir0さんの書き込みではないのですか?

となったので、また「私の言葉じゃ無いですよ」と書くよりコメントを付けて
同じ事を書いたのです。

/////////////////////////////////////////////////////////////////////

hir0さん、誤解ですよ。
下記の解説の意味はよく分かっていて、hir0さんが何に腹を立てておられる(いや、立てて居られない?)のかが分かりません。むしろ、先に書いたように、「有り難うございます」と感謝しているではないですか。

私が書いた意味は、hir0さんへの批判ではなく、シンボリックリンクではないので、開けるはずで、更新されないのが書き込んだ時点で分からないので、質問したまでです。

突然に何を言い出しているのか理解しかねますが批判されているとは思っていませんよ。もちろん腹を立ててもいません、違う方向に向かったと思いそれを修正しようと書き込んだのですが(ここが勘違いですね)。まさか呼び出されている関数を調べるのでは無く、関数自体の動作検証を行い始めるとは夢にも思わなかったので、

なぜUbuntuがシステムに対して出している命令にkiyoshisさんが答えるのですか?

と聞いてしまいました、失礼しました。
(私のレベルでは関数は絶対の(既存のバグは省く)物で、システムコールは忠実に実行(エラーを含む)される物だと思っていました。)

「独り言」

現時点では8.10と8.04で挙動が異なることを理解しておりますし、小生は何も問題に感じてはおりません。

hir0さん、勘違いしないでください。そして、有り難うございました。

あーあ、本当に言葉って、誤解されるものですね。小生の書き方が悪かったのでしょうけど。

「小生は何も問題に感じては降りません。」って言われても本題には一切関与してないんだけど。。。
こだわるほど何を勘違いされて、誤解されてると思っているんだろうか?

straceを使っているのに、なぜsynapticを使用してキャッシュクリア時をトレースしたログをとらないのだろう? 不具合を改善するために削除したファイルのバックアップが有るのなら正常時との比較も出来るのに? と思うのがもう間違っているのかな?趣味の独学だけど、はやく理解できるレベルになりたい。

オフライン

 

#17 2009-02-13 05:09:26

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: synaptic「キャッシュ内の・・」「適用」でフリーズ

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

最後の編集者: kiyoshi (2009-02-13 05:10:05)

オフライン

 

Board footer

Powered by FluxBB