■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50



レス数が1000を超えています。残念ながら全部は表示しません。

くだらない質問はここに書き込め!なんでもアリ13

1 :名無しさん@お腹いっぱい。 :02/08/28 07:54
新参者がクソスレを立てると、x押して殺すぞ糞厨共と唸る過激なChalicerや、
d押して殺すぞ糞厨共と唸る過激なnavi2cherや、スレ削除機能を実装キボーンと唸る
goRuarの反感を緩和する好評の「くだらない質問総合窓口」Part 13を作りました。

書き込む前に質問に適切な専門の板・スレッドがないか確認してください。
2ch総合検索サイト http://2ch.dyn.to/
書く前にぐぐれ       http://www.google.co.jp/

NGワード・注意事項
*UNIXって何ですか?系(http://pc.2ch.net/test/read.cgi/unix/998779290/)
*UNIXとLINUXって何が違う?系(http://pc.2ch.net/test/read.cgi/unix/1024558135/)
*純Linux系(http://pc.2ch.net/linux/)
*純Windows系(http://pc.2ch.net/win/)

前スレ 12: http://pc.2ch.net/test/read.cgi/unix/1027820464/
過去ログや約束事は >>2-4

162 :名無しさん@いっぱいいっぱい :02/09/02 21:34
>>160
155です。了解しました、Linux板にいってきます。。
でも、向こうで同じ事聞いたら「SolarisはUNIX板に逝け」とか言われそうな予感。

163 :名無しさん@お腹いっぱい。 :02/09/02 21:39
>>155
NTのService for UNIXでパスワードシンクロさせておいて、
Solarisに落とす
費用:3万円
効果:NFS,r系デーモンがもれなくついてくる

164 :名無しさん@お腹いっぱい。 :02/09/02 23:24
ログの整形についての質問です

59 Sep 2 20:45:10 P=6 217.88.229.225:3372 > 21 L=48 S=0x00 I=53354 F=0x4000 T=111 SYN (#20)
60 Sep 2 20:45:12 P=6 217.88.229.225:3372 > 21 L=48 S=0x00 I=53600 F=0x4000 T=111 SYN (#20)
61 Sep 2 20:45:18 P=6 217.88.229.225:3372 > 21 L=48 S=0x00 I=54056 F=0x4000 T=111 SYN (#20)
62 Sep 2 20:49:34 P=1 219.241.212.50:8 > 0 L=36 S=0x00 I=29516 F=0x0000 T=116 (#14)
63 Sep 2 21:31:19 P=6 211.176.68.155:3712 > 1433 L=48 S=0x00 I=30385 F=0x4000 T=116 SYN (#20)
64 Sep 2 21:31:22 P=6 211.176.68.155:3712 > 1433 L=48 S=0x00 I=30498 F=0x4000 T=116 SYN (#20)
65 Sep 2 21:31:28 P=6 211.176.68.155:3712 > 1433 L=48 S=0x00 I=30730 F=0x4000 T=116 SYN (#20)
66 Sep 2 22:12:01 P=6 211.255.50.90:3129 > 1433 L=48 S=0x00 I=7301 F=0x4000 T=110 SYN (#20)
67 Sep 2 22:12:04 P=6 211.255.50.90:3129 > 1433 L=48 S=0x00 I=7430 F=0x4000 T=110 SYN (#20)
68 Sep 2 22:12:10 P=6 211.255.50.90:3129 > 1433 L=48 S=0x00 I=7681 F=0x4000 T=110 SYN (#20)
79 Sep 2 22:43:43 P=1 80.13.193.226:8 > 0 L=64 S=0x00 I=34322 F=0x0000 T=106 (#14)

上記のようなログの中で行後半のL=xx以降を削除したいのですが
viかsedを使って削除することはできますでしょうか?

165 :164 :02/09/02 23:26
訂正です。
>行後半のL=xx以降を削除したいのですが

行後半のL=xx以降を全行一括して削除したいのですが

166 :名無しさん@お腹いっぱい。 :02/09/02 23:26
>>164
できる

167 :名無しさん@お腹いっぱい。 :02/09/02 23:52
>>164

sed -e 's/L.*//'

168 :名無しさん@お腹いっぱい。 :02/09/02 23:55
>>164
cut -dL -f1

169 :名無しさん@お腹いっぱい。 :02/09/03 01:17
>>164
awk -F'L=' '{print $1}'


170 :名無しさん@お腹いっぱい。 :02/09/03 03:12
http://www.ongs.net/daichi/freebsd/amd/index.shtml
ここに書いてあるamdを有効にする方法というのは
あくまで4currentのはなしなんでしょうか?
4.6releaseなんですがうまくいきません


171 :名無しさん@お腹いっぱい。 :02/09/03 03:17
>>170
ここよりFreeBSD質問スレ向きのような気もするけど…

IDEハードディスクのドライバがwdからadに変わったってるはオッケイ?

172 :>>171 :02/09/03 05:11
しりませんでした
ありがとう
あっちでしつもんしてみます


173 :164 :02/09/03 07:48
>>166-169
皆さん、ありがとうございます。
お蔭様でログのサイズ大幅に削る事ができました。


174 :名無しさん@お腹いっぱい。 :02/09/03 10:19
NVRAMのアドレスffd047e7に値を書き込むには
new command modeでどのような操作をすればよいでしょうか?


175 :名無しさん@お腹いっぱい。 :02/09/03 14:55
FreeBSD 4.6.2-RELEASEを使ってます。
PortsからFluxbox 0.1.10を入れたのですが、~/.xinitrcにexec fluxbox
を追加してxinitすると、
Warning: Failed to open catalog, using default messages.
というメッセージがコンソールに残ります。
これが出ないようにするにはどうすれば良いのでしょうか?

176 :名無しさん@お腹いっぱい。 :02/09/03 15:05
>>175
LC_MESSAGES=C

177 :名無しさん@お腹いっぱい。 :02/09/03 16:28
NFS を local HDD にキャッシュすることってできない?
クライアントは FreeBSD と Linux。

Solaris では CacheFS で実現されてて、Linux では not yet
http://www.nyx.net/~sgjoen/disk-6.html#ss6.6
というところまでは確認した。FreeBSD では関連する情報を
見つけられず。

178 :名無しさん@お腹いっぱい。 :02/09/03 18:58
bsdでacroreadをつかって日本語のPDFファイルをよみたいので
ちょこっと調べたところ
acroread5をいれてさらにadobeが配布している日本語パック
をいれなさいとのことだったので
acroreadのHPにいってからダウンロードするために
登録をしました
でも登録ボタンを押しても押しても何回も登録を
求められてしまいます
必要なところは全部埋めて登録しても何回も何回も・・・
どーすれば日本語パックをおとせますか?
教えてください

179 :名無しさん@お腹いっぱい。 :02/09/03 19:10
ftp ftp-pac.adobe.com:/pub/adobe/acrobatreader/unix/

180 :名無しさん@お腹いっぱい。 :02/09/03 19:34
>>178
それってホントにBSD?

FreeBSDとかNetBSDとかOpenBSDとかBSD/OSとかぢゃなくて?

181 :名無しさん@お腹いっぱい。 :02/09/03 19:39
>>180
それ以前に質問の内容自体UNIX板向きぢゃあないような…

182 :名無しさん@お腹いっぱい。 :02/09/03 21:47
>181
いや、明らかに「あどびにおといあわせください」ですな。

183 :名無しさん@お腹いっぱい。 :02/09/03 21:57
binっていう拡張子のファイルはどんなコマンドで展開すれば良いのでしょうか?
tarでできるかと思い、tar zxvf test.binをやったのですが、できませんでした。


184 :名無しさん@お腹いっぱい。 :02/09/03 21:59
>>183
そんなあなたに

拡張子辞典
http://www.jisyo.com/viewer/

185 :名無しさん@お腹いっぱい。 :02/09/03 22:02
>>183

more してみ、ヒントがある。

186 :183 :02/09/03 22:04
いろいろやってたら、実行権限をつけて実行したらtar.gzを展開?しました。
シェルスクリプトなのかな?
ファイルサイズが100MBちょっとなのですが、何でわざわざbinにしているのでしょうか・・・

187 :名無しさん@お腹いっぱい。 :02/09/03 22:20
坊やだからさ

188 :名無しさん@お腹いっぱい。 :02/09/03 22:44
全然流れと関係ないのだが、
「たこ」っていう初級者への別称が消えて久しいことに気づいた。
今は誰も言わないよね、「たこ」って。

189 :名無しさん@お腹いっぱい。 :02/09/03 22:48
>>183-186
こういうのって file コマンドで判別できないの?

190 :名無しさん@お腹いっぱい。 :02/09/03 23:11
>>188
かわりに「厨房」「電波」「DQN」「教えてクン」が使われるようになりました。

191 :名無しさん@お腹いっぱい。 :02/09/03 23:15
>>189
モノによる

そもそも.binなんて拡張子、バイナリをテキストと誤認しちゃうような
へなちょこなMIME設定になってるWebサーバで、強制的にバイナリで
ファイルをダウンロードさせたいだけのために付けたりもするからねぇ

192 :名無しさん@お腹いっぱい。 :02/09/04 01:25
X上で色数を変えることはできるんでしょうか?
Windowsみたいな感じで.



193 :名無しさん@お腹いっぱい。 :02/09/04 01:26
>>192
XFree86だったらいったんX鯖落さないと無理なはず

194 :名無しさん@お腹いっぱい。 :02/09/04 01:27
>>192
ちなみに目的は何だ?

195 :名無しさん@お腹いっぱい。 :02/09/04 01:38
>>194

たまにCADを使う必要があって,そのCADが256色でしか動かなくて,
いつもそのCADを使うときだけXサーバを起動しなおしてるので,
X上で変えられたらいいのになぁ.と思いまして.

>>193

XFree86です.
無理なのですね.ありがとさんです.

196 :名無しさん@お腹いっぱい。 :02/09/04 01:39
>>195
VNC使えばぁ〜

197 :名無しさん@お腹いっぱい。 :02/09/04 01:41
>>195
ちと面倒だけどX鯖TrueColorとPseudoColorとふたつ起動するって手もあるな。

198 :名無しさん@お腹いっぱい。 :02/09/04 01:59
>>196

VNCだと変えられるんですか?
初心者なんでよくわかんなくて
VNCも触ったことないですが,試してみます.

>>197

あれま,そんなこと出来ちゃうんですか.
それもやってみます.

199 :名無しさん@お腹いっぱい。 :02/09/04 02:25
startx -- :1.0

とかやると、もう一枚X立ち上がらない?



200 :名無しさん@お腹いっぱい。 :02/09/04 03:15
グラフィックアダプタによっては24bitの時も8bit pseudo color visual使え
るのがあったような気が。


201 :名無しさん@お腹いっぱい。 :02/09/04 03:48
漏れ昔、ローカルのディスプレイ0は 16bit色、
ディスプレイ1は "Xwrapper -query [相手のIP] -depth 8" で、
Ctrl+Alt+F? でローカルとリモートのHPUX切り替えてた。

202 :名無しさん@お腹いっぱい。 :02/09/04 05:39
>>192 Xnest

203 :名無しさん@お腹いっぱい。 :02/09/04 06:15
>>202
いやいや、XFree86のXnestはだめぽなんよ。
厳密にはXサーバのほうの問題なんだけど。

204 :名無しさん@お腹いっぱい。 :02/09/04 08:15
>>200
http://www.xfree86.org/4.2.0/mga.4.html
にある"8+24 overray mode"ってヤシかな?

205 :名無しさん@お腹いっぱい。 :02/09/04 08:24
startx -- :1.0でできたよ、すっげー。
切り替えはCtrl+Alt+F8, Ctrl+Alt+F7だった。

同じことをSolarisのCDEでもできませんか?


206 :178 :02/09/04 08:31
>>179
ありがとうございました

たしかにunixな質問じゃないですね
ちなみにWINのIEからやってもおなじでしたね
なんでかな

207 :名無しさん@お腹いっぱい。 :02/09/04 08:38
>>206
そのHPがたこ、防火壁がhttpsブロック、ブラウザのクッキーoff、
JavaScript offとか、その他いろいろな原因が考えられるよ。

208 :名無しさん@お腹いっぱい。 :02/09/04 09:26
xearth-1.1.tar.gzというソフトをインストールしたいので
が(他のxmkmfを使用するソフトも同様ですが)、
$ xmkmf
imake -DUseInstalled -I/usr/openwin/lib/X11/config
"Imakefile.c", line 4: missing #endif
imake: Exit code 2. Stop.
となってしまい、Makefileが作成されません。うーん、
どうやら、/usr/openwin/lib/X11/config/sun.cofとsite.def
を修正するようで色々試みたのですが、ちょっと分かりませ
んでした。OSはSUN5.9です。
よろしくおながいします。

209 :名無しさん@お腹いっぱい。 :02/09/04 11:20
>>205
Solaris ではできません。


210 :名無しさん@お腹いっぱい。 :02/09/04 11:34
cronで毎時間、25分と55分に動作させるようにするにはどうすれば
いいのでしょうか?

211 :名無しさん@お腹いっぱい。 :02/09/04 11:45
>>210
2行かいたら

212 :名無しさん@お腹いっぱい。 :02/09/04 11:46
25,55 * * * *

213 :175 :02/09/04 12:05
>>176
> LC_MESSAGES=C
ということなので
setenv LC_MESSAGES C(shellはtcshを使ってます)
してxinitしましたが、やっぱりWarningが出ます。
ちなみにLC_CTYPEをja_JP.eucJPからCに変えるとWarningは出ないです。
その辺りを試行錯誤してみます。有難うございました。

214 :名無しさん@お腹いっぱい。 :02/09/04 18:44
unzip で ファイルを パイプから渡すにはどうすればいいのでしょうか?

cat a.zip | unzip

みたいな感じで。

215 :名無しさん@お腹いっぱい。 :02/09/04 20:18
>>214
何がしたいの?

216 :214 :02/09/04 20:24
カレントディレクトリにある *,zip を1度に展開したいんだけど
unzip *.zip ではできないので
find . -name "*.zip" -print |
みたいに渡せばできるのかて〜って思った。

217 :名無しさん@お腹いっぱい。 :02/09/04 20:36
>>216
それと >>214 はどういう関係があるんだ?

218 :215 :02/09/04 20:38
なるほど。
man unzip
は読んだかな?

# for or foreach 使ってもいいけどね。

219 :名無しさん@お腹いっぱい。 :02/09/04 21:27

UNIX Linux プログラム WebProg Web製作板を良く見るのですが、
みなさんほんと凄い詳しいですね。尊敬します。
ところでこういう人達って各々の分野で飯食ってる人達なので
しょうか?

UNIX系OSのカーネル、鯖設定に精通していて Java API、
各種コンパイラ、CGI、Perlモジュール、セキュリティー等なんで
も鯉のハカーさんはいますか?

220 :名無しさん@お腹いっぱい。 :02/09/04 21:27
ls -li したときに
623617 drwxr-xr-x 26 hoge hoge 2048 9 4 21:11 ./
623616 drwxr-xr-x 4 root wheel 512 9 3 05:07 ../
623760 -rw-r--r-- 1 hoge hoge 4005 8 29 15:53 .emacs
623623 -rw-r--r-- 1 hoge hoge 852 8 19 13:10 .shrc
などと出ますが、 ./ や ../ のリンク数 26, 4 というのは何でしょうか?
ln でハードリンクを作ると
624153 -rw-r--r-- 2 hoge hoge 10 9 4 21:02 test
624153 -rw-r--r-- 2 hoge hoge 10 9 4 21:02 test2
のように同じ inode のファイル(中身は内容も格納場所も同じ)ができて、
片方を削除してもリンク数が 1 減るだけで内容は削除されない、というのは
分かりました。で、始めに書いた ./ のリンク数 26 というのは、この
inode (623617)を指しているハードリンクが 26 個あって、./ (=/home/hoge)
を削除してもリンクが 1 減るだけという事ですか?でも実際は本当に削除
されてしまいますよね?なぜなんでしょう…
(ディレクトリの場合は話が別???)

221 :名無しさん@お腹いっぱい。 :02/09/04 21:35

./ にディレクトリ ./a ./b ./c があって、./a/.. ./b/.. ./c/..
が ./ にハードリンクしてる?


222 :220 :02/09/04 21:50
/home/hoge で ls -aF | grep "/$" | wc すると 26 だったので、
./ と ../ を含めてディレクトリは 26、./ のリンク数と一致しました。
>>221 さんのおっしゃるとおりかもしれません。しかし、../ は ./ に
ハードリンクしてはいないような気がするのですが…
ためしに mkdir test として空のディレクトリを作ると
624356 drwxr-xr-x 2 hoge hoge 512 9 4 21:44 ./
623617 drwxr-xr-x 27 hoge hoge 2048 9 4 21:45 ../
となりました。2 って…?
それに、もし ./a/.. が ./ のハードリンクだとすると片方を rm しても
片方は残るという事になりませんか?それに、man ln してみると
通常ハードリンクはディレクトリを指せないと書いてあります。
むぅ…私はものすごく勘違いをしているのでしょうか…



223 :名無しさん@お腹いっぱい。 :02/09/04 22:01
>>222
> 624356 drwxr-xr-x 2 hoge hoge 512 9 4 21:44 ./
> 623617 drwxr-xr-x 27 hoge hoge 2048 9 4 21:45 ../
> となりました。2 って…?

ちゃんと2つあるやん。


224 :220 :02/09/04 22:07
>>223
./ と ../ のリンク数が違うので別物ではないんでしょうか?
../ は /home/hoge のを指していて、 ./ は /home/hoge/test を
指しているのでは?
…あっ、だから 2 か!
でも片方削除したら両方消えますよね…
あれ、でもそれってあたりまえ。
んんんんんーーーーー混乱してきました。

225 :名無しさん@お腹いっぱい。 :02/09/04 22:12
>>214
zipはファイルのケツにindexがあるから、展開する前にseekしなければならない。
だから標準入力を読むことはできない。フォーマット上の欠点のひとつだな。

226 :名無しさん@お腹いっぱい。 :02/09/04 23:07
>>225
それは大きな欠点だ。
さすが、標準入力とかの概念に乏しい UNIX 以外の OS を由来とするだけある。
そして、それを採用してしまった Java や Solaris はなに考えてんだか・・

227 :名無しさん@お腹いっぱい。 :02/09/05 00:23
コンパイルって何?
FreeBSDインストール今日したんだけどさ。
なんか初心者向けの雑誌というかムックが売ってたので。
make installはやってみたけどコンパイルってどんなこと?
やってみたいんですけどどうすればいいですか?

228 :名無しさん@お腹いっぱい。 :02/09/05 00:28
>>227
プログラム言語で書かれたものを2進数の数列にすること

229 :名無しさん@お腹いっぱい。 :02/09/05 00:31
>>227
make installしたなら、多分コンパイルもしてるはずです。
そう、あなたはもう「コンパイル」をしたのです。おめでたう。

230 :名無しさん@お腹いっぱい。 :02/09/05 01:23

>でも片方削除したら両方消えますよね…
>あれ、でもそれってあたりまえ。
>んんんんんーーーーー混乱してきました。

/home/hoge/testはrmdirできても
/home/hogeはrmdirできないんじゃないの?


231 :名無しさん@お腹いっぱい。 :02/09/05 04:08
gtk 2.0 における ~/.gtkrc の役割をするファイルは何ていう名前?
それと、書式変わった?

232 :名無しさん@お腹いっぱい。 :02/09/05 07:22
MHonArcについてなのですが
http://www.oac.uci.edu/indiv/ehood/MHonArc/doc/resources.html
のこのページの日本語翻訳して公開しているサイトなんてご存知ないでしょうか?

233 : :02/09/05 08:03
正規表現を教えてください。
更新されたファイルのリストを取得しようとしています。

find -name ファイル名 -cnewer change_files > change_files

ファイル名に *~, *.class, *.log, *.jar, *.war を除いた物を指定したいのですが
正規表現をどう書いたらいいか分かりません。

234 :名無しさん@お腹いっぱい。 :02/09/05 08:31
find の 拡張正規表現が使えなかったので
find . -cnewer change_files -print | awk '!/~$|\.class$|\.log$|\.jar$|\.war$/' > change_files
とかやってみたけどどうよ?



235 :名無しさん@お腹いっぱい。 :02/09/05 08:35
正規表現に拘らなければ grep -v とか。

236 :名無しさん@お腹いっぱい。 :02/09/05 08:36
find dir ! -name '*~' ! -name '*.class' ! -name '*.log' ! -name '*.jar' ! -name '*.war'
みたいに羅列するのが基本じゃないでしょうか。

237 :名無しさん@お腹いっぱい。 :02/09/05 08:43
>>236
基本!だね。でも正規表現でない罠(っつーか、>>233 は正規表現がなにか
分かってる?)

238 :233 :02/09/05 08:43
レスありがとうございました。

>>236
できました!なるほど-nameの評価結果はブール値でしたね。


239 :名無しさん@お腹いっぱい。 :02/09/05 08:46
2chのIDが出るしくみってわかりますか?
携帯(iモード)から書き込むと
なぜか他人とIDが被るので、
自作自演の嫌疑をかけられて困っています。


240 : :02/09/05 08:49
>>237
少しだけわかってます。(汗)
あの後調べて正規表現を指定するには -regex オプションでなければいけないと知り

find -regex '/.*\/.*!/~$|\.class$|\.log$|\.jar$|\.war$/' -cnewer diff.jar

とやってみたのですが、ヒットしませんでした。

241 :名無しさん@お腹いっぱい。 :02/09/05 09:10
>>239
わかるが何を聞きたいのか意味不明。なぜUNIX板なのかさらに不明。

242 :名無しさん@お腹いっぱい。 :02/09/05 09:12
>>241
ここなら詳しい神がいると思いまして。


243 :名無しさん@お腹いっぱい。 :02/09/05 09:13
>>242
初心者の質問
http://cocoa.2ch.net/qa/

一応誘導しとく。

244 :名無しさん@お腹いっぱい。 :02/09/05 10:16
>>225
>zipはファイルのケツにindexがあるから、展開する前にseekしなければならない。
>だから標準入力を読むことはできない。

あのー、/usr/bin/sort も入力をケツまで読まないといけないんですが、
それでも標準入力から読むことはできるんですが…。

245 :名無しさん@お腹いっぱい。 :02/09/05 10:47
>>244
しっ!

225=226はIBMの営業だよ。放置、放置。

246 :名無しさん@お腹いっぱい。 :02/09/05 11:35
>>224

mkdir fooのしくみ
 空の入れ物(ディレクトリ名とかを入れるデータブロックをつくる)。この時点ではこの入れ物のリンク数はゼロ。
 カレントディレクトリに、今作った入れ物(ディレクトリ)のハードリンクをfooという名前で作る。fooのリンク数は1になる。
 fooの中に . という名前でfooへのハードリンクを作る。fooのリンク数は2になる。
 fooの中に .. という名前でカレントディレクトリへのハードリンクを作る。カレントディレクトリのリンク数は +1 される。

混乱なおったか?
まめちしきとして、ハードリンクの数というのは大抵のUNIXで32767が最大なので、各ディレクトリの中には、
事実上ディレクトリが32767個以上つくれなかったりする。


247 :名無しさん@お腹いっぱい。 :02/09/05 11:43
reboot出来ないマシンを使用しています。(Compaq Deskpr 6000)
このマシンは、サーバールームの奥底にあり一々rebootの度に、
電源ボタンを触りに行くのが面倒で、、カーネルを書き換えてしまえ!
って安直に発想しました。

カーネルのリブートを行っている部分、
vm_machdep.cの
outb(IO_KBD + 4, 0xFE);
をインラインアセンブルかなにかで、PCをリセットする命令を書き込ん
で、強制rebootしようと思っています。

どんなコマンド書けばいいんでしょうか?

248 :名無しさん@お腹いっぱい。 :02/09/05 11:57
>>247
printf("reboot");

249 :247 :02/09/05 12:06
>>248
あんまし、笑えません。ググっているんですが、見つからない、、、

250 :名無しさん@お腹いっぱい。 :02/09/05 12:22
>>247
OS書こうね。

0x64 に 0xFE を書いてもリセットがかからないAT互換機ってこと?
ふつう0x64(キーボードコントローラ)に0xFEを書くことによって
8042がリセットしてくれるんだけど、それが効かないんならそのマシンのハードウェア
資料をあさってどうにかするしかないんじゃない?

NetBSDのi386/machdep.cを見ると、KBDコントローラ経由のリセットが失敗したら
CPUをトリプルフォルトさせて強引にリセットしようとしてるね。これがほんとに有効なのかわからんけど。

251 :224 :02/09/05 12:35
>>246

解説ありがとうございます。そこまでは理解できました。ただ、リンク数が 2 ある foo
を削除すると、リンクが 1 減るのではなくいきなり消えてしまう理由が今一つ分かりません。

今 /home/hoge にいるとして、mkdir foo すると foo のリンク数は /home/hoge/foo と
/home/hoge/foo/./ の 2 つ、ということですね? で、rmdir /home/hoge/foo は、
/home/hoge/foo を消すだけでなく、その前に /home/hoge/foo/./ を消しているのでしょうか。
だからリンク数が 2 つあるのに rmdir /home/hoge/foo を消しただけでいきなり消えると。
また、/home/hoge/foo/./ 単体は rmdir 等では消せないと決められているだけで、仮にこれが
消えたとしたら /home/hoge/foo のリンク数は 1 になる、と。

この解釈だと辻褄が合いそうですが…。

252 :名無しさん@お腹いっぱい。 :02/09/05 12:51
>>251
rm(1) が通常ファイルを消すときに使うのは unlink(2)、
rmdir(1) がディレクトリを消すときに使うのは rmdir(2)

unlink(2) でディレクトリを削除するのは許可されておらず、
rmdir(2) を使う必要がある。

ということで >>251 の解釈で大体あってる。


253 :246 :02/09/05 13:00
>>251
そゆこと。system call 内で "." を消せないようにはじいている。
もし消せたならば224の言うとおりリンク数は1になるだろうけど、データ構造に
矛盾が生じて変になるだろうね。

システムコール ufs_rmdir() の中でやってることは、
 "." やマウントされているディレクトリならばエラーを返す(EINVAL)
 link数が2じゃなければエラーを返す(ENOTEMPTY)
 ディレクトリの中になにかファイルがあればエラーを返す(ENOTEMPTY)
 親ディレクトリのエントリからそのディレクトリエントリを消して、親ディレクトリのリンクを-1する
 消すディレクトリのリンクを-2する。(リンク数は0になる)
 ディレクトリ自体を破棄する。

他にもパーミッション関係とかチェックしてるけど省略。
まだ興味があるならkernelのsourceでも読んでみれ。getcwd.cも参考になるかも。

254 :247 :02/09/05 13:30
>>250
>OS書こうね。
スマソ FreeBSD4.6.1Rです。

>0x64 に 0xFE を書いてもリセットがかからないAT互換機ってこと?
はい、そのとおりです。SCSIのコントローラが悪さをしているよう。
SCSIのBIOSレベルでの設定が出来れば、解決するらしいのですが、
メーカー製マシンでSCSIは転送速度以外の設定は出来ません。
()

BROKEN_KEYBOARD_RESETをセットしても、rebootしません。
ちなみに、rebootコマンド後は電源ランプ消灯でHDDランプ点灯のまま
固まります。

>マシンのハードウェア資料をあさってどうにかするしかないんじゃない?
AT互換機の仕様として、CPUの実行レベルを落とせば、キーボードコン
トローラを使用せずに、CPUの命令のみで(jmp 0xffffffffとか)マシンの
リブートが出来ないのかと試行錯誤しています。

何かご存知の方がいらっしゃいましたら、情報をお待ちしております。

255 :251 :02/09/05 13:32
>>252 >>253
unlink(2) と rmdir(2) について調べました。
int main() {
printf("%d\n", unlink("/home/hoge/foo/./"));
printf("%d\n", errno);
return 0;
}
結果
-1
1(EPERM: Operation not permitted)
int main() {
printf("%d\n", rmdir("/home/hoge/foo/./"));
printf("%d\n", errno);
return 0;
}
結果
-1
22(EINVAL: Invalid argument)
man 2 rmdir で調べると EINVAL は載っていないので、/usr/src/sys/kern/vfs_syscalls.c
を調べてみると(FreeBSDです)
int rmdir(p, uap) struct proc *p; struct rmdir_args {...}

/*
* No rmdir "." please.
*/
if (nd.ni_dvp == vp) {
error = EINVAL;
goto out;
}
とありました。/home/hoge/foo/./ を削除する方法は無いようですね。
色々ありがとうございました。これで安心して眠れます。

256 :名無しさん@お腹いっぱい。 :02/09/05 14:35
>>244
いい反論だ。
でもテンポラリファイルを使うのが常識なものと比べるのはどうかな。
1GBのzipの展開と、1GBのテキストのsortにかかる資源はぜんぜん違うよ。

257 :名無しさん@お腹いっぱい。 :02/09/05 14:47
>>256
だからといって原理上「できない」わけではない。
ごっちゃにしないでおくれ。

258 :名無しさん@お腹いっぱい。 :02/09/05 15:18
>>177 どなたかかわかりませんか。NFS を local HDD にキャッシュ云々。

259 :名無しさん@お腹いっぱい。 :02/09/05 16:15
すみません,質問させてください
Emacsで英和/和英辞書を利用できる sdic というソフトを
http://namazu.org/~tsuchiya/sdic/index.html
ここを見ながらインストールしてたんですが
辞書ファイルを作成する
make dict
とすると
test -f gene95.lzh -o -f gene95.tar.gz -o -f gene95.tar.bz2
if [ -f gene95.lzh ]; then lha x gene95.lzh gene.txt; elif [ -f gene95.tar.gz
]; then /usr/bin/gzip -dc gene95.tar.gz | tar xf - gene.txt; else /usr/bin/bzip2 -dc gene95.tar.bz2 | tar xf - gene.txt; fi
test -s gene.txt
no -S -e gene.txt | /usr/bin/perl contrib/gene.perl > gene.sdic
no: not found

となるんです.このまま続けると一応使えるようになるんですが,
和英辞書はちゃんと動くんですが,英和(gene95)が動いてくれません.
make dictでのgene.txt→gene.sdicの変換がうまくいってない見たいです.
/usr/local/share/dict/gene.sdic のサイズも6バイトしかありません.
make dictしたときのログから,'no'というコマンドが無くて変換できなかった
みたいですが,この'no'ってなんでしょう?
どうやったらちゃんと変換できるでしょうか?

260 :名無しさん@お腹いっぱい。 :02/09/05 16:26
専門スレあるよ。(青息吐息だけど…)


Unix 辞書ソフト総合スレッド
http://pc.2ch.net/test/read.cgi/unix/1005185290/l50

261 :名無しさん@お腹いっぱい。 :02/09/05 16:41
ええ,最終書き込みが一週間近く前だったので…沈んでるのを
わざわざ揚げて質問もどうかなと思い,なんでもありなこのスレ
に書いてみたんですが,そっちのほうがいいですかね…
(問題自体も直接辞書ソフトと関係ある感じじゃないし)

この no コマンド?の情報ある方もし良かったら教えて欲しいのですが
邪魔ならそっち行きますが,どうかお願いします.


掲示板に戻る 全部 前100 次100 最新50

read.cgi ver5.26+ (01/10/21-)