くだらない質問はここに書き込め!Part 56
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2008/09/07(日) 23:12:26くだらない質問はここに書き込め!Part 55
http://pc11.2ch.net/test/read.cgi/unix/1205161256/
UNIX板は 2ch のサポートセンターではありません
批判、要望は→ 2ch批判要望 http://ex21.2ch.net/accuse/
NGワード
* UNIXって何? → http://pc11.2ch.net/test/read.cgi/unix/998779290/l50
* UNIXとLinuxの違いは何? → http://pc11.2ch.net/test/read.cgi/unix/1024558135/l50
* 2ch閉鎖の危機をUNIX板が救ったという話{は本当? | を知った。有り難う! | のflashはどこ?}
禁止事項
* 既出・内容なし・マルチポスト・アスキーアート各種・ネタage・宿題の丸投げ
注意事項
* 荒らしは無視が鉄則
* Unixと関係ない質問/話題は、よけいな相手をせず適切な板に誘導
* 転んでも泣かない
* ひろゆきのギャグには笑うこと
質問する前にググること http://www.google.co.jp/
0793名無しさん@お腹いっぱい。
2009/02/19(木) 02:46:46自律を伴う自由ならば、その自由を規定するルールによって自由を保障することができる。
0794名無しさん@お腹いっぱい。
2009/02/19(木) 08:20:20そういう「フリー」は80年代に死滅しました。
0795名無しさん@お腹いっぱい。
2009/02/19(木) 13:27:28printfやfprintfなどの実装を読んでみたいのですが
0796名無しさん@お腹いっぱい。
2009/02/19(木) 14:01:59http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libc/stdio/vfprintf.c?rev=1.88;content-type=text%2Fplain
0797名無しさん@お腹いっぱい。
2009/02/19(木) 14:30:22ありがとう御座います。
OSもFreeBSDなのでちょうど良かったです。
0798797
2009/02/19(木) 14:36:27実はpopenの実装も読んでみたいのですがみつかりませんでした。
popenについては何処で読めるのかと自分の知りたいコードについて何処で検索できるのか
お教え願います。
0799名無しさん@お腹いっぱい。
2009/02/19(木) 15:31:240800名無しさん@お腹いっぱい。
2009/02/20(金) 10:54:16ライセンスとか著作権の問題点は権利保有者無関係なのにそれを「法」ととらえていちゃもんつける連中が多いこと
それと法的には著作権がないことが確定されているフォントの形状とかhello worldないしはwindowにコンポーネントがのっている程度のプログラムに
「著作権があります。改竄不可」
とか法的根拠の無いライセンスくっつけているものが多い
完全フリーのソフトって作者とんずらとか飽きたとかどうでもいいようなものがほとんど
つーか 自由に使えるという状態が欲しいだけで何も売れるようなもの作らないんだよね、
反GPL論みたいなの言う人は
0801名無しさん@お腹いっぱい。
2009/02/20(金) 21:32:22GPLな人のほうが、たくさんソースコード書いてるからねえ
0802名無しさん@お腹いっぱい。
2009/02/20(金) 23:23:18元ネタがGPLだったからGPLというパターンは?
0803名無しさん@お腹いっぱい。
2009/02/21(土) 04:35:400804名無しさん@お腹いっぱい。
2009/02/21(土) 04:42:40redhatだしな
0805名無しさん@お腹いっぱい。
2009/02/21(土) 08:06:150806名無しさん@お腹いっぱい。
2009/02/21(土) 09:51:20gcc採用した頃からGPLライセンスなソフトウェアと生きていくのは確定だったかと。
coreに絞って頑張ればいい。
0807名無しさん@お腹いっぱい。
2009/02/21(土) 18:35:08自分で使いたいからというベクトルだけど
それが誰かの便利だったらいい。そんな程度で
0808名無しさん@お腹いっぱい。
2009/02/22(日) 01:34:46既出かもしれないですが、SDカードとUSBメモリーを使いたいのですが、ドライブの認識位置が変わってしまって困っています。
固定する方法を教えていただけませんでしょうか?
あと、8.0 CURRENTでは、私の無縁LANアダプタが全滅なんですけど、Giant Lockって何ですか?
0809名無しさん@お腹いっぱい。
2009/02/22(日) 09:21:06「全部まとめて排他しとけば安全だろ」
0810名無しさん@お腹いっぱい。
2009/02/23(月) 20:47:20>Giant Lock
0811名無しさん@お腹いっぱい。
2009/02/24(火) 21:30:17以下のOSを考えています。
Solaris 9 Operating Environment x86 platform
できればWindowsやLinuxとデュアルブートにしたいとも思っています。
またまっさらな状態からBIOSのCDROMドライバだけでインストール可能でしょうか?
それともUnixは専用のハードじゃないとダメなのでしょうか?
0812名無しさん@お腹いっぱい。
2009/02/24(火) 21:34:100813名無しさん@お腹いっぱい。
2009/02/24(火) 21:51:18そうなんだ。。残念です。ありがとうございます。
0814名無しさん@お腹いっぱい。
2009/02/24(火) 22:06:45例えば具体的に、何大学の何々研究室では今でも使ってるとか
どこどこ株式会社の何何部では今でも使ってるとか
具体的な事例を出してください。
今まで仕事で大学や研究機関など入ったことがありますが
どこもwindowsでした。
0815名無しさん@お腹いっぱい。
2009/02/24(火) 22:13:280816名無しさん@お腹いっぱい。
2009/02/24(火) 22:15:28>どこどこ株式会社の何何部では今でも使ってるとか
>具体的な事例を出してください。
0817名無しさん@お腹いっぱい。
2009/02/24(火) 22:18:06東工大のツバメとかいう計算機がLinux+opetronで作られたばかりじゃん
会社だったら、世界一でかいデータセンターもってるgoogleとか
世界中からアクセスあるyoutubeとか、amazonのクラウドサービスとか
計算機Top100(HPC分野)のなかにある60%はlinuxでそ
東京証券取引所、三井住友銀行、携帯端末、薄型テレビ
そりゃ一般人には目につかない所だよ、俺だってこんなところ入ってみたわけじゃないし
あげたら、きりないよ
0818名無しさん@お腹いっぱい。
2009/02/24(火) 22:20:17linuxなんか個人でも使ってるじゃないですか?
0819名無しさん@お腹いっぱい。
2009/02/24(火) 22:24:25ハイ、次。
0820名無しさん@お腹いっぱい。
2009/02/24(火) 22:24:26金曜か土曜の夜にやれ
0821名無しさん@お腹いっぱい。
2009/02/24(火) 22:37:15「HP-UX 導入事例」とか「Solaris 導入事例」で検索すれば沢山出てくる。
0822名無しさん@お腹いっぱい。
2009/02/24(火) 22:42:340823名無しさん@お腹いっぱい。
2009/02/24(火) 22:46:000824名無しさん@お腹いっぱい。
2009/02/24(火) 22:51:540825名無しさん@お腹いっぱい。
2009/02/24(火) 22:54:59かなり過去の導入事例で今はもう使われていない例がたくさん出てくる
0826名無しさん@お腹いっぱい。
2009/02/24(火) 22:57:090827名無しさん@お腹いっぱい。
2009/02/25(水) 02:03:33ひどい釣りwww
0828名無しさん@お腹いっぱい。
2009/02/25(水) 02:39:32あるプログラムで以下のような処理があるとします。
1.scpで、リモートサーバから/etc/rc.confを取得する。(ローカルホストの/etc/hostsを置き換える)
2.ローカルホストの/etc/rc.confに対して、一部分を編集する。(時間帯によって編集する内容が異なる)
このような場合、排他ロックをかける必要があるでしょうか?
自分が心配に思っているのは、、2の追記を行っている最中に、
別のプロセスが1のscpを実行することにより、追記した内容が上書きされることはあるのではないかと心配しています。
0829名無しさん@お腹いっぱい。
2009/02/25(水) 02:46:34そうしなければならない。
むしろ君が8.0 CURRENTを使う必要が全くない。
0830名無しさん@お腹いっぱい。
2009/02/25(水) 03:04:41設定時刻に電源が切れていたなどの理由で走らなかった場合に困ります。
この手の問題はどのように対処するのが良いかアドバイスください。
0831名無しさん@お腹いっぱい。
2009/02/25(水) 03:18:51anacron
0832名無しさん@お腹いっぱい。
2009/02/25(水) 03:20:461は、リモートの/etc/rc.confをreadして、ローカルの/etc/hostsをwriteする
2は、ローカルの/etc/rc.confをread/writeする
そもそも何も競合してないが?
0833名無しさん@お腹いっぱい。
2009/02/25(水) 03:29:07たすかりました。ありがとうございます。
0834名無しさん@お腹いっぱい。
2009/02/25(水) 06:47:37/etc/rc.confに対して、時間帯によって異なる編集をする、っていうのが気になる。
もしかしてrc.confを編集すれば起動されてるデーモンとかの状態が変化すると
勘違いしてないか? いくら編集しようが、次の再起動まで反映されないんだが、、
0835名無しさん@お腹いっぱい。
2009/02/25(水) 08:08:200836>>828
2009/02/25(水) 12:16:50/etc/hostsではなくて/etc/rc.confの間違いでした。orz
0837名無しさん@お腹いっぱい。
2009/02/25(水) 12:28:59> 自分が心配に思っているのは、、2の追記を行っている最中に、
> 別のプロセスが1のscpを実行することにより、
> 追記した内容が上書きされることはあるのではないかと心配しています。
追記している最中じゃなくても、
あとから書けば当然上書きされるだろ。
scpしてんだから。何が心配だかわからん。
同時書込みでファイル内容の一貫性が失われるのが心配なら、
まず消してから、O_CREAT | O_EXCLでopen(2)するのが常套手段。
0838名無しさん@お腹いっぱい。
2009/02/25(水) 13:14:21当然、排他処理しなければいけない。
0839名無しさん@お腹いっぱい。
2009/02/25(水) 13:54:33> 同時書込みでファイル内容の一貫性が失われるのが心配なら、
別ファイル名で作っておいてrename(2)するのが最近のイディオム。
0840>>828
2009/02/25(水) 22:05:30>rename
プロセスAがファイルを書き込んでいる途中に、プロセスBがrenameしても、ファイルの整合性はたもたれるのでしょうか?
0841名無しさん@お腹いっぱい。
2009/02/25(水) 22:40:37いつから最近になってんだ???
つか
sed "sedscript" file >同じfile
が出来る奴の気がしれん!!!
のと, 同じだと思う
0842名無しさん@お腹いっぱい。
2009/02/26(木) 08:26:460843名無しさん@お腹いっぱい。
2009/02/26(木) 10:30:32「消してから O_CREAT | O_EXCLでopen(2)」
と、rename(2) の違いを理解していない。
「消してから O_CREAT | O_EXCLでopen(2)」方式では、
ファイルが存在しない瞬間が発生する。
一方、rename(2)では、ファイルが存在しない瞬間が発生しないことを
保証している。
だから、元の質問に戻ると、
一旦別ファイルにscpしてから mv -f すればいいということになるな。
0844名無しさん@お腹いっぱい。
2009/02/26(木) 11:20:070845名無しさん@お腹いっぱい。
2009/02/26(木) 19:08:06ファイルオープン時大抵排他指定しているはずだから
プロセスBのリネームは却下されると思う。一般論なので自信無
0846名無しさん@お腹いっぱい。
2009/02/26(木) 19:20:53嘘書くな。
>>840 については、プロセスAがファイルを書き込んでいるのとは無関係に
プロセスBのrename(2)が成功する。
結果のファイル内容は、プロセスBのものになり、
プロセスAの書き込みはすべて廃棄される。
0847名無しさん@お腹いっぱい。
2009/02/26(木) 19:22:49素人は引っ込んでろ。
0848名無しさん@お腹いっぱい。
2009/02/26(木) 19:38:35Windows臭
0849名無しさん@お腹いっぱい。
2009/02/27(金) 05:21:56>プロセスAの書き込みはすべて廃棄される。
これホント?
0850名無しさん@お腹いっぱい。
2009/02/27(金) 06:24:14素人は引っ込んでろ。
当たり前のこと何度も聞き返すんじゃないよ。
0851名無しさん@お腹いっぱい。
2009/02/27(金) 06:52:30同一ファイルをリネームするのかと思った。
0852名無しさん@お腹いっぱい。
2009/02/27(金) 10:39:50テストしてみた。
0853名無しさん@お腹いっぱい。
2009/02/27(金) 10:45:31意味を理解できない素人は引っ込んでろ。
0854名無しさん@お腹いっぱい。
2009/02/27(金) 11:29:18ほんとに素人は困るなw
while :
do
echo hoge
sleep 1
done > file &
echo HAGE > file2
mv -f file2 file
cat file
HAGE
何度やっても
cat file
HAGE
上のwhileループはまだ書き込み延々実行中。
でも file の中身は HAGE。
0855名無しさん@お腹いっぱい。
2009/02/27(金) 11:44:57とか煽るから馬鹿がいつまでも粘着するんだよ。諭してやれよw
FreeBSDでもmv(1)はrename(2)を使ってる。
http://svn.freebsd.org/viewvc/base/release/7.1.0/bin/mv/mv.c?revision=186660&view=markup
rename(2)は"to"を「削除」する。
http://www.freebsd.org/cgi/man.cgi?query=rename&apropos=0&sektion=2&manpath=FreeBSD+7.1-RELEASE&format=html
後はUNIXのfile descriptorの振る舞いを知っていれば>>846は自明。
0856名無しさん@お腹いっぱい。
2009/02/27(金) 17:04:090857名無しさん@お腹いっぱい。
2009/02/28(土) 15:58:21あった場合に記事をメールで転送することはできますか?
0858名無しさん@お腹いっぱい。
2009/02/28(土) 16:03:28INNにnews2mailが付属してなかったっけ?
0859名無しさん@お腹いっぱい。
2009/02/28(土) 22:00:04大学のローカルなニュースグループに対してやりたいんだけど
その方法でできますか?
0860名無しさん@お腹いっぱい。
2009/03/01(日) 01:59:430861名無しさん@お腹いっぱい。
2009/03/01(日) 12:34:07調べて見たんですけどよくわかりませんでした。
詳しい説明などがされているサイトがあったら教えてください。
0862名無しさん@お腹いっぱい。
2009/03/01(日) 16:32:32おk
0863名無しさん@お腹いっぱい。
2009/03/01(日) 20:48:38と思ったオレはおっさん
0864名無しさん@お腹いっぱい。
2009/03/01(日) 20:57:40もう少し詳しく聞きたいです。
0865名無しさん@お腹いっぱい。
2009/03/01(日) 21:48:30imかpygをcronから叩けば?
0866名無しさん@お腹いっぱい。
2009/03/02(月) 00:06:57>>860
>>863
>>865
質問に答えてくれてありがとうございました。
今の自分では理解できそうもないのであきらめます。
0867名無しさん@お腹いっぱい。
2009/03/02(月) 07:26:22atomicという言葉は、どのようなところで意識することでしょうか?
具体的な事例で、atomicでないからこれは失敗する、みたいな話が聞きたいです。
0868名無しさん@お腹いっぱい。
2009/03/02(月) 07:38:24rename(2)は、atomicな操作でファイルを置き換える。
もし、rename(2)の代わりにunlink(2)とlink(2)でファイルを置き換えていたら、
置き換える瞬間にその名前のファイルが存在しない瞬間ができてしまう。
常にファイルが存在することが前提のアプリケーションが誤動作する。
0869名無しさん@お腹いっぱい。
2009/03/02(月) 07:57:35atomic = all or nothing
0870名無しさん@お腹いっぱい。
2009/03/02(月) 08:05:500871名無しさん@お腹いっぱい。
2009/03/02(月) 09:06:070872名無しさん@お腹いっぱい。
2009/03/02(月) 09:20:47ファイルロックなら、ファイルの普通の作成で排他しようとするとか。
while [ -f filename ]
do
:
done
touch filename
0873名無しさん@お腹いっぱい。
2009/03/02(月) 10:29:19例えば ls >txt1.txt
としていてでかいディレクトリー指示して
定期的にtxt1.txtのサイズをみつつ
途中でmv txt1.txt txt2.txt
としても最初のプロセスは破棄されず
txt1.txtはないままtxt2.txtがえんえんと膨れ上がり無事終了となる。
0874名無しさん@お腹いっぱい。
2009/03/02(月) 10:40:41常識で考えて
ls >txt2.txt &
mv txt1.txt txt2.txt
0875名無しさん@お腹いっぱい。
2009/03/02(月) 11:20:25問題を間違えてるよ。
>>873 が書いてるのはそれで正常。
問題にしてるのは、
ls > txt1.txt
としてかいディレクトリーを延々と出力させてる途中に、
別のファイル txt2.txt を、
mv -f txt2.txt txt1.txt
とやると、ls の出力は破棄されて(正確にはリンクカウント0のファイルに一旦なるが)
mvした 元txt2.txtの内容で txt1.txtが出来上がる。
間違っても、mv のあとに、txt1.txtの上に ls の出力がマージされたりしない、
ということを言ってるの。
0876名無しさん@お腹いっぱい。
2009/03/02(月) 11:23:21だから >>873 みたいなことを言い出す。
ファイル名だけじゃなく、ファイルデスクリプタ的に
どのファイルをオープンしているかを考えれば自明なこと。
0877名無しさん@お腹いっぱい。
2009/03/02(月) 19:30:46そもそも「プロセス1がアクセスしているときにプロセスBがリネームするとプロセス1が中断される実例」
として載せているんだからこれが「正しい事実」
プロセス1はもしも連続したプログラムの場合txt1.txtをオープンできなくなっている。
つまり「好ましくない」状態だといえる。
ユーザーないしはアプリケーションは「ファイル名」を探索してそれを操作する。
操作の最中に同一プロセスが複数のアクセスをしようとしたとき
ファイル名が変わっていたらアクセスできない。
つまり「求められる仕様」として間違っているといえるわけだ。
ただしあくまでできの悪いコマンドラインプログラムの実装の問題であって
回避できるっていっているわけだ。
ファイルディスクリプタの概念などプログラマーの妄言
そこにあるのは「ディレクトリー内のファイル名のリスト」と「ファイル本体」だということをわかってない。
0878名無しさん@お腹いっぱい。
2009/03/02(月) 19:42:030879名無しさん@お腹いっぱい。
2009/03/03(火) 22:52:280880名無しさん@お腹いっぱい。
2009/03/03(火) 22:56:550881名無しさん@お腹いっぱい。
2009/03/04(水) 00:43:28ばか
-mtime -3h
だばか。-つけなきゃいけないんだ。
0882名無しさん@お腹いっぱい。
2009/03/05(木) 09:07:44みんなでスタックオーバーフロー行って
質問しまくろうぜ
英語で。
0883名無しさん@お腹いっぱい。
2009/03/07(土) 03:55:13自力で修復は無理なんだろうか
0884名無しさん@お腹いっぱい。
2009/03/07(土) 09:40:26アホか。
0885名無しさん@お腹いっぱい。
2009/03/07(土) 09:46:480886名無しさん@お腹いっぱい。
2009/03/15(日) 14:05:47jless-358-iso262 で第四水準の漢字が見れた人はいますか。
補助漢字は見えるのですが第四水準が <8F> <A1> <A1> などとなってしまいます。
マニュアルや readmde でも第四水準(JIS X 0213:2000 plane 2) が見えるようには
書いてありますが、、、
0887名無しさん@お腹いっぱい。
2009/03/16(月) 20:48:55良く分からんけど japanese00-ujis にすると見られたりしない?
0888名無しさん@お腹いっぱい。
2009/03/16(月) 21:37:24UNIX導入の時、ken thompson と dennis M.ritchie の書いた
マニュアルが付いてきたって書いてあるんだけど、
具体的な本の名前って何なのかな?
書籍化されてないとか?
0889名無しさん@お腹いっぱい。
2009/03/16(月) 21:41:48DECのマシン(かどうか知らんが)を買ったらそれが付いてきた、と。
0890名無しさん@お腹いっぱい。
2009/03/16(月) 22:05:33つまり取説って所かあ。
ぜひ読みたい。
0891名無しさん@お腹いっぱい。
2009/03/16(月) 22:50:320892名無しさん@お腹いっぱい。
2009/03/17(火) 00:36:05K. L. Thompson and D. M. Ritchie,
The UNIX Programmer's Manual,
Bell Laboratories, 1978.
ペーパーバックあるぞ。買え。(テキストファイルも昔見たことあるんだけどな)
この辺も読んでない奴が多いけど、読め。
・UNIX Programmer's Supplementary Documents, Volume 1 (PS1)
PS1:1 The C Programming Language- Reference Manual
・UNIX Programmer's Supplementary Documents, Volume 2 (PS2)
PS2:1 The Unix Time - Sharing System
PS2:3 Unix Programming - Second Edition
本物のUNIX:/usr/doc/{ps1,ps2,usd}は宝庫。
■ このスレッドは過去ログ倉庫に格納されています