Linux Tips

ここは244がlinux関連のメモを残しておく場所です。
ここに書かれた内容を参考にするのは一考に構いませんが、間違っている可能性もあります。
万が一何かが起きてしまっても責任は取れませんので御注意ください。

旧linuxメモhtml

Vine Linux 4.0/4.1

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

プリンタの追加

最上部へ


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

参考:Adobe Reader 8.1.1 がハングする

最上部へ


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を起動

grub再インストール

/(ルート)パーティションがsda5にあるとき

$ su
# mkdir /mnt/sda5
# mount -t ext3 /dev/sda5 /mnt/sda5
# grub-install --root-directory=/mnt/sda5 /dev/sda

# grub-install /dev/sda

以下のメッセージが出ればOK。

Installation finished. No error reported.

エラーが出たら?

/dev/sda does not have any corresponding BIOS drive. のメッセージが出たら

# vi /mnt/sda5/boot/grub/device.map

# 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.shhistogram_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を書き換えたら、起動しなくなった。

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ショートカット

最上部へ


Emacsショートカット

最上部へ


ktermショートカット

最上部へ


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}

最上部へ

None: Linux Tips (last edited 2008-05-20 13:21:45 by suenaga244)