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

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

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2009/04/14(火) 06:10:49
FreeBSD 関連の質問はここで。
事前にハンドブック閲覧や過去ログ検索等の自助努力をすることが望ましい。
再現性情報(ハードウェア・ソフトウェア・エラーメッセージ)の記載は必須。

The FreeBSD Project
http://www.freebsd.org/ja/

FreeBSD ハンドブック
http://www.freebsd.org/doc/ja/books/handbook/

過去ログ
http://www9.atwiki.jp/freebsd/

前スレ
初心者もOK! FreeBSD質問スレッド その100
http://pc12.2ch.net/test/read.cgi/unix/1233411347/
0534名無しさん@お腹いっぱい。2009/05/11(月) 10:24:36
>>529
autoexec.batのようにstartxを実行するには、
FreeBSDでは、以下のコマンドを実行します。

chsh -s /usr/local/bin/startx

次回ログイン時から有効になります。
0535名無しさん@お腹いっぱい。2009/05/11(月) 10:42:27
一瞬「ああ、こんな方法が…」とか思っちゃったじゃないか
0536名無しさん@お腹いっぱい。2009/05/11(月) 10:51:03
おい おい 
0537名無しさん@お腹いっぱい。2009/05/11(月) 11:22:58
>>529
/etc/rc.localファイルにstartxを記述する」かなあ?
いつまで有効かどうかわからないけどね。
0538名無しさん@お腹いっぱい。2009/05/11(月) 12:12:07
UTF-8 だと ncurses による画面が崩れるのですがどうにかならんもんですかい?
0539名無しさん@お腹いっぱい。2009/05/11(月) 12:16:30
どのソフトのどこがどう崩れるんだい?
0540名無しさん@お腹いっぱい。2009/05/11(月) 12:32:10
>>539
知らない人には聞いていません。
0541名無しさん@お腹いっぱい。2009/05/11(月) 13:08:38
>>538
ソース見ろ
0542名無しさん@お腹いっぱい。2009/05/11(月) 13:22:21
>>541 が質問の意味を理解せずに答えていることはわかった
0543名無しさん@お腹いっぱい。2009/05/11(月) 13:26:15
UTF-8 環境で PORTSDIR 以下で make config できる ports で make config する
じゃないか。
そうすると半角一文字分だった横線が複数文字表示されてしまうじゃないか。
すると画面レイアウトが見事にくずれた config 画面が表示されちゃうじゃないか。
人間よ、もうよせこんなことは。
0544名無しさん@お腹いっぱい。2009/05/11(月) 13:31:34
ja_JP.UTF-8で生活してるけどmake configでくずれないよ
崩れるportsを知りたい
0545名無しさん@お腹いっぱい。2009/05/11(月) 13:45:12
screen中は崩れるけどscreenなしなら崩れない
0546名無しさん@お腹いっぱい。2009/05/11(月) 13:51:02
あ、本当だ。崩れるのは screen でのみでした。
0547名無しさん@お腹いっぱい。2009/05/11(月) 13:59:37
で、screen + UTF-8 環境では ncurses はどうにかならんのか !
すみません、ならんでしょうか。
0548名無しさん@お腹いっぱい。2009/05/11(月) 14:49:24
screen -Uとかいうオチか?
0549名無しさん@お腹いっぱい。2009/05/11(月) 14:51:56
>>547よ、もうよせこんなことは。
0550名無しさん@お腹いっぱい。2009/05/11(月) 14:54:10
>>548
それはまっさきに試したのですが、それではダメなんですよねー……
0551名無しさん@お腹いっぱい。2009/05/11(月) 14:57:15
要するに ja_JP.eucJP最強ってことですね
0552名無しさん@お腹いっぱい。2009/05/11(月) 15:30:49
UTF-8 化すると、デフォルトでは問題がいろいろ現れる。
その問題は対処できる問題もあれば対処できなさそうな問題もある。
これはやっぱり実運用上での短所だと思うんだけど、
逆に明確な長所って何だろう。
0553名無しさん@お腹いっぱい。2009/05/11(月) 15:56:52
じつは私もUTF-8のターミナルでテキストエディタをつくろうと
しましたが断念しました。
0554名無しさん@お腹いっぱい。2009/05/11(月) 18:12:17
env LANG=C make configじゃ困るのか?
0555名無しさん@お腹いっぱい。2009/05/11(月) 19:24:13
まあ結局不具合出たらLANG=C指定、というのがUTF-8環境なんでしょうね。
0556名無しさん@お腹いっぱい。2009/05/11(月) 21:14:41
たしか前スレでportupgrade -aは時間がかかるのに簡単に決断できる人はすごいよ
と言う話題で、portupgrade hogeでおkと言っている人がいた気がするのですが
思い出せず。たしか、portupgrade -aの時にオプション設定がいつ出るのか
待たなくても先に済ませておけるような便利なオプションが有った気がします。
manを読んでもそれらしき物が見当たらない気がするのですが、もし過去ログを読める方
もしくはご存知のかたいらっしゃればご教授願います。
0557名無しさん@お腹いっぱい。2009/05/11(月) 21:27:44
BATCH=yes
0558名無しさん@お腹いっぱい。2009/05/11(月) 22:08:50
ath_halって消えちゃったの?
0559名無しさん@お腹いっぱい。2009/05/11(月) 22:34:03
if_athに統合されたんじゃないの?
0560名無しさん@お腹いっぱい。2009/05/11(月) 23:07:35
>>442
>> >>440 確か最新版をいつもビルドしているサイトがあったけれど

そのサイトが最近更新されないのよ。2009年2月から更新がない。

>> OOoとかなにがいいのかわからん。

俺は Impress を授業に使ってる。板書しなくて楽チン
0561名無しさん@お腹いっぱい。2009/05/12(火) 00:02:35
rootのパスワードを忘れてしまったのですが、どうしたらいいでしょうか・・・
0562名無しさん@お腹いっぱい。2009/05/12(火) 00:03:28
再インストール
0563名無しさん@お腹いっぱい。2009/05/12(火) 00:04:35
うわぁぁぁん
0564名無しさん@お腹いっぱい。2009/05/12(火) 00:07:16
1 live CDで立ち上げてルートをマウントしてパスワードクリア
2 当たるまで思いつくパスワードを試す
3 再インストール
好きなのをどうぞ。
0565名無しさん@お腹いっぱい。2009/05/12(火) 00:08:10
おまえら非道すぎる
0566名無しさん@お腹いっぱい。2009/05/12(火) 00:12:50
>>561
シングルユーザモードでググレカス
0567名無しさん@お腹いっぱい。2009/05/12(火) 00:42:26
>>565
え、 >>564 が一番の親切さんなんじゃないの?
0568名無しさん@お腹いっぱい。2009/05/12(火) 01:24:21
無事パスワードを変えることができました。
本当にありがとうございます。
0569名無しさん@お腹いっぱい。2009/05/12(火) 02:09:16
過去の世界からうっかりタイムスリップして来た者です。

#include <stdio.h>

typedef struct {
unsigned long A ;
unsigned short B ;
} HOGE_t ;

main(void){
HOGE_t hoge ;
printf("%d\n", sizeof(hoge) );
}

この実行結果が6ではなく8な理由は、32bitコンパイラだからですよね?
6バイトの構造体を作りたい私は何をしたら良いですか?
(あ、/usr/bin/ccです。ターゲットはx86です。)
0570名無しさん@お腹いっぱい。2009/05/12(火) 02:48:56
>>569
思いっきりスレ違い

#pack(1)
0571名無しさん@お腹いっぱい。2009/05/12(火) 03:27:44
typedef struct {
unsigned short B ;
unsigned short C ;
unsigned short D ;
} HOGE_t ;
05725692009/05/12(火) 03:32:04
出来ますた。スレ違いかたじけない。
0573名無しさん@お腹いっぱい。2009/05/12(火) 06:46:40
単に6バイトサイズの型を定義したいだけなら、

typedef struct { char A[6]; } HOGE_t;

の方がエレガント。
[6]のところを変えれば何バイトにでもできる。
0574名無しさん@お腹いっぱい。2009/05/12(火) 06:58:28
エレガント???質問に答えるなら。

typedef struct HOGE {


unsigned long A ;
unsigned short B ;
} __attribute__ ((packed)) HOGE_t;

で、良いじゃないか。
0575名無しさん@お腹いっぱい。2009/05/12(火) 07:17:56
>>574
そんなgcc依存コードを出されてもな。タイプ量も多いし。
0576名無しさん@お腹いっぱい。2009/05/12(火) 07:21:23
>>574
質問(目的)は、>>569 が言うように、

「6バイトの構造体を作りたい」
であって、

「long+shortを6バイトに収めたい」ではない、
という点に注目すること。
0577名無しさん@お腹いっぱい。2009/05/12(火) 07:27:21
>>574
shortが2バイトとは限らないし、
longが4バイトとも限らない。
どちらも処理系依存。

処理系によらずバイト数が規定されているのは char が 1バイトということのみ。
よって、"6バイトサイズ" ということを固定したいなら、
方法は >>573 の方法1択になる。
0578名無しさん@お腹いっぱい。2009/05/12(火) 07:40:00
>>577
>(あ、/usr/bin/ccです。ターゲットはx86です。)

ここ読んでないだけジャンw
0579名無しさん@お腹いっぱい。2009/05/12(火) 07:42:53
>>575-577
ちゃんと嫁
0580名無しさん@お腹いっぱい。2009/05/12(火) 07:45:20
>>578
/usr/bin/ccで ターゲットはx86 としても、
shortが2バイトともlongが4バイトとも正式には規定されていない。

書いたコードが将来的にも 6バイトであり続けることを保証するには、>>573
0581名無しさん@お腹いっぱい。2009/05/12(火) 07:51:34
>>578
sizeof 演算子って何のためにあるか知ってる?

/usr/bin/cc + x86 の環境ということがわかっていても、
例えば shortのサイズが2であるという前提でコーディングしちゃいけないんだよ。
アドレス計算の時、addr + 2 とかやっちゃダメ。
ちゃんと addr + sizeof (short) ってやらなきゃ。
0582名無しさん@お腹いっぱい。2009/05/12(火) 08:31:19
>>580,581
何か深読みしすぎというか、自分で解釈しすぎのような気もするが

32bit、x86上なら>>570で充分
0583名無しさん@お腹いっぱい。2009/05/12(火) 08:38:10
せめて、
unsigned short B; じゃなくて、

uint16_t B;
と書くべきだ。(要 #include <sys/types.h>)
0584名無しさん@お腹いっぱい。2009/05/12(火) 08:45:35
ま、どっちにしてもアライメントで死ぬんだろうな。
0585名無しさん@お腹いっぱい。2009/05/12(火) 08:50:08
x86でアラインメントで死ぬようなCPUってあったっけ?
0586名無しさん@お腹いっぱい。2009/05/12(火) 09:14:21
linux_baseはfc4から何になるんだ?
f8が有力なのかな
0587名無しさん@お腹いっぱい。2009/05/12(火) 16:18:55
初心者です。教えてください。

fedora10が入っているマシンに
freeBSDをインストールしようとしていますが、
Standard Installを選択したところ、NO disks found!と
出て先へ進めません。
これは、HDDの空き容量がないため、Windowsで起動FDを
作成し、FDISKでHDDフォーマットしないといけないのでしょうか?

BSDインストールCDは本についてきたものです。
BSDの場合、CDにディスクフォーマットユーティリティが
ついていないのでしょうか?

すみませんがご教授願います。
0588名無しさん@お腹いっぱい。2009/05/12(火) 16:21:17
ちなみにfedoraはもう使用しませんので、そこにHDD容量全部を使用して、BSDを上書きしたく
思っています。
0589名無しさん@お腹いっぱい。2009/05/12(火) 16:24:35
その本はどんな本ですか
0590名無しさん@お腹いっぱい。2009/05/12(火) 16:25:36
あたらしいインストールディスクを使いましょう
0591名無しさん@お腹いっぱい。2009/05/12(火) 16:38:48
>>587
>NO disks found!

一酸化窒素円盤たちは見つけました!

っていう意味だよ。
0592名無しさん@お腹いっぱい。2009/05/12(火) 16:41:15
>>587
エスパーすると、
Fedora10ではドライバーが対応していて、
FreeBSDでは対応していないような SATAあたりのディスクだったんだろ。

disk自体が見つかっていないので、fdiskとかフォーマットとかは無関係だし
やっても無駄。

FreeBSDではSATAは鬼門。
05935882009/05/12(火) 16:42:03
>>589
毎日コミュニケーションズの「FreeBSD ビギナーズバイブル」
という、オレンジ色の分厚い本です。2005年に出版されています。
会社にあったものです。
05945882009/05/12(火) 16:45:34
その本に付属のCDに収録されているBSDのバージョンは5.4です。
古いのが原因でしょうか?
0595名無しさん@お腹いっぱい。2009/05/12(火) 16:50:23
はい
0596名無しさん@お腹いっぱい。2009/05/12(火) 17:04:09
FreeBSDではSATAは鬼門なのか?まだ外れ引いたことがなかったから
知らなかったよ。

>>588
7.2のisoファイル落としてCDに焼いてインストールしてみようぜ。
0597名無しさん@お腹いっぱい。2009/05/12(火) 17:27:49
日立の欠陥HDDをOS側でケツ拭いてやっただけだろ
0598名無しさん@お腹いっぱい。2009/05/12(火) 17:50:14
>>596
> FreeBSDではSATAは鬼門なのか?

俺のノート SATA だったからちょっと不安だったけど無
問題だったよ。

ICH8 SATA コントローラで ATA モードと AHCI モード
があって、後者は無印 XP ではインストール出来ない位
新しいんだけど FreeBSD ではうまく動いた。当時 7.0R
だったと思う。
0599名無しさん@お腹いっぱい。2009/05/12(火) 17:50:50
quad coreにしたので
/etc/make.conf で
MAKEOPTS="-j4"
ってやっても、あんまり変化がないのはなぜ?
0600名無しさん@お腹いっぱい。2009/05/12(火) 18:25:47
makeを実行しなきゃ何にもならないよ
0601名無しさん@お腹いっぱい。2009/05/12(火) 18:31:12
その本ボクも持っているが幾らなんでも今時5.4は古すぎる。
0602名無しさん@お腹いっぱい。2009/05/12(火) 18:31:34
portupgrade -a
ってやって
ぼけーっと、topで使用率みてるんですけど、-j4を指定してなかった時と変化がないのねん
0603名無しさん@お腹いっぱい。2009/05/12(火) 18:57:17
/etc/make.confって/usr/bin/makeだけにしか効果ないんじゃないの?
私はよく知らないんですが。。。
0604名無しさん@お腹いっぱい。2009/05/12(火) 19:39:27
MAKEOPTSじゃなくてMAKEFLAGSじゃね?
あと、portsに関しては、並列化は無理やりさせない方がいい。
portsの一部の確認されたやつは自動で並列になるようになってる。
0605名無しさん@お腹いっぱい。2009/05/12(火) 19:46:50
>>599
自動でコア数分並列化させるから、何も変わらないのは当然。
0606名無しさん@お腹いっぱい。2009/05/12(火) 19:55:01
なるほど、じゃ、特にmakeに指定する事はないんですね。サンクス。

とりあえず、CPUTYPE=core2 だけ指定する事にしますた。
0607名無しさん@お腹いっぱい。2009/05/12(火) 20:30:52
startxのログを見てみた所
(EE) config/hal: couldn't initialise context: (null) ((null))
というエラーが出ています。
このエラーはどのように治せますでしょうか?
よろしくおねがいします。
0608名無しさん@お腹いっぱい。2009/05/12(火) 20:47:05
自決しました。
再起動したら直りました。
0609名無しさん@お腹いっぱい。2009/05/12(火) 20:48:53
とりあえず、一度辞書で「自決」の意味を調べてから出直せ
0610名無しさん@お腹いっぱい。2009/05/12(火) 20:50:49
事故解決しました
0611名無しさん@お腹いっぱい。2009/05/12(火) 20:57:44
自炊しました
0612名無しさん@お腹いっぱい。2009/05/12(火) 21:06:09
わざとです。
0613名無しさん@お腹いっぱい。2009/05/12(火) 21:39:39
自白しました
0614名無しさん@お腹いっぱい。2009/05/12(火) 21:43:49
罪を償ってください
0615名無しさん@お腹いっぱい。2009/05/12(火) 21:53:02
自傷しました
0616名無しさん@お腹いっぱい。2009/05/12(火) 21:53:29
ここまで自慰無し
0617名無しさん@お腹いっぱい。2009/05/12(火) 21:53:47
射したけど挿れてません
0618名無しさん@お腹いっぱい。2009/05/12(火) 22:10:12
ツッコミがつまらんとスレが腐る
06195692009/05/12(火) 22:10:26
>>569です。
目的は、古いファイルフォーマットとコードの再利用だったので、
「longとshortで6バイトにしたい。処理系依存は気にしない」
でした。
なんかいっぱい有難いです。ここ来て正解?
0620名無しさん@お腹いっぱい。2009/05/12(火) 22:14:14
ファイルが6バイトなのですね
0621名無しさん@お腹いっぱい。2009/05/13(水) 01:07:48
portsをビルドするときはmake.confにFORCE_MAKE_JOBS=trueが最強w
MAKE_JOBS_NUMBER=10とかもセットで付けて論理CPU数からはみ出すくらい
無理させるに限るww
0622名無しさん@お腹いっぱい。2009/05/13(水) 01:25:28
ビルドエラーで停止するportsが多数出現するかと
0623名無しさん@お腹いっぱい。2009/05/13(水) 01:33:39
env MAKEFLAGS=-j16 make
0624名無しさん@お腹いっぱい。2009/05/13(水) 09:48:10
>>596
> FreeBSDではSATAは鬼門なのか?

http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&lc=1&cmd=&man=ata&dir=jpman-7.2.2%2Fman§=0

> 現在サポートしている ATA/SATA コントローラチップは次の通りです:

に一覧が出ている。それと、SATA-RAID については以下
を参照するといいだろう。

http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&lc=1&cmd=k&man=sata+raid&dir=jpman-7.2.2%2Fman§=0
0625名無しさん@お腹いっぱい。2009/05/13(水) 09:51:32
>>624
あら…リンク出来てないね。

http://www.jp.freebsd.org/man-jp/search.html

から

日本語マニュアル RELEASE : 7.2-RELEASE-K

を選んでおいて、上の方は

検索コマンド:man
コマンド/キーワード:ata

下の方は

検索コマンド:apropos
コマンド/キーワード:sata raid

だ。
0626名無しさん@お腹いっぱい。2009/05/13(水) 09:53:32
一覧出されても、どこ見れば鬼門なのかと
0627名無しさん@お腹いっぱい。2009/05/13(水) 10:07:20
お・・鬼門?
0628名無しさん@お腹いっぱい。2009/05/13(水) 10:16:47
う淫ドーズとかいうゲイツのウンコが売れないマイクソソフトの工作員だろ
0629sage2009/05/13(水) 10:46:21
SATA-RAIDに関して言えば、BIOSメニューに入ることなくARRAYの監視・メンテが出来ないなんて
使い物にならない。糞。

FREE-BSD上でARRAYのメンテが出来るSATA-RAIDカードなんて殆ど存在しない時点で、鬼門と言わ
れても仕方ない。
0630名無しさん@お腹いっぱい。2009/05/13(水) 11:12:55
>>619 半世紀前のミニコンならいざしれず6byteがlong型だったなんて歴史はないはず
現実問題として内部では2のべき乗になるのだから
念のためにいっておくと32bit環境だと long 4byte long long 8byteなので
32bitだから8byteということはない。

typeで宣言して整数型風味にキャスト(明示的・ないしはコンパイラまかせで)するのが筋でOSの問題ではない
プログラム関連で質問すべきだ。

6byteの整数型と称するものはむしろcurrencyとかいわれていたもので
fpuを使ったコードに展開されるはずで
longとかshortではなくてdoubleに変換して演算されると思う。

つまり6byteの long6 型を自分で作ってマクロでdoubleからの入出力(切り捨てつくる)を作る。
既存のマクロも探せばあるはず。
あと任意の長さで演算したいならば多倍長演算ライブラリ(gmp)使う方がつぶしがきくです。
0631名無しさん@お腹いっぱい。2009/05/13(水) 11:22:19
>>630
既に解決した質問に、わざわざしゃしゃりでて見当違いのレスを付けるバカの見本。
0632名無しさん@お腹いっぱい。2009/05/13(水) 12:34:19
FreeBSD7.1R(64bit)からFreeBSD7.2R(64bit)へのUPDATEに関して
本家のFreeBSD7.2リリースサイトに載っている

freebsd-update upgrade -r 7.2-RELEASE・・・

で、実行しました。

この時、独自カーネルを使用していた為、再起動を行っても、
Kernelは7.2に更新されなかったため、
最終的には、make buildkernelを実行し、7.2Rに更新を行いました。

7.2Rで sysctl -a のコマンドを実行した時に、頭に<118>が付く
内容が大量に表示されるようになりました。

この<118>が付いている内容は起動時のKERNELの内容を表しているようなのですが、


sysctl実行内容の一部抜粋:
<118>swapon: adding /dev/da2s1b as swap device
<118>Starting file system checks:
<118>/dev/da2s1a: FILE SYSTEM CLEAN; SKIPPING CHECKS

今まで、sysctl -a を実行してもこのような内容が表示されたことが、
ありませんでした。

Kernelの一部が壊れているのでしょうか?又は正常なのでしょうか?
識者の方、よろしくお願いいたします。
0633名無しさん@お腹いっぱい。2009/05/13(水) 12:41:05
↓これか?
# sysctl -d kern.msgbuf
kern.msgbuf: Contents of kernel message buffer
0634名無しさん@お腹いっぱい。2009/05/13(水) 13:37:44
>>630といい
この話ってプログラム板のC/C++のスレでやる話でないの?
■ このスレッドは過去ログ倉庫に格納されています