トップページunix
1001コメント304KB

初心者もOK! FreeBSD質問スレッド その76

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001名無しさん@お腹いっぱい。2006/08/12(土) 13:44:46
1 :名無しさん@お腹いっぱい。:2006/07/08(土) 17:41:52
FreeBSD 関連の質問はここで。
・事前に過去ログ検索や Google 検索等の自助努力をすることが望ましい。
・再現性情報(ハードウェア・ソフトウェア・エラーメッセージ)の記載は必須。

http://www.freebsd.org/ja/
http://www.freebsd.org/releng/

http://www.freebsd.org/doc/ja/books/handbook/
http://www.freebsd.org/doc/ja/books/design-44bsd/

http://www.freebsd.org/ja/ports/
http://www.freshports.org/

過去ログ
http://bird.zero.ad.jp/~zau60806/FreeBSD/

書籍
http://www.amazon.co.jp/exec/obidos/search-handle-url/ix=books-jp&fqp=keywords%01FreeBSD
http://www.amazon.co.jp/exec/obidos/search-handle-url/ix=books-us&fqp=keywords%01FreeBSD

まとめサイト@Wiki 過去のQ&A集
http://www9.atwiki.jp/freebsd/

前スレ - 初心者もOK? FreeBSD質問スレッド その75
http://pc8.2ch.net/test/read.cgi/unix/1152348112/
0813名無しさん@お腹いっぱい。2006/08/31(木) 19:20:33
cpio とか pax とか。
0814名無しさん@お腹いっぱい。2006/08/31(木) 19:21:41
消えた原因を調べる。
0815名無しさん@お腹いっぱい。2006/08/31(木) 19:31:05
>>812
tarをNGワードに指定したからじゃないの?
0816名無しさん@お腹いっぱい。2006/08/31(木) 19:47:02
>>812
作り直すなら
( cd /usr/src/usr.bin/tar/ && make all install )
0817名無しさん@お腹いっぱい。2006/08/31(木) 19:52:54
消えた原因は分からず終い・・・・・しかし、復旧することが出来ました。
ちなみに>>816さんの方法ではmake中にエラーが・・・・・。

# cp /rescue/tar /usr/bin/tar

お騒がせしました┏●
0818名無しさん@お腹いっぱい。2006/08/31(木) 19:55:18
なんか大ダメージを負ってそうだね。
bashが吹き飛ばしたか?
0819名無しさん@お腹いっぱい。2006/08/31(木) 19:55:21
>>817
それじゃあ仮復旧じゃん。
0820名無しさん@お腹いっぱい。2006/08/31(木) 19:57:24
>>818
tcshじゃね?ロリ御用達のシェルだし。
0821名無しさん@お腹いっぱい。2006/08/31(木) 20:07:12
それ何てplamo?
0822名無しさん@お腹いっぱい。2006/08/31(木) 20:21:36
csh使ってます。
大ダメージというと・・・・?
0823名無しさん@お腹いっぱい。2006/08/31(木) 20:38:48
tarみたいな基本コマンドはシェルに組み込んどけよ。
bashならconfigureオプションで組み込めるだろ?
0824名無しさん@お腹いっぱい。2006/08/31(木) 21:00:42
tcshならどうやりゃいいの?
0825名無しさん@お腹いっぱい。2006/08/31(木) 21:00:49
カーネルをカスタマイズしない場合、一番軽いBSDはFreeBSDですか?。
cel300mhz 64memでデスクトップ用途で使いたいのですが。
0826名無しさん@お腹いっぱい。2006/08/31(木) 21:16:17
シェルがなくなっちゃったらどうしたらいいんだろう・・・・
0827名無しさん@お腹いっぱい。2006/08/31(木) 21:20:37
bashみたいな基本シェルはカーネルに組み込んどけよ。
FreeBSDならGENERICに options BASH 追加すれば組み込めるだろ?
0828名無しさん@お腹いっぱい。2006/08/31(木) 21:34:06
カーネル巻き込んで落ちるからやめれ。
0829名無しさん@お腹いっぱい。2006/08/31(木) 22:07:39
bash以外のシェルは糞だからな・・・ぁ
0830名無しさん@お腹いっぱい。2006/08/31(木) 22:17:37
bashほど使い物にならない糞シェルは見た事が無い
shの方が100倍マシ
0831名無しさん@お腹いっぱい。2006/08/31(木) 22:38:49
・・・カーネルがなくなったら・・・
0832名無しさん@お腹いっぱい。2006/08/31(木) 22:49:20
FreeBSDみたいな基本OSはBIOSに組み込んどけよ。
普通のPCならROM焼きだいじょうぶで安全に組み込めるだろ?
0833名無しさん@お腹いっぱい。2006/08/31(木) 22:54:19
>>832
それ、何てメルコのルーター?
0834名無しさん@お腹いっぱい。2006/08/31(木) 23:00:12
CPUのキャッシュもいいんじゃね
0835名無しさん@お腹いっぱい。2006/08/31(木) 23:17:20
マイクロコードに入れとけ。
08367112006/09/01(金) 00:58:14
rubyのportupgrade が昼すぎに開始して先ほど終了しました。
12時間かかりました。
ruby恐るべしw

>795 さんの書き込みが無ければあきらめてました。
どうも、ありがとう。
0837名無しさん@お腹いっぱい。2006/09/01(金) 01:18:19
rubyはもう終わった言語だから捨てた方がいいよ。
そもそもportupgradeのメカニズムは簡易DBを作成してパターンマッチングしてるだけだし。
依存関係情報なんてのはports INDEXをSQLiteにでも突っ込んで変態的なクエリ操作すれば取れるし。
その方がレスポンス早いかもね。学生実験としてでもやればいいんじゃない?

まぁ俺は適当なshスクリプト書いているんでそれで十分間に合っているから必要ないが。
0838名無しさん@お腹いっぱい。2006/09/01(金) 01:20:41
訂正。INDEXだけでは足りない。全てのportのMakefileの中身も突っ込めばいい。所詮その程度の情報量だろう。
0839名無しさん@お腹いっぱい。2006/09/01(金) 02:22:36
起動時に、diskが刺さっているときだけマウントして、刺さってなければそのまま起動、
とするにはどうしたらいいですか?

fstabに書いてあるデバイスがないと、起動時にシングルユーザモード(?)に行ってしまうのですが、
これを防ぎたいのです。
0840名無しさん@お腹いっぱい。2006/09/01(金) 02:35:53
noautoつけといて、rc.localあたりでマウントする。
0841名無しさん@お腹いっぱい。2006/09/01(金) 08:33:21
portupgrade は捨てて sysutils/portsmaster 使え
0842名無しさん@お腹いっぱい。2006/09/01(金) 08:34:04
あ、s,portsmaster,portmaster,
0843名無しさん@お腹いっぱい。2006/09/01(金) 09:52:13
どう違うの? どこがいいの?
0844名無しさん@お腹いっぱい。2006/09/01(金) 09:55:14
>>836
そんなにかかるの?
お前のマシンとろいんじゃないのか?
0845名無しさん@お腹いっぱい。2006/09/01(金) 10:21:16
portupgradeが入っていない環境で
例えば ruby に依存しているインストール済みの
パッケージを全て知りたいような場合ってどのようにすれば
いいのでしょうか?
0846名無しさん@お腹いっぱい。2006/09/01(金) 10:24:23
>>843
シェルスクリプトでベースシステムのコマンドしか使ってないので他の
パッケージに依存しない (ruby が不要)
標準の pkg tools、ports で使われるファイルしか使わないので
データベースにまつわるトラブル無し
実行中に ^C ^Z 等がちゃんと効く

>>845
pkg_info -R ruby-1.8.5,1
0847名無しさん@お腹いっぱい。2006/09/01(金) 10:36:51
>837
>rubyはもう終わった言語だから捨てた方がいいよ。
気になってrubyスレを斜めに読んできた。
なるほど、いいたいことがわかったw

>適当なshスクリプト書いているんで
使ってみたいです。
0848名無しさん@お腹いっぱい。2006/09/01(金) 10:40:20
>844
わざわざとろいマシンでやってる人も多いのですよ。
0849名無しさん@お腹いっぱい。2006/09/01(金) 13:46:13
K6-2+ 550MHzで、ruby1.8.5のmake; make test完了まで6分弱。
何時間もかかってるひとは、何らかの不具合があるとしか。
0850名無しさん@お腹いっぱい。2006/09/01(金) 14:02:44
>849
メモリは何MB?
0851名無しさん@お腹いっぱい。2006/09/01(金) 14:28:06
PenIII 450MHz 128Mメモリで2時間経過したけど終わらない
ruby1.8.4までは数分で完了してました

psで見るとこんな感じ
root 57393 0.3 67.8 125408 85012 v0 DL+ 11:15AM 13:08.41 ./ruby18 ./bin/rdoc --all --ri --op /usr/local/share/ri/1.8/system .

vmstat -w 5
procs memory page disks faults cpu
r b w avm fre flt re pi po fr sr da0 da1 in sy cs us sy id
1 2 0 165296 7336 229 32 94 10 278 9109 109 0 340 244 116 3 3 94
1 1 0 165296 7480 552 72 112 1 133 9122 114 0 344 35 120 7 3 90
1 0 0 166528 7724 347 41 101 4 146 4543 107 0 336 139 119 29 3 68
0 2 0 166528 6720 185 70 127 3 162 4617 131 0 360 13 137 3 2 95
0 2 0 166528 8924 236 141 102 7 376 4570 115 0 352 487 149 3 4 93
スワップしまくりです。
08528492006/09/01(金) 14:33:26
>>850
512MB積んでて、メモリディスクに320MB、その他デーモン類がだいたい
数十MB程度使ってるんで、空きメモリは100MB強くらいかな。
0853名無しさん@お腹いっぱい。2006/09/01(金) 14:57:02
>851
>852
なるほど。



スワップが問題の余寒
0854名無しさん@お腹いっぱい。2006/09/01(金) 15:17:17
sysutils/portmaster 良さげだね。
なんで今まで盲目的に portupgrade なんてものを使っていたんだろう。
0855名無しさん@お腹いっぱい。2006/09/01(金) 15:45:48
FreeBSD5.4でlocal内でもmailが送れないことがわかりました。
なにがおかしいのか、わかりません。
なにも設定していないクライアントのOSXではmailコマンドでちゃんと送れるのに。
違いといえば、ここのFreeBSDマシンは外部のDDNSサービスを使用して
FTPとして公開しているという点くらいです。
ご教示お願いします。
0856名無しさん@お腹いっぱい。2006/09/01(金) 15:54:35
>>855
エスパーしてみると、/var/spool/clientmqueue にメールが溜ってそうだな。
0857名無しさん@お腹いっぱい。2006/09/01(金) 16:06:45
>>855が、localhost と localdomain の区別も付かない奴だということは分かった。
0858名無しさん@お腹いっぱい。2006/09/01(金) 16:08:06
/etc/rc.conf で hostname="localhost" か/etc/hostsで
127.0.0.1 localhost localhost.my.domain (rc.confに設定したhostname)
ってのが必須なのかな?
0859名無しさん@お腹いっぱい。2006/09/01(金) 16:11:06
>>856
ありがとうございます。

そのとおりで、溜っていました。
しかし、去年の8月くらいのものでしたが…
rc.conf に sendmail_enable="YES"
と書いてみて
/etc/rc.d/sendmail status してみたんですが
sendmail is not running.
sendmail_clientmqueue is not running.
と言われてしまいました。
いったいこれはどういう状況なんでしょう?
0860名無しさん@お腹いっぱい。2006/09/01(金) 16:14:22
「sendmail が走っていない状況」以外のなんだというのか?
0861名無しさん@お腹いっぱい。2006/09/01(金) 16:34:11
>855
/etc/rc.confで
sendmail_enable="NO"
でやってみるのは?
0862名無しさん@お腹いっぱい。2006/09/01(金) 16:42:25
>>861
ありがとうございます。
特にかわりはありませんでした。
おそらく問題は自分が名前解決とかなんもわかってないからだと思います。
どこか、参考になるサイトとかありませんでしょうか?
0863名無しさん@お腹いっぱい。2006/09/01(金) 16:49:16
>>862
>>1
0864名無しさん@お腹いっぱい。2006/09/01(金) 17:10:17
unixbenchをやったら
USBのFullSpeedモードとHiSpeedの結果が
似たような結果になったのですが、これは仕様ですか?
0865名無しさん@お腹いっぱい。2006/09/01(金) 17:39:54
>>854
日本語での情報がほとんどないからじゃないかな。
portupgradeなら昔からあるし。
0866名無しさん@お腹いっぱい。2006/09/01(金) 17:49:37
>854
是非、簡単なレクチャーをお願いします。
0867名無しさん@お腹いっぱい。2006/09/01(金) 18:03:55
>>866
portmaster(8)
0868名無しさん@お腹いっぱい。2006/09/01(金) 19:59:20

% portmaster(8)
Badly placed ()'s.
%

0869名無しさん@お腹いっぱい。2006/09/01(金) 22:26:53
$ portmaster(8)
bash: syntax error near unexpected token `8'
$
0870名無しさん@お腹いっぱい。2006/09/01(金) 22:31:02
FreeBSDに限った話でなくて恐縮ですが
(より適切なスレを教えて頂ければ幸いです)

magicpointにある落書き機能だけを実現するXアプリをご存じでしたら
教えて頂ければ幸いです。
latex-prosperでプレゼン資料を作っているのですが
あの落書き機能が忘れられず...。
xblodをいじれば何とかなるかなと思ったのですがそんな能力もなく...。
0871名無しさん@お腹いっぱい。2006/09/01(金) 22:46:15
printf(3)とprintf(1)みたいに、C関数なのかコマンドなのか
区別する必要がある場合に(3)とか(1)とか付けるのはわかるが、
そうじゃないものまでportmaster(8)とかいちいち付けるのって
FreeBSD界隈特有の現象だな。
0872名無しさん@お腹いっぱい。2006/09/01(金) 22:53:29
若僧か
0873名無しさん@お腹いっぱい。2006/09/01(金) 23:03:41
ラベル名による抽象化が行なわれていないマジックナンバーを使うというのも
前近代的だよな。しかも、普通使うの(1)(2)(3)(8)と、数字が飛んでる。
たまに(4)(5)も使う。ごくたまに(7)もある。でも今では(6)は無い。
一般ゲームは(6)なんか使わないし。
0874名無しさん@お腹いっぱい。2006/09/01(金) 23:10:40
>>871
判別として数字を付記している面もあると思うけれど
この場合は暗黙に「man読め」と指示しているだけなのでわ。
0875名無しさん@お腹いっぱい。2006/09/01(金) 23:13:53
man 1 intro
man 2 intro
man 3 intro
man 4 intro
man 5 intro
man 6 intro
man 7 intro
man 8 intro
man 9 intro
0876名無しさん@お腹いっぱい。2006/09/01(金) 23:17:27
>>875 は空気が読めてないようですね。論点はそこじゃないんですね。
0877名無しさん@お腹いっぱい。2006/09/01(金) 23:20:07
またbashか
0878名無しさん@お腹いっぱい。2006/09/01(金) 23:22:17
提案:

×printf(1)
○printfコマンド

×read(2)
○readシステムコール

×printf(3)
○printf() ← 関数の()を付けると関数だとわかる

×null(4)
○/dev/null /dev付ければわかる

×fstab(5)
○/etc/fstab フルパスで書けば設定ファイルだとわかる

×mount(8)
○mountコマンド
0879名無しさん@お腹いっぱい。2006/09/01(金) 23:33:07
>>878
「printf()」以外全部長くなっとるやん。
0880名無しさん@お腹いっぱい。2006/09/01(金) 23:34:53
マジックナンバーをやめてラベル(名前)を付けろといってるんだから
長くなって当たり前(無問題)。
0881名無しさん@お腹いっぱい。2006/09/01(金) 23:35:12
>>878
> ○/dev/null /dev付ければわかる
sio(4) /dev/sio* は見当たらないんだが...
08827592006/09/01(金) 23:56:50
(´・ω・`) うちだけですか?
0883名無しさん@お腹いっぱい。2006/09/02(土) 00:10:56
bash厨の暴れっぷりのおかげで誰も読んでないってだけなんだろうなw
カワイソスw
0884名無しさん@お腹いっぱい。2006/09/02(土) 00:30:50
>>882
これのことか?

20060616:
AFFECTS users of emulation/linux_base-*
AUTHOR: netchild@FreeBSD.org

We now use Fedora Core 4 as the linux base port, and the corresponding
xorg libs for the linux X11 libs port.

To upgrade you have to run
portupgrade -f -o emulators/linux_base-fc4 linux_base\*
portupgrade -f -o x11/linux-xorg-libs linux-XFree86-libs

You need to make sure that you have not changed the sysctl
compat.linux.osrelease. FC4 behaves differently depending on the
content of this sysctl. Only the default value of this sysctl is
supported. In case of problems also revert to the default of the
compat.linux.osname if changed.

In case "printenv | grep LD_" prints something, e.g., LD_LIBRARY_PATH
or LD_PRELOAD, you have to make sure it is not set when starting
linux programs, else FreeBSD libraries will be picked up and the
programs do not start.

After this start a linux program to test, e.g., acroread. If you get
errors when starting linux programs about problems with libraries, and
you made sure no LD_* variable is set as described above, you are one of
those unlucky people where we do not have a better solution as to tell
you to deinstall every linux port, remove /compat/linux completely to
make sure no cruft is left and reinstall everything you need.
08857592006/09/02(土) 01:26:41
$ ls /var/db/pkg/ | grep -i linux | grep -i -e base -e libs
linux-xorg-libs-6.8.2_5
linux_base-fc-4_8

$ printenv | grep LD_

$ sysctl -a compat.linux
compat.linux.oss_version: 198144
compat.linux.osrelease: 2.4.2
compat.linux.osname: Linux

動く
$ /compat/linux/bin/uname
Linux
$ /compat/linux/bin/pwd
/var/db/pkg
$ /compat/linux/bin/echo "HEHE" | /compat/linux/usr/bin/head -1
HEHE
$ /compat/linux/usr/X11R6/bin/gears
24660 frames in 5 seconds = 4932 FPS
25903 frames in 5 seconds = 5180.6 FPS

動かない
$ /compat/linux/bin/ls
/compat/linux/bin/ls: error while loading shared libraries: /usr/lib/librt.so.1: ELF file OS ABI invalid
$ /compat/linux/bin/sleep 1
/compat/linux/bin/sleep: error while loading shared libraries: /usr/lib/librt.so.1: ELF file OS ABI invalid
$ /compat/linux/bin/date
/compat/linux/bin/date: error while loading shared libraries: /usr/lib/librt.so.1: ELF file OS ABI invalid

しばらく様子をみてみます
0886名無しさん@お腹いっぱい。2006/09/02(土) 01:33:09
xpdf(1)が全画面表示化するとPDFプレゼンができるのになぁ・・・
0887名無しさん@お腹いっぱい。2006/09/02(土) 02:16:06
ports/sysutils/port* っていろいろあんだね

こういうのは多様性は善というよりは
どれでもいいから正式なFreeBSDの標準配布物に含めてほしいところ
0888名無しさん@お腹いっぱい。2006/09/02(土) 02:37:37
>>887
それぞれのportの長短比較リポートよろしく
0889名無しさん@お腹いっぱい。2006/09/02(土) 02:50:59
性質上、試してみるの大変だべ
実際にうざったい依存関係があるうpだてをする時じゃないとテストにならないし

...というのが一度portupgrade入れたら他を試さなくなる理由ではなかろか
動きさえすれば実装がRubyだろうがLOGOだろうが違いはないわけだし


というわけで854はportmasterのどこが優れているのか書いてちょ
0890名無しさん@お腹いっぱい。2006/09/02(土) 02:58:20
> 動きさえすれば
に信者のモチベーションをみた気がする・・
拘りのない拘りのようなトートロジーの原動力って恐いね・・
0891名無しさん@お腹いっぱい。2006/09/02(土) 03:31:50
そりゃあんた、何が優れているのかもわからないのにわざわざ移行する暇人はいませんぜ
0892名無しさん@お腹いっぱい。2006/09/02(土) 03:42:32
結局のところ、日本人が創ったから portupgrade を使っていた、としか言えないわけか。
同じ理由で ruby も。それって何か虚しくないか?
0893名無しさん@お腹いっぱい。2006/09/02(土) 03:44:45
ごたくはわかったから、代替ソフトを使いたくなるようなプレゼンをしてよ。
良さそうなら乗り替えるからさ。
0894名無しさん@お腹いっぱい。2006/09/02(土) 03:50:52
人柱乙
0895名無しさん@お腹いっぱい。2006/09/02(土) 06:22:33
>>886できたけどもういいよ・・・
0896名無しさん@お腹いっぱい。2006/09/02(土) 07:00:43
>>893
もうみんな乗り換えたよ
0897名無しさん@お腹いっぱい。2006/09/02(土) 07:24:57
え、俺まだだよ。乗り換えるか。
0898名無しさん@お腹いっぱい。2006/09/02(土) 10:50:13
>>871
対象に対する知識が全く無い状態で

hoge(1)ならmanみて試して見るかという気になる。
hoge(3)なら自作しなきゃならないからmanで調べる気にはならない。
というケースも想定できる。

この場合、単にhogeと書くよりかなり親切。
0899名無しさん@お腹いっぱい。2006/09/02(土) 11:02:26
>>898
だから、「hogeコマンド」と書けばもっと親切だろ。
0900名無しさん@お腹いっぱい。2006/09/02(土) 11:19:16
コマンド 8バイト
(1) 3バイト

3倍も環境に優しい。
0901名無しさん@お腹いっぱい。2006/09/02(土) 11:22:20
>>899
「hogeコマンド」では一般ユーザが実行可能なのか、特権が必要なのか調べないとわからない。
hoge(1), hoge(8)なら一目瞭然だ。
0902名無しさん@お腹いっぱい。2006/09/02(土) 11:27:24
878の提案だと、たとえばprintf()のman嫁と書いた時に
初心者であろう読み手はprintf(3)に辿り着けない可能性もあるね
man printfはprintf(1)を出しちゃうから

短いわりに必要な情報があれこれ濃縮されているのら
0903名無しさん@お腹いっぱい。2006/09/02(土) 11:38:34
>>901
すると、ping(8)、ifconfig(8)とかも一般ユーザーが実行不可能なのかい?
0904名無しさん@お腹いっぱい。2006/09/02(土) 11:39:22
考えてみれば、コマンドも関数もシステムコールも一続きってこのman(1)の形式は
いかにもUNIX環境だよね

unix-likeでもlinuxになるとこういう風土は急速に失われているように思える
0905名無しさん@お腹いっぱい。2006/09/02(土) 11:40:05
>>902
そこまでの初心者だと
$ man printf(3)
syntax error near unexpected token `('

となるだけだからどうせmanなんて読めない。
0906名無しさん@お腹いっぱい。2006/09/02(土) 11:47:52
>>903
機能が制限されてるだろ。
0907名無しさん@お腹いっぱい。2006/09/02(土) 11:52:21
>>906
それを言うなら、date(1) hostname(1)も機能制限されてるけど
(1)になってるのはどう説明するよ?
0908名無しさん@お腹いっぱい。2006/09/02(土) 12:17:34
とりあえず質問スレ以外でやってくれ
0909名無しさん@お腹いっぱい。2006/09/02(土) 12:28:04
面倒くさいな。「主たる機能を使うために特権が必要」でいいよ。
0910名無しさん@お腹いっぱい。2006/09/02(土) 12:29:42
>>909
ping(8)は主たる機能を使うためには特権は不要だよ。
0911名無しさん@お腹いっぱい。2006/09/02(土) 12:31:36
netstatって、OSやバージョンによって(1)だったり(8)だったりするなぁ。
もともと(1)と(8)の区別は曖昧だなぁ。
0912名無しさん@お腹いっぱい。2006/09/02(土) 14:07:56
>マジックナンバーをやめてラベル(名前)を付けろ
冗長になるのでマジックナンバーで符号化圧縮すれば楽じゃん。
マジックナンバーを知らない人に対する教育効果もあるし。
レス数が900を超えています。1000を超えると表示できなくなるよ。