メーリングリストやネットニュースなどで質問を気持ち良く答えてもらうために, 知っておいて欲しいことを紹介します.
注意: このサイトの管理者である webmaster@linux.or.jp には, このサイトのコンテンツに関係ない質問は送らないで下さい. 質問を送られても返答はしません(できません).
Linux の文化はボランティアによる相互援助によって支えられています. 様々なメーリングリストやネットニュースで 幅広い議論が活発に行なわれており, その多くでは初学者の質問も受け付けています. 現在ハッカー(= コンピュータを自在に扱う人のこと. 犯罪者ではありません)と呼ばれているような人たちも, やはり先輩に教えてもらいながら育ってきたのです.
「昨日の タコ は,今日のハッカー」
このような相互援助は Linux 文化の特徴の一つですので, 質問には気持ちよく答えて下さる方が多いはずです. 分からないことがあったら恥ずかしがらずにどんどん聞いてみましょう.
「でも, どのように質問したらいいんだろう?」
そうですね. 質問する側からも回答を寄せやすいような
質問の仕方を心がけたいものですよね.
では次の例を対象にして考えてみましょう.
先に断っておきますがこれは悪い例です.
Subject: 助けて!!! はじめまして,Linux初心者です.タコなので何も分かりません. X−Windowsがうごきません.この前,某雑誌の付録CD−ROMで,Linuxをインストールして, X−Windowsをうごかそうと,いろいろやってから,startxをしたんですけど,フォントが ないって怒られてだめでした. タコなので,分かりやすく教えて下さい.
絶対に必要なのは, 質問に答えてくれる人に あなたの問題に関する十分な情報を提供するということです.
Subject だけで質問の中身が分かるようにしましょう. 「助けて」,「はじめまして」,「質問」といったものではいけません. この例なら, たとえば「X doesn't work」, 「X が動きません」,「X のフォントについて」などとする方がよいでしょう.
「某雑誌」っていうのはどこの雑誌なんでしょうか? はっきりしているのでしたらきちんとした書名を書きましょう. もしかするとその雑誌の付録に特有の原因かも知れません. 加えて, カーネルやソフトウェアのバージョン, ディストリビューション名, ハードウェア構成なども書いておくとよいでしょう.
「いろいろやって」と言われても その人以外には何をどうやったかというのは分かりません. その状態を他の人でも再現できるように, 何をしてきたかの過程を具体的に書きましょう. また, 関係のありそうな設定ファイルを添付するのも 解決の糸口になることがよくあります.
前項とも関連しますが「うまく動きません」や 「○○できません」といったフレーズは, 実は, 情報量が限りなく 0 に近いものなのです. 問題の本質は「どのようにうまく動かないのか」というところにありますし, もう少し言うなら「どのように動かそうとして, どのような結果になったのか. そしてその結果は(あなたにとって)どうまずいのか」を 明確にしたいところです. その重要なカギとなり得るもののうちの一つが 次項の「エラーメッセージ」です.
恐らくエラーメッセージを自分なりに解釈して, 「フォントがないって怒られた」と書いているのでしょうが, これではメッセージに本来含まれている重要な情報が伝わりません. 下手に意訳した日本語や,部分的に抜粋したものよりも, 分からなかった場合はエラーメッセージ全文をコピーしてしまいましょう. 多少長くなっても問題ありません. (ただし長大なログファイルをいきなり送りつけてはいけません). それに,自分の思わぬところが原因であるかもしれません.
Linux のコミュニティに対して別の OS に関する質問や, まったく関係ないアプリケーションの質問, 茶碗蒸しの作り方を質問するのはマナー違反です. また高度な質問をする場合には, 専用のメーリングリストやネットニュースに投稿した方が 答えてもらえる可能性は一般に高くなります.
質問をする上で知っておいて欲しいことや, 強制ではありませんが考慮してもらいたいことです.
インターネット上にもあなたの Linux の中にも,
解決の糸口や解決法そのものがひそんでいるかも知れません.
まずは
--help
オプション,
man
コマンド,
JF ドキュメント,
FAQ 集,
メーリングリストの過去メール,
Web ページの検索
などで調べてみましょう.
大勢の方に質問をするのですから, 名前ぐらいの簡単な自己紹介はした方がいいでしょう. また自分の技量を示せば, レベルに合った適切な回答をよせてもらいやすいかもしれません.
「Linux」ではなく「Linux」のように
英数字には ASCII 文字(いわゆる半角英数字)を使用する方が
好まれているようです.
これはあくまで多くの方がこうしているというだけで,
強制されているわけではありません.
しかし「startx」のようなコマンドは存在せず,
実際には startx
なのですから
表記上もそのようにするのがよいといえます.
これも強要されるものではありませんが, 一行は ASCII 文字で 70 字程度(いわゆる全角文字で 35 字程度)で改行を入れて折り返した方がいいでしょう. これは比較的多くの人々が一行 80 文字という環境で (あるいはそうした環境を作って)生活しているからです.
「タコなので何も分からない」のではありません, 「今は何も分からないがこれから何かを学ぼうとしている人」が 「タコ」なのです. タコであるというのは恥ずべきことではありませんが, そうかといって自ら威張って公言するものでもありません. ましてやマナーなどを守れないことへの 免罪符にはなり得ません. これは「初心者です」という宣言についても同様です. 早くタコから卒業しましょう.
質問に対する回答はあくまでもボランティアでの相互援助です. 質問者に答えなければいけない義務は誰にもないのです. 教えてもらえて当たり前という態度は, 当然, 歓迎されません. また「回答がわかりにくい」と文句を付ける人がときどきいますが, これも勘違いをしている典型的な例といえるでしょう.
質問に対して回答して下さった方に対しては, 返事を書くのが礼儀として当然のことです. それはたとえ解決できなかったとしてもです. 返事を書く際に心に止めてもらいたいことをまとめました.
寄せられた回答に基づいた結果, どのように解決できたのか, あるいはできなかったのかをまとめましょう. このまとめられたものを「サマリー」といいます. このサマリーがあれば, 同じ問題を抱えている人への手助けになるのです.
ある投稿に対する返事をする時に, その投稿の全文を引用するのはやめましょう. どの文に対しての返事なのかがはっきりしないため, 全く引用をしていない返答とあまり大差がありません. これは回答に対してに限らず, すべての返答ついて同じことがいえます.
あなたが質問をしたことによって解決した問題を, 他の誰かが質問してきたら, 是非, 回答をしてあげて下さい. その問題の解決法はもう知っていますし, つまずきやすい点や分かりにくいところなども経験済みです. つまり, あなたが一番分かりやすく教えられるのです.
ざっと注意して欲しい点をいくつかあげてみましたが, 難しかったでしょうか?最初から全部を完璧にできなくても構いません. でも, 完璧にしようとする努力は惜しまないで下さい. きっといつの日か, あなたも立派な質問の達人になれるはずです. (そのころには, 逆に質問に答えることもできるようになっていると思います. )
"Ctrl-s" で画面表示を一時停止できます. 再開するには "Ctrl-q" です. 端末によっては "Shift-PageUp/PageDown" で ある程度画面をさかのぼることもできます.
dmesg
というコマンドで起動メッセージをもう一度表示することができます.
"dmesg | less
"
のようにすればゆっくり参照できます.
リダイレクトと呼ばれるシェルの機能を利用します.
"コマンド >& 保存ファイル名
"
具体的にはこうです. "ls >& logfile"
こうするとコマンド ls
の実行結果は,
画面に表示されずにファイル logfile
に保存されます.
標準出力や標準エラー出力のどちらかだけを選択して ファイルに保存することも可能ですが, これは使用しているシェルによって書き方が違います.
標準出力のみを保存したい場合
">&
" の変わりに
">
" または
"1>
" を使います.
具体的には "ls > logfile" のようになります.
標準エラー出力には "2>
" を使います.
また ">&
" は,
標準出力と標準エラー出力両方のリダイレクトとなります.
bash
の場合は "&>
"
も同じ意味になります.
標準出力のみを保存したい場合には
">&
" の代わりに
">
" を使います.
標準エラー出力のみを保存するのはちょっと難しいので割愛します.
リダイレクトには他にも多くの使い方があります.
複数のコマンドの出力結果や
シェルのプロンプトを含む実行結果を保存したい場合には
script
コマンドが有効です.
まず一連のコマンドを実行しようとする前に
script ~/hogehogeと入力します.
その後で質問しようとしているコマンドを実行します.
全部実行し終えたら exit
と入力しましょう.
ホームディレクトリに hogehoge
という記録ファイルができているはずです.