2008/11/29(土)dpkgがaptitude upgradeできない
2008/11/29 20:03
package uses Breaks; not supported in this dpkgと出て、パッケージのインストールが出来ない問題@ubuntu。
メッセージを見る限り、dpkgのアップグレードをすれば解決しそうだが、dpkgのインストールでも同様のメッセージが出る。
エラーの原因は以下に詳しい。
Nabble - Bug#462165: dpkg: Upgrade from 1.13.23-1.14.5 to 1.14.16 onwards is broken
内容の意訳をすると、
- "Breaks"ヘッダはdpkg1.14.6からサポートされました。
- それ未満のVer.のdpkgでは"Breaks"ヘッダを持つパッケージをインストールできません。
- そのためdpkgのVerUPの必要がありますが、最新のdpkg1.14.16パッケージにも"Breaks"ヘッダは使われています。
- 従って、1.14.6未満のdpkgのVerUpには「卵が先か鶏が先か」という問題が起こります。
解決方法は2通りあるようだが、素直に強制インストールでいいと思う。ということで、
dpkg --force-depends -i /var/cache/apt/archives/dpkg_1.14.16.6ubuntu3_i386.debとすれば、エラーを無視して最新dpkgがインストールされる。あとはaptitudeで良し。
それにしても、dpkgのforceオプションは難しい。種類も多いし、--force-dependsの動作は思っていたのとちょっと違った。やれやれ。
2008/09/13(土)sambaで実行ファイルを更新すると実行フラグが外れる
2008/09/13 25:17
まあ実行可能ファイルをsamba上でいじれることが余り良いことではないというのは置いておいて。
なんで自分の実行ビットだけ外れるのか、smb.confを読んでいても当初今ひとつ分からなかったのだが、
[linux-users:100723] winからコピーすると"drwxr-xr-x"となるのは何故?
ここら辺を眺めていてやっと理解出来た(気がする)。
変更時の動作はおそらく、
(unixファイル) or ( (create mask) and (windowsファイル) )
の順番で評価。
windowsファイルは標準では666で、read only時は444となる。
今回の件ではunixファイルは755でcreate maskは644だったので、755になるという想定は間違っていない。ただし、オプションを忘れていた。
map archive (S)デフォルト値:yes!
このパラメータは、DOSのアーカイブ属性を UNIXの所有者(owner)実行権ビットに割り当てるかどうかを決定する。 DOSのアーカイブ属性は、バックアップを行なった後でファイルが修正されると設定される。 このオプションの副作用として、Samba マシン上にあるファイルを修正した際に、UNIX 上で実行可能になってしまうことがあげられる。 これは共有のソースコードやドキュメントなどに関して、非常に悩ましい事態である。
このパラメータを利用する場合は、 所有者実行権ビットがマスクされないように(100というアクセス権が含まれるように)、 create mask パラメータを設定することが必要となることに注意。 詳細は、create mask パラメータを参照のこと。
デフォルト: map archive = yes
http://www.samba.gr.jp/project/translation/2.2.5/manpages/smb.conf.5.html#MAPARCHIVE
なんてことだ。
これはWindows上のアーカイブ属性をunix側の実行ビットに割り当てるためのオプションである。が、create maskに関する注意書きがあるということは、
( (unixファイル) or ( (create mask) and (windowsファイル) ) )後に、実行フラグのみ (create maskの所有者実行フラグ) and (アーカイブ属性)をセット。
ということか。
ということで、map archiveをいじってやればよい。
対象ディレクティブに、
map archive = noを追加したら直った。
うーん、なんだろうこのハマり。
2008/09/13(土)なんかlsが遅いと思ったら
2008/09/13 24:03
何かと思ったら、以前実験で/mntに直接smbfsでつっこんだ奴がそのままになってたらしい! ひでえ。
#umount /mntで解決。
ぐったり。なにやってるんだ。
2008/08/28(木)外部からLinuxサーバを介してWindows機をいじり倒す
2008/08/28 16:57
もちろんcygwinでもいいんだろうけど、最近cygwinはインストールするマシンを絞るようにした。Pathやバージョンの絡みで開発環境に障ることがあるのと、ファイルの多さや移行の大変さ、アンインストールのめんどくささ等が個人的にcygwinの株を下げてしまった。mingwとかxmingとか使う機能が確定してる場合はそっちでいいじゃない、と。それから単に、GNUなサーバ群をWindows上で使いたいならcoLinuxっていう手もあるしね。
閑話休題。で、rdesktopというソフトはLinuxのX環境でWindowsのリモートデスクトップに入れるソフトだ。Xで入っておいてrdesktopを動かせばWindows GUIでログオン可能。これはすごい。
単にLinuxから共有ディレクトリとかのファイルを見たければ、smbfsでもいける。
# mount -t smbfs -o username=hoge,password=piyo //foo/bar /mnt/win……文字コードは今のところ考えてないや。
寝てるマシンはLinuxからWOLで起こせる。たとえば、wakeonlanとかを使う。WOLの話は、サーバ入れ替え その2にも書いてるからそちらも参照してほしい。
さらにVNCなんかやVPNなんかを使う方法も。……もう何でもありだな。
2008/08/28(木)Perl::Magickインストール
2008/08/28 15:57
#aptitude install imagemagickあれ、これだけだとだめだな。adiaryのシステムチェックでNGになっちゃう。
#aptitude install perlmagickも追加。うん、これでOKになりました。
ここでぎっもーん。imagemagickは要らなかったのかどうか。aptitude showで依存関係をチェックした。詳細省略。
結論として、perlmagickそのものにはimagemagickは要らないみたい。とはいえ、libmagickはimagemagickインストール時に入ってるし、libxml2とかも要るみたいだから現状このままでイイや。
アルバムをのぞいたらいきなりサムネイル表示されてて感激。
2008/08/28(木)chkrootkitでなんか出た
2008/08/28 14:41
Searching for OBSD rk v1... /usr/lib/security /usr/lib/security/classpath.security調べてみたら、どうやら大丈夫(FALSE POSITIVE)っぽいけど……
Requesting feedback for OBSD rk v1 in Edgy - Ubuntu Forums
意訳
rootkitじゃないよ。RTFM!ははあなるほどね。念のため、libgcjがインストールされてるかどうか確認する。
これ読め→ /usr/share/doc/chkrootkit/README.FALSE-POSITIVES
below is a (non-exhaustive) list of packages that are known to cause false positives. [...] contains specific files asp: Ramen Worms contain the file /usr/bin/asp libgcj-common: the 'OBSD rk v1' contains /usr/lib/security, /usr/lib/security/classpath.security /usr/lib/security/libgcj.security.
#dpkg -l |grep libgcj-common ii libgcj-common 4.1.1-21 Java runtime library (common files)うん問題ないようだ。