Linux

「Linux」の編集履歴(バックアップ)一覧に戻る

Linux - (2010/02/23 (火) 12:55:56) のソース

//Unix/Linux
内容はUbuntuの場合が多い。
----
#contents()
----
*Vi関連
[[別ページ>Vi関連]]へ
//
----
*シェルスクリプト
Windowsで作成した数値データのテキストファイルを,Linuxでシェルスクリプトを使って
処理しようとしてたら,exprで数値として認識してくれず演算できなかった。
散々調べたり考えた結果,改行コードが原因っぽい。
WindowsはCR+LF,UNIX/LinuxはLF,MacはCRなので,exprではCRを数値ではないと認識してたみたい。
lessやらviで見ても違いが分からないんで厄介だった。
バイナリエディタで見るとよくわかった。
それで変換は,
 $tr -d '\r' <input_file> output_file
ちなみに,改行コードの確認は
 $od -c text_file
あと,その時初めて使ったバイナリエディタのbviがviライクでいい感じだった。
//
----
*便利そうなコマンドやコマンドの組み合わせの覚書
**ある文字列を含むコマンドがあるかどうか調べたい
 find `echo $PATH | sed s/:/" "/g` -name "*set*"
これはsetを含むコマンドを探したい場合。
パスが通っているディレクトリの中から探すので,一般ユーザだと/sbinとかの中は探してくれない。
//
**yum searchの結果からパッケージ名にキーワードが含まれている項目のみ抜き出す
 yum search bind | cut -d' ' -f1 | grep bind
//
上記の例はbindをパッケージ名に含む項目を抜き出す場合
**キーボードのキーコードを調べたい
 xev
//
**lessで現在開いているファイルを最新の情報にしたい
 R
//
**teeコマンドで標準エラー出力もファイルに書き込みたい
ただしbashの場合の話,tcshは無理だったと思う(要調査)
例えばmakeの場合
 make 2>&1 | tee make_log.txt
ちなみに画面には標準出力と標準エラー出力,ファイルには標準エラー出力のみを出力したい場合は
 make 3>&1 1>&2 2>&3 |tee make_error_log.txt 
//
**ログアウトした後もコマンドを実行し続ける
あんまり使わないから,いざ使いたいときに大抵忘れてるんでメモしておく
 nohup command [arg] &
argはcommandの引数。
//
**MACアドレス
***通信相手のMACアドレスを調べる
あらかじめ相手とpingなどで通信を行ったあと,
 arp 相手のIP
で調べられる。
***MACアドレスからネットワーク機器の製造元ベンダを調べる
MACアドレスの上位24bitはハードウェアベンダを示しており,以下のサイトで検索するとどのベンダの製品化が分かる。
&link2(IEEE OUI and Company_id Assignments,http://standards.ieee.org/regauth/oui/index.shtml,,target=blank)
//
**NICのチップセットを調べる
 lspci
dmesgから探すという手もある。
//
**拡張子だけが違う同一名のファイルを拡張子はそのままに一度にファイル名を変更したい
for i in `ls inuputfile.*`;do mv ${i} outputfile.`echo ${i} | cut -d '.' -f 2`; done
//
**lsの結果を各ファイルごとにフルパスで欲しい
どうやらlsコマンドのオプションでは提供されていないようで,findコマンドを用いて以下のようにやる。
 find /home/user/ -maxdepth 1 -mindepth 1
上記はuserのホームディレクトリ内のファイル・ディレクトリのみをフルパスで表示する。
//
----
*gnuplot関連
**線種のサンプルを表示
 gnuplot> test
//
----
*tgif関連
**jpegとかをimportできないとき
ubuntu8.04の場合だが、
 netpbm
と
 libjpeg-progs
のパッケージをインストールするとできるようになった。
libなんとかをインストールすれば,他の画像もimportできるかも(未検証)
**設定ファイル
 /etc/X11/app-defaults/Tgif
に設定が書いてある。あと,上記ファイルのTgif.IconPixmap:でアイコンが指定されており,デフォルトでは
 /usr/share/tgif/
にxpmファイルが置いてある。
//
----
*scim+anthyで漢字変換ができなくなるバグ
日本語入力システムとしてscim+anthyを使用しているときに、漢字変換ができなくなるバグについて。
**バグが発生した状況
-バグの状況
日本語を入力するために漢字変換を行おうとすると発生。半角スペースが入力され、右側に変換しようとしていたひらがなが残ったまままscimが死亡。ターミナル他sylpheedやfirefoxでも起こった。変換前のひらがなの状態で入力を確定すればバグは発生しない。Xの再起動、マシンの再起動を行ってもバグは発生した。
-日時
2008年4月22日夕方くらい
-バグが発生したマシンの環境
|OS|VineLinux4.2(VMware上)|
|インプットメソッド(IM)|scim|
|日本語入力システム|anthy|
-原因
不明。前触れなく突然起こった。
**対処方法
ホームディレクトリの
./anthy
を削除して、anthyを立ち上げなおしたら直った。ただ、原因はまだ不明。
**その他
scim+anthyで「るいヴぃとん」と入力し変換しようとすると、上記のバグが発生する。ただし、こちらは「るいヴぃとん」と入力したプロセスのみでしか起こらない。他のプロセスでは通常通り変換できる。
//
----
*64bit版Ubuntu9.04をインストールしてから使える状態にするまでの記録
**ネットワーク
***最初に
どういうわけかインストール時に作成したユーザは,ネットワークを使用できないように設定されていた。(インストール時の設定が悪かっただけかもしれないが)
以下の操作で解除する。
上パネルのシステム→システム管理→ユーザとグループ→(作成したユーザの)プロパティ→ユーザの権限→有線及び無線ネットワークに接続できるのチェックボックスにチェックを入れる
※ユーザのプロパティに変更を加えるにはロックを解除する必要がある。
***IPの設定
 /etc/network/interfaces
に設定を書く。以下サンプル。
 auto lo
 iface lo inet loopback
 
 iface eth0 inet static
 address 123.45.67.89
 netmask 255.255.255.0
 gateway 123.45.67.1
 
 auto eth0
あとは
 /etc/init.d/networking restart
で多分大丈夫。
**NFSの設定
デフォルトではnfsのクライアントは入っていないので,
 apt-get install nfs-common
で導入後,
 /etc/fstab
に必要な情報を追記しておく。
 nfsserver:/commondir       /nfsdir  nfs     rw,hard,intr     0 0
例えばこんな感じ。マシン名,ディレクトリ名は適当に。optionにnoautoを加えると自動でマウントをしないようになる。
**NISの設定
NISもNFS同様デフォルトでは入っていないので,まずインストールする。
 apt-get install nis
インストール中にNISのドメイン名を設定しなければならない。ネットワーク管理者に聞くか,すでにNISが導入されているマシンで
 nisdomainname
 または
 ypdomainname
とコマンドを打つか,Ubuntu 9.04の場合
 /etc/defaultdomain
を,CentOS 5の場合
 /etc/sysconfig/network
を見れば記述されている。
次に
 /etc/nsswitch.conf
を編集する。passwd:,group:,shadow:,services:の各項目の最後にnisを追加していく。例えば以下のようにする。
 passwd:         compat nis
//
----
*64bit版UbuntuのfirefoxでFlash Playerを動作させる
**32bit版を導入してラッパーをかませる方法
下記のページのコメント欄参照
[[http://ubuntu.livedoor.biz/archives/64539867.html]]
手順の部分を引用すると
 http://janvitus.interfree.it/ubuntu/index.html
 ここのリポジトリを追加して
 sudo apt-get install ia32-libs ia32-libs-gtk linux32 lib32asound2 nspluginwrapper gsfonts-x11
 http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash
 ここからinstall_flash_player_9_linux.tar.gzをダウンロードして解凍。
 libflashplayer.soとflashplayer.xptを/usr/lib/firefox/pluginsにコピー,
となる。
//
**64bit版(非公式?)を使用する方法
サイト[[http://labs.adobe.com/downloads/flashplayer10.html]]から
 libflashplayer-10.0.22.87.linux-x86_64.so.tar.gz
をダウンロードしてきて展開する。
 libflashplayer.so
というファイルができるので
 /usr/lib/mozilla/plugins
に置く
//
----
*64bit版UbuntuにOperaを導入する
[[http://jp.opera.com/]]
からダウンロードしようとすると,x86_64を選択しても何故かi386用のファイルがダウンロードされるので(2008年6月23日時点)
[[http://www.opera.com/]]
からダウンロードする。
//
----
*Athena Widget関連ライブラリ
 libxaw-headers
 libxaw7
 libxaw7-dev
このあたりを入れておけば大丈夫だろう。
//
----
*CentOS5でyum updateをしたときのトラブル対策
**なんかパッケージのダウンロードが異常に遅い
デフォルトで接続されるupdate serverだと膨大な時間がかかってしまうので
 yum install yum-fastestmirror
を最初にやっておいて速いサーバから落としてくるようにする。
//
**yum updateしたらpackageがconflictsしてるとか言われてerrorで止まる
2009/6/17にyum updateしたら
 Error: python-devel conflicts with python < 2.4.3-24.el5
と言われて失敗。
ググってみたところ
[[http://d.hatena.ne.jp/yokkuns/20090421/1240319175]]
で同じ現象が起きている人を発見。
上記のページによると,
 # rpm -qa python
 python-2.4.3-21.el5
 python-2.4.3-24.el5
でわかるように新旧パッケージが混在していることが原因らしい。
そこで,
 # yum remove python-2.4.3-21.el5
で古い方を削除してやる。
その上でyum updateを実行すると,今度は
 Transaction Check Error:
  file /sbin/mkinitrd from install of mkinitrd-5.1.19.6-44 conflicts with file from package mkinitrd-5.1.19.6-28
  file /sbin/new-kernel-pkg from install of mkinitrd-5.1.19.6-44 conflicts with file from package mkinitrd-5.1.19.6-28
  file /usr/share/man/man8/mkinitrd.8.gz from install of mkinitrd-5.1.19.6-44 conflicts with file from package mkinitrd-5.1.19.6-28
というerrorが発生したので,前と同じ要領でmkinitrdの古いversionをremoveする。
これでyum updateも無事完了した。
//
**yumのデータベースが壊れた?とき
 yum clean all
でデータベースを初期化できる。
//
----
*マザーボードの温度・電圧・ファン回転数を計測する
 # apt-get install lm-sensors
で関連パッケージとともにインストールする。
 # sensors-detect
でセットアップを行う。
基本的にEnter連打でOK。
マザーボードによってはセンサーが見つからないこともある。
 $ sensors
で温度などの情報を見ることができる。
//
----
*Ubuntu9.04から9.10にアップグレードしたときの記録
不具合が多いと話題の9.10だが,報告されているようなHDDが認識されないとか画面出力が全くされないとか,
そういった致命的な不具合は幸い自分の環境では発生していない。
しかし細かな不具合(と言うよりは仕様変更?)があったので記録しておく。
//
**VMwarePlayerのマウスポインタの不具合
VMwarePlayerのバージョンは2.53で,ゲストOSはWindowsXPpro。
症状は,マウスポインタが(VM中の)画面左上640*480くらいの領域でしか正常に動作しないというもの。
VMwarePlyaer3.0にアップグレードしたら治った。
原因は調べていないし,VMも2.53を再インストールするだけでも良かったかもしれない。
記録しておくほどの情報でもない気もするが一応。
//
**/etc/fstabのマウントオプションautoについて
nfsのファイルシステムを起動時にマウントするように記述していたのだが,
9.04までではマウントオプションにautoを記述していなくても起動時に自動でマウントしていた。
&del(){それが9.10(というよりはmountの仕様が変わったのかも...)からは記述が無い場合の動作がnoautoになったようである。}
2009/11/11追記
マウントオプションにautoと明記していても自動でマウントしなかった。
要調査
2009/11/25追記
&del(){本日アップデートを行ったところ,問題は解消されていた。}
2010/1/7追記
書くのが遅くなったが,12月の頭にはまた自動でマウントされなくなっていた。
2010/1/8追記
とりあえず対症療法的な対策。上のメニューバーから,
 システム->設定->自動起動するアプリ
で「自動起動するプログラム」タブで「追加」ボタンを押す。
そして,コマンドの欄に
 mount デバイス or マウントポイント
を書く。ここを見ているということは,fstabにNFSマウントの設定が書いてあるはずなので,それを前提に上記は書いている。
それと,fstabのNFSマウントの部分にuserオプションを追加しておいた。
これは未検証だが,恐らく必要なんじゃないかなぁと思っている。 
//
**Alt+Shift+Tabの挙動について
Ubuntu 9.10に限った話ではないのだが,デフォルトのUbuntuでは,Alt+Tabでwindowの切り替えはできるが,Alt+Shift+Tabで逆順に切り替えができなかった。
その設定の変更方法を調べて分かったので記録しておく。
Ubuntu 9.10の場合,
 システム->設定->キーボード->「レイアウト」タブ->「レイアウトのオプション」ボタン
と進んでいき,
 Key(s) to change layout
グループを開く。デフォルトではこの中の「Alt+Shift」のチェックボックスにチェックが入っていたのでチェックを外す。この方法でいけた。
Ubuntu 7.10の場合,レイアウトオプションの中のグループがGroup Shift/Lock behaviorで,
Alt-Shift chages groupのチェックを外すらしい。ここのページ参照->[[http://astro3.sci.hokudai.ac.jp/wiki/index.php?kat%2FComputer%2FLinux%2FUbuntu]]
ちなみに,Key(s) to change layout (Group Shift/Lock behavior)は日本語キーボートと英語キーボードのレイアウトを行き来する場合などに使うっぽい。
ここのページ参照->[[https://forums.ubuntulinux.jp/viewtopic.php?id=1139]]
//
----

- 私もVineLinux4.2を使っていて同じように日本語変換が出来なくなりました。 &br()原因不明ですが、頻発するのが気持ち悪いので別のLinuxを試そうか悩んでいます。  -- とおりすがり。  (2008-08-03 21:51:42)
#comment(,vsize=5)

&link_edit(text=このページを編集)
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。