Linux Tips
ここは244がlinux関連のメモを残しておく場所です。
ここに書かれた内容を参考にするのは一考に構いませんが、間違っている可能性もあります。
万が一何かが起きてしまっても責任は取れませんので御注意ください。
Vine Linux 4.0/4.1
Application
色々
-
Vine Linux 3.2
Linux全般
外部リンク
Vine4.0インストールの補足
update
# apt-get update # apt-get upgrade
開発環境main(devel)のインストール
Vine3系でお決まりの以下のコマンドがエラーで実行できなかった。表示だけされたインストール候補を1列ずつインストールしたらインストール自体は問題なくできた。
# apt-get script install-devel.lua パッケージリストを読みこんでいます... 完了 依存情報ツリーを作成しています... 完了 以下のパッケージが新たにインストールされます: GConf GConf2-devel ImageMagick-devel ORBit ..... アップグレード: 0 個, 新規インストール: 169 個, 削除: 0 個, 保留: 0 個 E: 問題を解決することができません。こわれたパッケージがあるようです。 E: 問題を解決することができません。こわれたパッケージがあるようです。 E: 問題を解決することができません。こわれたパッケージがあるようです。 E: 問題を解決することができません。こわれたパッケージがあるようです。
apt lineの修正
/etc/apt/source.list の apt-line を NAIST に変更し extras を追加.
#rpm [vine] http://updates.vinelinux.org/apt 4.1/$(ARCH) main plus updates nonfree #rpm-src [vine] http://updates.vinelinux.org/apt 4.1/$(ARCH) main plus updates nonfree rpm [vine] http://ftp.nara.wide.ad.jp/pub/Linux/Vine/apt/ 4.1/$(ARCH) main plus updates nonfree extras rpm-src [vine] http://ftp.nara.wide.ad.jp/pub/Linux/Vine/apt/ 4.1/$(ARCH) main plus updates nonfree extras
追加アプリ(個人的)
gcc295 gdb ddd glade glade2 glut glut-devel samba gnuplot vnc vnc-server ncftp gv subversion
# apt-get install gcc295 など
firefoxで文字変換ができなくなる
firefox + flash + scim-anthy の環境でおきるらしい。flashなどをfirefoxで再生した後に日本語変換をしようとすると「文字が消えてスペースが入力される」「入力途中に勝手に文字が消える」「たまにうまくいく」などが起きる。原因としてはscim-bridgeが開発された経緯が関係してそうです。
以下の方法で解決する。
scim-bridge,scim-bridge-gtkのインストール
$ su # apt-get update # apt-get install scim-bridge scim-bridge-gtk
次に解決方法1または2を好みに応じて行う.
解決方法1(IMの変更)
一度設定しまえばfirefoxのアップデートがあっても特に修正不要だが、IMそのものを変更する必要がある。scim-bridgeが安定してくれば最善策か?
/usr/share/vine/imelibを書き換える。
GTK_IM_MODULE=scim ↓ GTK_IM_MODULE=scim-bridge
修正後、以下を実行してログインし直す。
$ setime scim
解決方法2(firefox起動スクリプト編集)
firefoxのアップデートがあると、その度に実行する必要あり。
起動スクリプト(/usr/bin/firefoxなど)の先頭付近に以下を追記しfirefoxを再起動。
export GTK_IM_MODULE=scim-bridge
起動スクリプトの場所は which firefox などで調べる。
WindowManagerにXfceを使う
Xfceのインストール
$ su # apt-get update && apt-get install task-xfce
Xを落として
$ setwm xfce
Xを立ち上げる.
追加インストール
システム負荷モニター, バッテリーモニター
xfce4-systemload-plugin xfce4-battery-plugin
自動起動
~/Desktop/Autostart/ 以下に実行ファイルや実行ファイルへのリンクを追加する.
ターミナルの文字化け解消(xfterm4)
/usr/bin/xfterm4 の TERMCMD=xterm を kterm または gnome-terminal に変更.
emacsの起動が遅い
~/.emacs-faces.el の (set-face-background 'menu "grey94") の行をコメントアウト
参考:XFce におけるemacs の使用について
VineのFTPサーバにないプラグインのインストール
Xfce Goodies Projectから欲しいプラグインをダウンロード,インストール(configure;make;make install)する.
/usr/local/share/xfce4/panel-plugins/以下のプラグインファイルから/usr/share/xfce4/panel-plugins/以下にシンボリックリンクを張る。
# ln -s /usr/local/share/xfce4/panel-plugins/plugin_name.desktop /usr/share/xfce4/panel-plugins/plugin_name.desktop
apt-get upgradeでkernelをアップグレードしない
/etc/apt/apt.conf.d/allow-duplicated-upgrade.confのkernel関係の行を//でコメントアウトする。
RPM::Allow-Duplicated-Upgrade:: "kernel.*"; ↓ //RPM::Allow-Duplicated-Upgrade:: "kernel.*";
lsusbコマンドを使用する
rpmfindからusbutilsのsrpmをダウンロード。追記:apt extrasにusbutilsを発見.
usbutils-0.71-2.1.src.html Linux USB utilities. Fedora Development Sources usbutils-0.71-2.1.src.rpm
今回はこれを使用した。
$ rpmbuild --rebuild usbutils-0.71-2.1.src.rpm $ cd ~/rpm/RPMS/i386/ $ su # rpm -Uvh usbutils-0.71-2.1.i386.rpm
実行は
$ /sbin/lsusb
VAIO VGN-SZ70Bのカメラを使う
kernel付属のVAIOカメラ用ドライバmeyeとsonypiの組み合わせでは2007/08/08現在、動かない。
デバイスの確認
usbutilsをインストール。lsusbコマンドが使用可能になり、lsusbからデバイスIDを確認可能。
$ lsusb |grep Ricoh Bus 005 Device 004: ID 05ca:1830 Ricoh Co., Ltd
05ca:1830で検索したらドライバを開発してる人を発見。
ドライバーのインストール
kernel-2.6.17以上じゃないと動かないらしい。2007/08/09現在Vineのrpm版kernelは2.6.16までしかないのでkernel.orgからkernelソースをダウンロードしコンパイル、インストールする必要がある。2.6.18で動作を確認。
起動しているカーネルソースを/usr/src/kernels/以下に置いておくこと。 Ricoh R5U870 Webcam Driver for Linuxからr5u870-0.10.0.tgzをダウンロード。
$ tar xvfz r5u870-0.10.0.tgz $ cd r5u870-0.10.0 $ make $ su # make install # /sbin/modprobe r5u870 # /sbin/lsmod |grep r5u870 r5u870 64452 0 video_buf 28164 1 r5u870 videodev 27648 1 r5u870 v4l1_compat 17156 2 r5u870,videodev v4l2_common 25344 2 r5u870,videodev
カメラテスト
$ xawtv
映像が映れば完了。
/etc/modprobe.conf に以下の行を追加しておくとモジュールのロードが起動時に行われる。
# webcam of vaio alias char-major-81 videodev alias char-major-81-0 r5u870
ちなみにキャプチャプログラムを書くにはVideo4Linux2を使用する.
USB Video Class (UVC) を使う
uvcドライバを使用すると,USBビデオクラスに準拠したUSBカメラは個別にドライバをインストールする必要がなく利用可能になる.
Vine純正kernelの場合
$ su # apt-get update # apt-get install kernel-module-linux-uvc
Vine純正kernelではない場合
Linux UVC driver and toolsのサイトに従いUVCのソースコードをダウンロードする.ただし /usr/src/kernels 以下にkernelソースを置いておくこと.
$ svn checkout svn://svn.berlios.de/linux-uvc/linux-uvc/trunk linux-uvc (svnでダウンロード) $ cd linux-uvc $ make $ su # make install
動作確認
Linux UVC driver and toolsのサイトのカメラリストに載っているカメラを繋いで,以下を実行.
$ xawtv
画像が写れば完了.
magicolor2300DLで印刷
ドライバのインストール
foo2zjsドライバーを使用する.
$ wget http://foo2zjs.rkkda.com/foo2zjs.tar.gz $ tar xvfz foo2zjs.tar.gz $ cd foo2zjs $ make $ ./getweb 2300 $ su # make install # /etc/rc.d/init.d/cups reload
プリンタの追加
http://localhost:631/ にアクセスし「プリンタ管理」「プリンタ追加」を選択.
- 名前、場所、説明を適当に設定.
デバイス「AppSocket/HP JetDirect」
デバイスURI「socket://<ServerIP>:9100」
- メーカ名「Minolta」
- モデル名「Minolta magicolor 2300 DL」
- 追加後に「印刷設定」から色や両面の設定など行う。
Intel 945GM/GMS/940GMLで外部出力
VAIO VGN-SZ70Bで確認.
i945対応のi810switchを作成
i810switch-0.6.5-1.rf.i386.rpm (i945用にpatchを当てたrpm)をダウンロードしてインストール.
$ su # rpm -Uvh i810switch-0.6.5-1.rf.i386.rpm
インストールできなければ、以下の手順でrpmを作成する.
http://dag.wieers.com/rpm/packages/i810switch/ からi810switchのSRPM(i810switch-0.6.5-1.rf.src.rpm)をダウンロード.これに以下のようなpatch i810switch.c.diff をあてる.(~/ に置いたとする)
$ cat i810switch.c.diff
*** i810switch.c.orig 2007-06-03 00:30:17.000000000 +0900
--- i810switch.c 2007-06-03 00:33:10.000000000 +0900
***************
*** 60,65 ****
--- 60,66 ----
#define I855STR "8086:3582"
//#define I865STR "8086:2572"
#define I915STR "8086:2592"
+ #define I945STR "8086:27a2"
#define MEMSTR "Memory at"
#define NONPRSTR "32-bit, non-prefetchable"
***************
*** 272,278 ****
return p;
}
! i = (p = strstr(*buff_ptr, I855STR)) != NULL;
if (i)
{
*chiptype = I855;
--- 273,280 ----
return p;
}
! i = (p = strstr(*buff_ptr, I855STR)) != NULL ||
! (p = strstr(*buff_ptr, I945STR)) != NULL;
if (i)
{
*chiptype = I855;
i810switch-0.6.5-1.rf.src.rpm内のi810switch.cにpatchを当ててからrpmを作りインストール.
$ rpm -Uvh i810switch-0.6.5-1.rf.src.rpm $ cd ~/rpm/SOURCE $ tar xvfz i810switch-0.6.5.tar.gz $ cd i810switch-0.6.5 $ patch -p0 < ~/i810switch.c.diff $ cd .. $ rm i810switch-0.6.5.tar.gz $ tar cvfz i810switch-0.6.5.tar.gz i810switch-0.6.5 $ cd ~/rpm/SPECS/ $ rpmbuild -bb i810switch.spec $ cd ~/rpm/RPMS/i386/ $ su # rpm -Uvh i810switch-0.6.5*.rpm
xorg.confの設定
xorg.confの"Device"項目に以下を追加.
Option "MonitorLayout" "CRT,LFP"
Option "Clone" "on"
i810実行
ターミナルから以下を実行.
$ su # i810switch
または
$ su # i810switch crt on lcd on
参考
CF-W5でディスプレイ外部出力
Re: CF-W5でディスプレイ外部出力
Adobe Reader 8.1.1のインストール
Adobe Readerのインストール
adobeのダウンロードサイトからAdobeReader_jpn-8.1.1-1.i486.rpmをダウンロードし,インストールする.
# rpm -Uvh AdobeReader_jpn-8.1.1-1.i486.rpm
adobe ftpサイトの8.x/8.1.1/miscから日本語言語パックFontPack81_jpn_i486-linux.tar.gzをダウンロードしインストール.
$ tar xvfz FontPack81_jpn_i486-linux.tar.gz $ cd JPNKIT $ su # sh INSTALL ..... Continue installation? [y] [ENTER] ..... Please type "accept" to accept the terms and conditions of license agreement; Type "decline" to exit. accept [ENTER] Enter the location where you installed the Adobe Reader [/opt] [ENTER] .....
実行する時は以下のコマンドを実行
$ acroread $ acroread filename.pdf
error while loading shared libraries: libstdc++.so.6: cannot handle TLS data
acroread実行時にこのようなエラーが出力されたら,aptでlibstdc++34を追加.
# apt-get update # apt-get install libstdc++34
/opt/Adobe/Reader8/bin/acroread の先頭の方に以下の行を追加
export LD_PRELOAD=/usr/lib/libstdc++.so.6
参考:林檎とペンギン管理人日誌
HTMLレンダリングライブラリ(libgtkembededmoz)が見つかりません
acroread起動時にこのエラーが出力されたら,libgtkembedmozをlocateなどで探して「編集」->「環境設定」->「インターネット」にパスを追加する.
$ locate libgtkembedmoz /usr/lib/firefox-2.0/libgtkembedmoz.so /usr/lib/thunderbird-2.0/libgtkembedmoz.so
パスなので追加するのは
/usr/lib/firefox-2.0/
atokxを使っているとハングアップする
Adobe Reader 8.1.1はiiimfと相性が悪いらしく,atokxを利用していると日本語入力をしたり,ファイル名を指定しないで起動した時にハングアップします./opt/Adobe/Reader8/bin/acroread の先頭の方に以下の行を追加すると回避できます.
export GTK_IM_MODULE=xim
ffmpeg
Texi2htmlインストール
docをコンパイルするためにTexi2htmlが必要なので、Texi2htmlのページからtexi2html-1.64.tar.gzをダウンロード。
$ wget http://www.mathematik.uni-kl.de/~obachman/Texi2html/Distrib/texi2html-1.64.tar.gz $ tar xvfz texi2html-1.64.tar.gz $ cd texi2html-1.64 $ ./configure $ make $ sudo make install
ダウンロード
subversionをインストール
$ su # apt-get update # apt-get install subversion
ffmpegダウンロード
$ svn co svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
ffmpegディレクトリに保存される
インストール
$ cd ffmpeg $ ./configure --enable-shared --enable-dc1394 $ make $ su # make install
マルチメディアプレーヤー(totem-xine)
apt-cache search xine
とやってみたらtotem-xineというgnome用マルチメディアプレイヤーが見付かった。
インストール
aptでインストールできるのは楽でいい。
apt-get update apt-get install totem-xine xine-lib-w32dll xine-lib-ogg
実行
totem hogehoge.mpg など
Ekigaでビデオ会議
GnomeMeetingの上位ビデオ会議アプリケーションEkigaを利用してみる。
インストール
Ekigaのページからダウンロードできるfedora用のSRPMを利用する。ekigaのSRPMをリビルドした時に、いくつかパッケージが足りないと要求されるので、aptでインストールできる分をインストールする。
# apt-get update # apt-get install pwlib pwlib-devel pwlib-v4l pwlib-dc pwlib-avc pwlib-alsa # apt-get install SDL-devel evolution-data-server evolution-data-server-devel
opal-develはaptでインストールできないので、Ekigaのページのパッケージを利用する。以下のファイルをダウンロードしておく。 (追記:vineのapt extrasにekiga,opalを発見)
ekiga-2.0.4-1.src.rpm opal-2.2.4-1.src.rpm
opalのリビルド・インストール
$ mv opal-2.2.4-1.src.rpm ~/rpm/SRPMS/ $ cd ~/rpm/SRPMS/ $ rpmbuild --rebuild opal-2.2.4-1.src.rpm $ cd ~/rpm/RPMS/i386/ $ su # rpm -Uvh opal-*.rpm
ekigaのリビルド・インストール
$ mv ekiga-2.0.4-1.src.rpm ~/rpm/SRPMS/ $ cd ~/rpm/SRPMS/ $ rpmbuild --rebuild ekiga-2.0.4-1.src.rpm $ cd ~/rpm/RPMS/i386/ $ su # rpm -Uvh ekiga-2.0.4-1.i386.rpm
設定
初めて起動すると、「初回時の設定アシスタント」が起動するので適当に進めていき、アカウント入力画面になったら「ekiga.net SIP アカウントを取得します」をクリックし開いたページの「Subscribe!」をクリックしてアカウントを取得する。
既にekiga.netやそれ以外のSIPアカウントを持っている場合は新たに取得する必要はない。
first name: 名前
last name: 姓
email: メールアドレス
comment: コメント(特に必要なし)
your timezone: Asia/Tokyo
pick your user name: 好きなユーザ名
pick password: パスワード
confirmation password: パスワード再度入力
I accept にチェックを入れる
メールが送られてきたら24時間以内に
To finalize your registration, please check the following URL within 24 hours:
のリンクをクリックすると登録完了。
ekiga起動
$ ekiga
v4l2のwebカメラを繋ぐと設定のカメラデバイスからV4L2を選べた。Windows2000のNetMeetingと通信したら音声・映像共に送れた。ただし文字チャットが出来なかった。
GnomeMeetingでビデオ会議
ビデオ会議アプリケーションを利用してみる。
インストール
# apt-get update # apt-get install pwlib pwlib-devel pwlib-v4l pwlib-dc pwlib-avc
音声ドライバにossを使用している人は、
# apt-get install pwlib-oss
音声ドライバにalsaを使用している人は、
# apt-get install pwlib-alsa
GnomeMeetingインストール
# apt-get install gnomemeeting
GnomeMeeting起動
$ gnomemeeting
設定
初めて起動すると、「初回時の設定ドルイド」が起動するので適当に設定する。
winkでスクリーンキャプチャFlash動画
winkを使用するとスクリーンキャプチャをフラッシュ動画として保存できる. 2007/03/23現在ではLinux版は version 1.5 build 1060 が最新.Windows版は version 2.0 build 1000.
インストールはダウンロードしたファイルを解凍してinstaller.shを実行すれば指定したディレクトリにインストールされる.
UTF-8対応ターミナルmlterm
Vine4.0はEUC-JP環境なのでUTF-8のサーバにsshすると文字化けする.mltermはCtrl+右クリックでEUC-JPやUTF-8などを簡単に切り替えができる.
インストール
$ su # apt-get update # apt-get install mlterm
起動、設定
$ mlterm
ターミナル上でCtrl+右クリックをすると設定画面起動.エンコーディングをUTF-8にする.
Centrino Duoでipw3945
VAIO VGN-SZ70Bで確認.
Vine 4.0のバージョン (要求仕様)
kernel 2.6.16 (2.6.13以上) [OK] ieee80211 1.1.7 (1.1.11以上) [NG] Wireless Extensions v19 (v17以上) [OK] Wireless Tools v28 (v28以上) [OK]
ieee80211 subsystem インストール
ieee80211 subsystem for Linuxからieee80211*.tgzをダウンロード. 2006.12.26 現在は ieee80211-1.2.15.tgz が最新.
kernelをアップグレードしたらieee80211もコンパイル・インストールし直す。
$ tar xvfz ieee80211-1.2.15.tgz $ cd ieee80211-1.2.15 $ su # make
全て Enter
# make install
ipw3945 インストール
Intel® PRO/Wireless 3945ABG Driver for Linuxのココから以下をダウンロード.(2006.12.26現在の最新)
ipw3945-1.1.3.tgz
ipw3945-ucode-1.13.tgz, ipw3945d-1.7.22.tgzはaptでインストール可能になったので必要なし。 ※2008/04/11現在ではVine配布のkernelを使用していれば、ipw3945もaptでインストール可能。
driverインストール
kernelをアップグレードしたらipw3945ドライバもコンパイル・インストールし直す。
$ tar xvfz ipw3945-1.1.3.tgz $ cd ipw3945-1.1.3 $ make IEEE80211_IGNORE_DUPLICATE=y $ su # make install
firmwareインストール
※2008/04/11現在ではaptでインストール可能。
# apt-get update # apt-get install ipw3945-firmware
deamonインストール
# apt-get update # apt-get install ipw3945d
無線LANに接続
$ cd ipw3945-1.1.3 $ su # ./load debug=0 # /sbin/modprobe ipw3945 # /sbin/ipw3945d
eth1の設定 /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 BOOTPROTO=dhcp ONBOOT=yes ESSID=hoge_id KEY="s:hoge_passwd" MODE="Managed"
無線LANスタート
$ su # /sbin/ifup eth1
WPAセットアップ(インストール)
wpa_supplicant, wpa_supplicant_guiインストール
# apt-get update # apt-get install wpa_supplicant wpa_supplicant-gui
/etc/sysconfig/wpa_supplicant.conf
INTERFACES="-ieth1" DRIVERS="-Dwext"
wpa_supplicantデーモンをサービスに追加し、デーモンを再起動。
# /sbin/chkconfig wpa_supplicant on # /etc/rc.d/init.d/wpa_supplicant restart
WPAセットアップ(接続先の設定)
wpa_guiでネットワーク設定。
# wpa_gui
WPA-PSK(TKIP)のとき
Authentication: WPA-Personal (PSK) Encryption: TKIP
WPA-PSK(AES)のとき
Authentication: WPA-Personal (PSK) Encryption: CCMP
Status: COMPLETED になるまで頑張る。COMPLETEDになってもネットワークに接続できない時はDHCPを再取得する。
# /sbin/ifdown eth1 # /sbin/dhcpcd eth1 (ifupではなぜかうまくいかない)
パーティションのリサイズ
Partition Magic 8.0で何故かext3のパーティションをリサイズできなかったのでLinux版パーティションツールを使ってみた。
GParted
Gnome用パーティション編集ツールGPartedがaptでインストールできる。
# apt-get update # apt-get install gparted
しかしアンマウントしないとパーティション変更ができないので、ルートのリサイズができない。
QTParted
Knoppixを使えばQTPartedが使用できるので起動してみたが、/dev/hdaしか見えずS-ATAの/dev/sdaが認識されなかった。
GParted Live CD
GPartedのページからLive CDのISOイメージがダウンロードできるので、CDに焼いて起動してみると/dev/sdaが認識されたので、これを使用した。(ただしダウンロードがかなり遅かった。) 起動してみるとキーボードと言語が聞かれるのでJPとJAPANを数字で選択。あとはPartition Magicの感覚で操作。移動したり、リサイズしたりと複数の作業を指定したら、途中の作業が完了したところでGPartedが終了してしまうので、終了するたびに残った作業を再度指定したら変更できた。
しかし一部データ(主にsubversionで管理してる部分)が壊れてしまった。消してsvn upでほとんどは修正できたけど、消せないディレクトリと名前が化けたファイルができてしまった。
# ls -l d--S--x-w- 2 675533193 3229977344 8192 12月10日 1907 image_055_55.pgm.svn-base/ # ls -l image_055_55.pgm.svn-base/ -rw-rw-rw- 1 user_name user_name 0 3月 5日 21:23 ?
とりあえず一つ上の階層のディレクトリを「.」付き隠しディレクトリにして今は忘れることにした。
grub再インストール
何かのlinuxを起動
- knoppixを利用
- knoppixのCDを入れるだけ
- vineインストールCDを利用
「インストールCDから起動する」を参照
grub再インストール
/(ルート)パーティションがsda5にあるとき
- knoppix
$ su # mkdir /mnt/sda5 # mount -t ext3 /dev/sda5 /mnt/sda5 # grub-install --root-directory=/mnt/sda5 /dev/sda
- vineインストールCD
# grub-install /dev/sda
以下のメッセージが出ればOK。
Installation finished. No error reported.
エラーが出たら?
/dev/sda does not have any corresponding BIOS drive. のメッセージが出たら
- knoppix
# vi /mnt/sda5/boot/grub/device.map
- vineインストールCD
# vi /boot/grub/device.map
以下の項目を追加
(hd0) /dev/sda
再度grub-installを実行。
マルチメディアプレーヤー(xine)
xine の rpm があるサイト( http://cambuca.ldhs.cetuc.puc-rio.br/xine/ )にアクセスする。
以下のファイルをダウンロードし、そこに書いてある手順を参考。
(リストの上から順にインストールする)
libxine1-1_cvs-040112.i686.rpm libxine1-devel-1_cvs-040112.i586.rpm xine-ui-0.9.23cvs-040112.i586.rpm libdvdcss-1.2.8-1.network.i386.rpm libdvdcss-devel-1.2.8-1.network.i386.rpm w32codec-0.52-1.i386.rpm xine-mozilla-plugin-0.2-040112.i586.rpm
DVDを再生したいときは以下も実行する。
/etc/ld.so.confを調べ、/usr/local/libが含まれているか調べ、含まれていない時は、エディタで書き込む。
# /sbin/ldconfig
※ ldconfig 最新の共有ライブラリに対して必要なリンクを作成したり、ライブラリをキャッシュしたりする。 (manコマンドより)
最後に、cdrom から dvd へリンクをはり、デバイスノードを作成する。
# ln -fs /dev/cdrom /dev/dvd
以上。
グラフを書く(gnuplot4)
gnuplotのversion4からはコマンド履歴などの機能が付いたみたい。
インストール
$ su # apt-get update # apt-get install gnuplot
起動
$ gnuplot
終了
gnuplot> quit または、 gnuplot> exit
日本語フォントの利用
set term postscript eps color "sazanami-mincho" 18 set term png font "/usr/lib/X11/fonts/TrueType/sazanami-mincho.ttf" 18
※ フォントサイズを18未満にするとY軸ラベルの回転が正常に行われない
gnuplotでヒストグラム(gnuplot-4.1.0以降)
開発版CVSからダウンロード可能なgnuplot-4.1.0からヒストグラムが簡単に作成可能になったらしい。(2006/05/08現在)
インストール
$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/gnuplot login; $ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/gnuplot co gnuplot; $ cd gnuplot $ ./prepare $ ./configure --prefix=/usr/local/gnuplot-4.1.0 --with-readline=gnu --enable-history-file $ make $ su # make install
使い方
histogram.sh と histogram_sample.txt を同じディレクトリに置いて以下のように実行すると histogram.png ができあがる。
$ cat histogram.sh #!/bin/sh /usr/local/gnuplot-4.1.0/bin/gnuplot -persist << EOF set term png font "sazanami-mincho.ttf" 18 set style histogram rowstacked set style fill pattern 1 set nokey set boxwidth 0.6 set xlabel "X軸ですよ" set ylabel "Y軸ですよ" set yrange[0:100] set output "histogram.png" set title "ヒストグラム" plot "sample.txt" using 2:xticlabels(1) with histograms EOF
$ cat sample.txt 1番 80 2番 49 3番 34 4番 30 5番 26 6番 23 7番 22 8番 21 9番 20 10番 15
$ chmod a+x histogram.sh $ ./histogram.sh
VNC上でOpenGLを使う
vncのソースをダウンロード
aptでvncのソースパッケージをダウンロードする。
$ su # apt-get update # apt-get source vnc # ls vnc-4.0-0.0.beta4.11vl1.src.rpm
vncでGLXを有効化する
ソースをインストールし、GLXを有効にしたrpmを作成する。
$ rpm -Uvh vnc-*.src.rpm $ cd ~/rpm/SOURCES $ emacs vnc-def.patch
BuildGlxExt を YES にする
#define BuildGlxExt NO ↓ - #define BuildGlxExt NO + #define BuildGlxExt YES
vnc.specからrpmを作成する
$ cd ~/rpm/SPECS $ rpmbuild -bb vnc.spec
vncのインストール
既にインストールされているvncを削除し、新しいvncをインストールする
$ cd ~/rpm/RPMS/i386/ $ su # rpm -e vnc vnc-server # rpm -Uvh vnc-*.rpm
OpenGLの動作確認
server
$ vncserver :1
client
$ vncviewer サーバ名:1 --- vnc window内 --- $ glxgears
glxgearsが起動して歯車が動いてるのを確認できれば完了。
x2vncでwindowsと繋ぐ
http://dag.wieers.com/rpm/packages/x2vnc/ から Red Hat 9用のrpm(x2vnc-1.7.2-1.rh9.rf.i386.rpm)をダウンロードしインストール。
$ x2vnc [vncserverへのIP]:[ディスプレイ番号]
Vine3.2インストールの補足
コンソールで日本語を表示する
方法1
/etc/lilo.conf に以下を追加
vga=0x317 ---> 1024x768の時
方法2
/etc/rc.local に以下を追加
modprobe vga16fb
Xの設定
/etc/X11/xorg.conf を編集
update
# apt-get update # apt-get upgrade
開発環境main(devel)のインストール
プログラムをやる人は必ず実行すること。
# apt-get script install-devel.lua
追加アプリ(個人的)
gcc295 gdb ddd glade glade2 glut glut-devel WindowMaker WMSoundSet samba gnuplot vnc vnc-server ncftp gv
# apt-get install gcc295 など
CapsLockとCtrlの入れ換え
コンソール
/etc/sysconfig/keyboardを以下のように書き換える
KEYTABLE="jp106_Ctrl_CAPS"
X Window System
コンソールで変更した上で、/etc/X11/XF86Config-4 の以下の行のコメントをはずす。
Option "XkbDisable"
キーコードを確認 (おまけ)
$ xev
kernel2.4系インストール
Vine3.2を使っている場合、kernelアップデートはVineのftpサイトにあるkernelのrpmをインストールする方が楽であると思う。
上の手段を利用しない、またはできない場合は以下の手順で行う。 現在のカーネルが 2.4.19 で、新しくインストールするカーネルを 2.4.24 とする。
kernelソースのダウンロードと展開
以下のサイトからカーネルをダウンロードしてくる。
http://www.kernel.org/ - http://www.kernel.org/pub/linux/kernel/ - ftp://ftp.kernel.org/pub/linux/kernel/
linux-2.4.24.tar.gzを使うとする。
rootになる。
# su
ダウンロードしたkernelソースを /usr/src/ 以下に置き、展開する。
# tar xvfz linux-2.4.24.tar.gz
kernelコンフィギュレーション
Makefileを編集し、以下のコメントをはずす。
# export INSTALL_PATH=/boot
↓
export INSTALL_PATH=/boot
現在のkernelのソースがある場合は、現在の設定を新しいkernelに反映させ、新しくカーネルに追加された項目だけ設定する。
# cp /usr/src/linux-2.4.19/kernel-2.4.19-i386.config /usr/src/linux-2.4.24/.config
kernelソースにディレクトリの中に入り、
# make oldconfig
新しくkernelに追加された項目だけ、聞かれるので、y(yes)、m(module)、n(no)から選択し、Enterを押していくと終了する。
現在の設定を変更する場合や、始めから設定する場合は、 kernelソースのディレクトリの中に入り、
# make xconfig
マウスで項目を選択し、y(yes)、m(module)、n(no)から選択していき、最後にSave and Exitをクリックする。
kernelコンパイル
# make dep ; make clean # make bzImage # make modules
makeできない時は、コンフィギュレーションに戻り、エラーの出ている設定を変更する。
kernelインストール
# make modules_install # /sbin/installkernel 2.4.24 arch/i386/boot/bzImage System.map
ブートローダーの設定(lilo.confまたはgrub.conf)に
initrd=/boot/initrd-2.4.19.img
の項目がある場合は、次のコマンドを実行する。
# /sbin/mkinitrd --ifneeded /boot/initrd-2.4.24.img 2.4.24
ブートローダーの設定ファイルに項目を書き加える。
liloを使っている時は、/etc/lilo.confを既に書いてある設定を真似して新しいkernelの設定を書き加え、以下のコマンドを実行する。(※lilo.conf書き変え後は必ず実行すること!!)
# lilo -v
grubを使っている時は、/etc/grub.confに新しいkernelの設定を書き加える。grubではgrub.conf書き変え後にコマンドを実行する必要はない。
最後に再起動すればよい。
自動で電源が落ちるようにする(vine3.2)
/etc/rc.d/init.d/halt のスクリプトの中の
message=$"Halting system..." command="halt"
となっているところのcommandの文を以下の様に書き換える。
command="halt -p"
または
command="poweroff"
インストールCDから起動する
インストールCD を挿入し電源を入れ、下記の手順で進める。
boot: linux rescue language --> us, keyboard --> 任意? # cd /mnt # mkdir hda # mount -t ext3 /dev/hda5 /mnt/hda (hda5はハードディスクのルートパーティション) # chroot /mnt/hda
以降はシングルユーザモードの様に使える。必要に応じて他のパーティションもマウントする。
rpm管理
インストール
# rpm -ivh [パッケージ名]
または
# rpm -Uvh [パッケージ名]
ソースパッケージのリビルド
# rpmbuild --rebuild [srcパッケージ名]
一般ユーザの場合 ~/rpm/RPMS 以下のどこかのディレクトリに作成される。 rootの場合 /usr/src/vine/RPMS 以下のどこかのディレクトリに作成される。
tarボールからrpmを作る
tarボールの中にspecファイルが入っている時に可能。
# rpmbuild -tb [tarボール名] ※rpmの作成 # rpmbuild -ts [tarボール名] ※srpmの作成 # rpmbuild -ta [tarボール名] ※rpmとsrpmの作成
一般ユーザの場合 ~/rpm/ 以下のどこかのディレクトリに作成される。 rootの場合 /usr/src/vine/ 以下のどこかのディレクトリに作成される。
●rpmコマンドのオプション(パラメータ)
-i 新規のパッケージをインストールする -U 既にインストールされているパッケージをアップデートする -F -Uと同じだが、古いバージョンがインストールされている場合のみ機能する -v より多くの処理過程情報を表示する -h インストール時に「#」を表示し、インストール状況を表示する --force パッケージのバージョンの新旧、競合を無視して強制的にインストールする --nodeps パッケージの依存関係をチェックしない --test 実際にはインストールせず、依存関係や競合をチェックする --version RPMのバージョンを確認する -e パッケージをアンインストールする -q パッケージのインストール状態のチェック -a インストールされているパッケージ名をすべて表示する -R 依存しているパッケージを表示する -d パッケージが提供しているドキュメント、マニュアルを表示する -c パッケージを設定するためのファイルを表示する -i パッケージの概略を表示する --provides パッケージの提供する機能を表示する
fstabを書き換えたら、起動しなくなった。
- シングルユーザモードで起動する。
- /etc/fstab を編集する。
read-onlyファイルになってしまっているときは,以下を実行してから編集。
mount -o rw,remount /
以上。
メモリ領域をマウントする
# mke2fs /dev/ram (または # mkfs.ext2 /dev/ram) # mkdir /mnt/ram # mount /dev/ram /mnt/ram
これで、/mnt/ram にメモリ領域がマウントされる。
デフォルトでは 4MB まで使用可能。
shutdown後は当然、データが消えます。
RAMディスクを使うには(@IT)
sshでパスワードなしログイン
DSA 認証によりパスワードなしでログインする。
ローカルPCの設定
$ cd ~/.ssh $ ssh-keygen -t dsa
以降、他のキーを押さずに全て Enter を押すと .ssh 内に id_dsa と id_dsa.pub ができる。
$ scp ~/.ssh/id_dsa.pub [ユーザ名]@[リモートPC]:~/.ssh/
リモートPCの設定
$ cd ~/.ssh $ mv id_dsa.pub authorized_keys $ chmod 600 authorized_keys
以上で、ローカルPCからリモートPCへのsshにおいてパスワードを聞かれなくなる。
stderrをリダイレクト
sh系(bash,zshなど)
stdoutのみ
> file
stderrのみ
2> file
stdout + stderr
2>&1 file
stdout + stderr -> パイプ
2>&1 | command
csh系(tcshなど)
stdoutのみ
> file
stdout + stderr
>& file
stdout + stderr -> パイプ
|& command
リダイレクト+画面表示
出力結果を tee コマンドに渡す
| tee file
patchファイルの作り方
diff -c file.old file.new > file.patch
bash_completionによるTAB補完
bash_completionを利用するとsudoやmanなどのコマンドに続けて入力するコマンド群でTAB補完が可能になったり,cdの時にディレクトリのみを補完するようになる。
インストール
Working more productively with bash 2.x/3.xからbash-completion-*.noarch.rpmをダウンロードしてインストールする。
$ su # rpm -Uvh bash-completion-*.noarch.rpm
設定
.bashrcなどに以下を追加
if [ -f /etc/profile.d/bash_completion.sh ]; then
. /etc/profile.d/bash_completion.sh
fi
viショートカット
コマンド
コマンドの意味
保存・終了
:q
何も書き込まずに終了
:q!
編集結果を保存せにず終了
:wq
強制的に上書保存して終了
:wq!
上書保存して終了
ZZ
〃
:w
上書保存して編集を続ける
カーソル移動
h
← 左に一文字移動
l
→ 右に一文字移動
j
↑ 上に一文字移動
k
↓ 下に一文字移動
0
行末へ移動
$
行頭へ移動
w
次の単語へ移動
b
前の単語へ移動
C-b
ページアップ
C-f
ページダウン
コマンドモード → インプットモード
i
カーソル位置より文字を挿入
a
カーソル後より文字を挿入
A
カーソルの行末に文字を挿入
o
カーソル行の後行に文字を挿入
O
カーソル行の前行に文字を挿入
R
カーソルのあたっている文字を上書
削除・カット・コピー・ペースト
x
カーソル位置の文字を削除
dd
カーソル行をカット
yy
カーソル行を一行コピー
p
ペースト
文字列置換
:%s/置換前文字列/置換後文字列/
カーソル付近の文字列を1つだけ置換
:%s/置換前文字列/置換後文字列/g
文書内の該当文字列をすべて置換
補間
C-p
キーワード補間(昇順)
C-n
キーワード補間(降順)
Emacsショートカット
コマンド
コマンドの意味
基本操作
C-x C-f
ファイルを開く
C-x C-r
ファイルを開く(read only)
C-x C-s
上書保存
C-x C-w
別名保存
C-x C-c
Emacsの終了
カーソル移動
C-f
→ 右へ一文字移動 (forward)
C-b
← 左へ一文字移動 (before)
C-p
↑ 上へ一文字移動 (pullup)
C-n
↓ 下へ一文字移動 (next)
C-v
Page Down
M-v
Page Up
M-f
→ へ1単語移動
M-b
← へ1単語移動
C-a
行頭へ移動
C-e
行末へ移動
M-<
ファイルの先頭に移動
M->
ファイルの末尾に移動
切り取り,削除 / コピー / 貼り付け
C-d
カーソル位置にある文字を削除
C-k
カーソル位置から行末まで Cut
M-d
カーソル位置から単語の末尾まで Cut
M-Del
カーソル位置から単語の先頭まで Cut
C-Space
撰択(リージョン)開始
C-@
同上
C-w
選択(リージョン)終了,カット
M-w
選択(リージョン)終了,コピー
C-y
ペースト
訂正操作
C-g
コマンドのキャンセル
C-x u
アンドゥ
C-\
アンドゥ
検索
C-s
下方向検索
C-r
上方向検索
M-%
置換 (y: 置換, n: キャンセル, !: 全置換)
M-C-%
正規表現による置換 (y: 置換, n: キャンセル, !: 全置換)
バッファ操作
C-x C-b
バッファリスト一覧
C-x b
編集バッファの切り替え
C-x o
カレントバッファの移動
C-x 0
カレントのバッファを閉じる
C-x 1
カレント以外のバッファを閉じる
C-x 2
バッファを上下2つに分割
C-x 3
バッファを左右2つに分割
日本語入力
Shift+Space
日本語入力の ON / OFF
C-\
日本語入力の ON / OFF (上とは別)
C-o
変換中に変換範囲を → に1文字拡げる
C-i
変換中に変換範囲を ← に1文字拡げる
C-f
変換対象を → に移動する
C-b
変換対象を ← に移動する
シェル操作
M-! コマンド名
Shellコマンド実行
M-x shell
シェル起動
特殊記号
C-x
Ctrl を押しながら,x を押す
M-x
Alt を押しながら,x を押す
または,ESC を押してから,x を押すM-C-x
Ctrl,Alt を押しながら, x を押す
または,ESC を押してから,Ctrl を押しながら,x を押すC-M-x
同上
ktermショートカット
コマンド
コマンドの意味
カット・ペースト・削除
C-w
1つ前のスペースまでカットする
C-k
カーソル位置から後をカットする
C-u
カーソル位置から前をカットする
C-y
ペーストする
C-t
最後の2文字の順番を入れ換える
C-h
バックスペース [Back space]
C-d
カーソル上の1文字を削除 [Delete] delete
C-l
画面をクリアする
カーソル移動
C-a
カーソルを行頭に移動 [Home]
C-e
カーソルを行末に移動 [End] end
C-f
右に1つ移動 [→] forward
C-b
左に1つ移動 [←] back
C-p
1つ前のコマンドを表示する [↑]
C-n
1つ後のコマンドを表示する [↓]
その他
C-i
補完する [Tab]
C-j
実行 [Enter]
C-r
過去の履歴からのコマンド検索
URLなどで、~(チルダ)を表示する
方法1
\~{}
方法2
{\textasciitilde}
方法3
ヘッダに以下を追加
\usepackage{url}
本文内で以下のように書く
\url{http://www.hogehoge.com/~hoge/}
※フォントが変わるようです。
方法4
\verb+http://www.hogehoge.com/~hoge/+
※方法3と同じくフォントが変わるようです。
参考文献にbibtexを使う
$ ls sample.tex bunken.bib
sample.tex
・
・
ほげほげである.\cite{hoge2005}
・
・
\bibliography{bunken}
\bibliographystyle{junsrt}
\end{document}
bunken.bib
@InProceedings\{hoge2005,
author = {ほげ野 ほげ, ほげ山 ほげ},
title = {``ほげ''},
booktitle = {ほげ学会誌},
pages = {10-11},
year = 2005,
}
コンパイル
$ platex sample.tex $ jbibtex sample $ platex sample.tex $ platex sample.tex
pdfにしおりをつける(dvipdfm)
必要なもの
dvipdfm,LaTeX2e
$ ls sample.tex
旧バージョン
sample.tex
\documentclass[12pt]{jarticle}
\usepackage[dvipdfm,bookmarks=true,bookmarksnumbered=true,bookmarkstype=toc]{hyperref}
・
・
・
コンパイル
$ platex sample.tex $ out2uni sample $ platex sample.tex $ dvipdfm sample.dvi
完了.
新バージョン
sample.tex
\documentclass[12pt]{jarticle}
\usepackage[dvipdfm,bookmarks=true,bookmarksnumbered=true,bookmarkstype=toc]{hyperref}
\AtBeginDvi{\special{pdf:tounicode EUC-UCS2}} % EUC-JP (Linux)
%\AtBeginDvi{\special{pdf:tounicode 90ms-RKSJ-UCS2}} % Shift JIS (Windows)
・
・
・
コンパイル
$ platex sample.tex $ platex sample.tex $ dvipdfm sample.dvi
完了.
documentstyleからdocumentclassへ変更
ちなみに,documentstyleではうまくいかなかった. documentstyleを使ってる場合は,下記のようにdocumentclassに変更.
変更前
$ ls
sample.tex hoge.sty
$ head sample.tex
\documentstyle[12pt,hoge]{jarticle}
変更後
$ ls
sample.tex hoge.sty
$ head sample.tex
\documentclass[12pt]{jarticle}
\usepackage{hoge}
