Linuxユーザの立場から、役立つ情報や困ったときの解決方法を分かりやすく、かつ簡潔に記事にまとめています。主に、Ubuntu 8.04(→9.04)やCentOS 5.2(→5.3)で確認したことですが、他のディストリビューションでも応用できると思います。内容は(1)設定ファイルの書き方(2)役立つソフトウェア紹介やインストール方法(3)便利なコマンドの使い方や活用例(4)困ったときの解決方法です。このページの末尾にキーワード別で記事を分類してあります。また、真上の「ブログ検索」フォームからブログ内の記事を検索できます。

2009年2月28日土曜日

findコマンドでファイルを探す このエントリーを含むはてなブックマーク

本記事では、findコマンドでファイルを探す方法をまとめる。

書式

基本的な書式は

$ find dir exp
である。ここで検索を開始するディレクトリをdir、検索式をexpと書いています。

例えば、ホームディレクトリ以下にあるすべてのhtmlファイルを探したいときは

$ find ~/ -name '*.html'
とすればよい。このようにファイル名で探したいときは、nameオプションを付けて、ファイル名を表す式を'*.html'などのように書けば良い。

他にも、ホームディレクトリ以下にあるファイルで、ちょうど2日前にアクセスされたすべてのファイルを探すときには

$ find -atime 2
とすれば良い。atimeオプションは最後にアクセスされた日を指定するときに使う。その後に指定する数で、日にちを指定する。+や-を数の前に付けることで、「より大きい」、「より小さい」という意味になる。例えば、2日以内にアクセスしたファイルの場合は
$ find -atime -2
となる。

オプション

使用可能なオプションを少し紹介します。

-atime n
ファイルが最後にアクセスされたのがちょうどn日前である。
-mtime n
ファイルが最後に修正されたのはちょうどn日前である。
-newer file
ファイルはfileより後に修正された。
-size n
ファイルの長さはnブロック(1ブロックは512バイト)である。
-name nam
ファイル名はnamである。
-perm p
ファイルのアクセスモードはpである。
-user usr
ファイルの所有者はusrである。
-group grp
ファイルのグループ所有者はgrpである。

実行例を少し紹介します。 ホームディレクトリ以下にある1Mバイトより大きいのファイルで、10日以内にアクセスされたすべてのファイルを探す。

$ find ~/ -size +2048 -atime -10

論理式

AND,NOT,ORおよびカッコによるグループ化を表現できます。上述のオプションをそのまま列挙するとすべてのオプションを満たすファイルを探しますから、明示的にANDは書きません。

o(アルファベットの小文字のオー)オプションはオプション同士のOR演算を表します。例えば、goo1ユーザあるいはgoo2ユーザの所有するファイルを探すには

$ find -user goo1 -o -user goo2
とします。

オプションの前にエクスクラメーションマーク(!)を書くと、NOTを表します。例えば、ファイル名がtest.wav以外のwavファイルを探すには

$ find ! -name test.wav -name *.wav

とします。ただし、エクスクラメーションマークとnameオプションの間はスペースで間隔をあけてください

バックスラッシュ丸カッコあるいは円マーク丸カッコで囲むことで、グループ化されます。例えば、goo1あるいはgoo2ユーザの所有するwavファイルを探すには次のようにします。

find \( -user goo1 -o -user goo2 \) -name *.wav

パーミッション

上述のオプション一覧に示されているようにpermオプションによって、パーミッションによるファイル探索を行います。その引数として与えられる数値(例えば、644、すなわちrw-r--r--のこと)によって、そのパーミッションに設定されているファイルを探します。

$ find . -perm 644

これを実行するとカレントディレクトリ(.)以下にあるファイルでパーミッションが644となっているものを列挙します。

数値の前にハイフンがあるときは、少なくとも指定アクセスモードを満たすファイルを検索する。例えば、ルートディレクトリ以下にある、誰でも書き込み可能なファイルのリストを表示するには次のようにします。

$ find / -perm -002

すなわち、ファイルのパーミッションでその他のユーザ(o)の書き込み権限が許可されているファイルを列挙します。

動作オプション

指定した検索式にマッチしたすべてのファイルに対して、一定の動作を指定することができます。指定できる動作オプションをいくつか紹介します。

-print
パス名を表示する。
-exec cmd
コマンドcmdを実行する。
-xdev
検索を開始ディレクトリのファイルシステムに限定する。
-prune
遭遇したディレクトリには降りない。

ユーザgoo1のホームディレクトリ以下にあるすべてのファイルに対して、所有ユーザをgoo2、所有グループをgoo2に変更するには次のようにします。

$ find /home/goo1 -exec chown goo2 {} \; -exec chgrp goo2 {} \;

コマンドの書式{}は、検索式にマッチしたファイルのパス名を示すために使われます。波カッコの中にはスペースなど入れないでください。また、コマンドの終わりにはバックスラッシュセミコロンを書いてください

最後に、アルマジロ本に載っていたおもしろい応用例を1つ紹介します。インストール作業などのような一定の作業の間で修正、追加されたファイルを全部表示するには、次のようにします。まず、作業の前にファイルstarting_timeというを作成します

$ touch /tmp/starting_time

そして、何らかの作業を行った後に、次のコマンドを実行すれば良いのです。

$ find / -newer /tmp/starting_time

ただし、消去されたファイルは直接表示されませんが、修正されたディレクトリがリストアップされます。

参考文献

Unixシステム管理のVolume1の3章1節「一般コマンドを最大限に活用する」に詳しく書かれています。findは単にファイルを探すだけでなく、システム管理上とても便利なツールとして使えることが分かりました。紹介されていたのは、

  • ディスクの使用を監視する。
  • セキュリティ問題を起こす可能性のあるファイルのロケーションを突き止める。
  • 再帰的なファイル操作を実行する。
といった使い方です。

2009年2月18日水曜日

cronのアクセス制御 このエントリーを含むはてなブックマーク

本記事では、定期的にプログラムを実行するcronのアクセス制御について説明する。

アクセス制御

まず、crontabはrootしか編集できないようになっているかパーミッションを確認する。そして、cron.allowとcron.denyにそれぞれcronの使用を許可するユーザと禁止するユーザを書き込む。

例えば、goo1とgoo2ユーザだけにcronを許可して、それ以外のユーザには許可しない場合は次のように編集する。

# /etc/cron.allow
goo1
goo2
# /etc/cron.deny
ALL

2009年2月17日火曜日

ログアウト処理 このエントリーを含むはてなブックマーク

本記事では、ユーザがログアウトした際に実行する処理についてまとめる。

bashを使っている場合、ホームディレクトリに.bash_logoutというファイルがある(なければ作成する)。このファイルには、ログアウトした際に、実行する処理を記述する。 bashのコマンド履歴および端末の画面をクリアするには

# ~/.bash_logout
history -c
/usr/bin/clear
と書いておけば良い。ちなみに、ログインする際に、実行する処理は.bash_loginに書く。

manコマンドの使い方 このエントリーを含むはてなブックマーク

本記事では、manコマンドの使い方をまとめる。

hogeという名前のコマンド、関数、ユーティリティの使い方を調べる。

$ man hoge
hogeにマッチするマニュアルを探して、一番最初に見つかったものを表示する。

キーワード「passwd」でコマンドおよび要約文を調べる。

$ man -k passwd
afppasswd (1)        - netatalk パスワード管理ユーティリティ
chpasswd (8)         - パスワードファイルをバッチ処理で更新...
cvpasswd (1)         - CVSup の認証のためにパスワードにスクラ...
gpasswd (1)          - /etc/groupファイルを管理する
passwd (1)           - ユーザパスワードを変更する
passwd (5)           - パスワードファイル
passwd2des (3)       - RFS パスワード暗号化
pwupdate (8)         - NIS マップ passwd および shadow を更新する
rpc.yppasswdd (8)    - NIS パスワード更新デーモン
yppasswd (1)         - NIS データベースのパスワードを変更する
yppasswdd (8)        - NIS パスワード更新デーモン
chgpasswd (8)        - update group passwords in batch mode
exim4_passwd (5)     - Files in use by the Debian exim4 packages
exim4_passwd_client (5) - Files in use by the Debian exim4 packages
lppasswd (1)         - add, change, or delete digest passwords.
mkpasswd (1)         - Overfeatured front end to crypt(3)
pam_localuser (8)    - require users to be listed in /etc/passwd
passwd (1ssl)        - compute password hashes
smbpasswd (5)        - The Samba encrypted password file
smbpasswd (8)        - change a user's SMB password
update-passwd (8)    - safely update /etc/passwd, /etc/shadow and /etc/group
番号はマニュアルのセクション番号である。ちなみに、マニュアルのセクション番号は以下の通りである。
   
       1   実行プログラムまたはシェルのコマンド
       2   システムコール (カーネルが提供する関数)
       3   ライブラリコール (システムライブラリに含まれる関数)
       4   スペシャルファイル (通常 /dev に置かれている)
       5   ファイルのフォーマットとその約束事。例えば /etc/passwd など
       6   ゲーム
       7   マクロのパッケージとその約束事。例えば man(7), groff(7) など
       8   システム管理用のコマンド (通常は root 専用)
       9   カーネルルーチン [非標準]
詳しいことは
$ man man
で調べれる。

パスワード設定ファイルpasswdのマニュアルを読む(上の結果から、passwdというキーワードでは、passwdコマンドもマッチするのに注意)。そのためには、セクション番号を指定する。

$ man 5 passwd

参考になるサイト

2009年2月14日土曜日

DVIファイルビューア このエントリーを含むはてなブックマーク

本記事では、centOS 5.2のDVIファイルビューアについてまとめる。Ubuntuでは、xdviで閲覧できていたが、centOSでは日本語のDVIファイルをxdviで閲覧したら(フォント関係の理由により)クラッシュしてしまう。そこでpxdviを使うと問題なく表示できた。

DVIファイルをPSファイルに変換するツールdvipsもた同じ。日本語のDVIファイルはpdvipsを使ってPSファイルに変換すること。ただし、変換したPSファイルを印刷するかどうかで違いがある。例えば、英語のDVIファイルは

$ dvips test-en.dvi
によって、変換されたpsファイルはプリンターにすぐに送られる。一方で、日本語のDVIファイルは
$ pdvips test-ja.dvi
によって、test-ja.psというPSファイルはできるが印刷はされない。印刷するときは、
$ lpr test.ja.ps
などで、明示的に印刷コマンドを打つこと。

SCIM入力メソッドの設定 このエントリーを含むはてなブックマーク

本記事では、SCIM入力メソッドのキーバインドを変更する方法をまとめる。デフォルトでは「半角/全角」や「C-space」などでSCIMを開始、停止を切り替えるようになっている。emacsなどではC-spaceはマークセットのために使われているので、衝突してしまう。したがって、SCIMの方を別のキーバインドに変更する。

変更方法

システムの設定で「SCIM入力メソッドの設定」を選択すると、設定ダイアログが現れる。あるいは、端末から

$ scim-setup &
を実行すると、設定ダイアログが現れる。「フロントエンド」→「全体設定」で、SCIM開始のところで、設定をすべて削除して、代わりにC-spaceを登録する。そして、設定を登録してダイアログを閉じる。

Dejavu、efont、Bitstream Veraフォントをインストール このエントリーを含むはてなブックマーク

本記事では、Dejavu, efont, Bitstream Veraフォントのインストールについてまとめる(CentOSにて行った)。

Bitstream Veraフォント

/usr/share/bitstream-veraディレクトリにTrueTypeフォントがもともとあるが、fontpathが登録されていなかった。/etc/X11/xorg.confでフォントパスを次のように登録した

FontPath "/usr/share/fonts/dejavu"

さらに、/etc/X11/fs/configでxfsにフォントパスも登録した。 catalogueでコンマで区切ってパスを登録する形式になっている。

次に/usr/share/bitstream-veraに移動して、mkfontdirとmkfontscaleを実行する。後は、設定の読み込み作業など(fc-cacheとxset fp rehash など。またservice xfs restartでxfsを再起動する。これらは、どれが必要で、どれが不必要なのかいまいち理解できていないが、実行して間違いはないようなので、一通り実行している。しかし、この後にxfontselを実行しても登録されていないので、X自体を再起動する。すると、xfontselに反映される。詳細な手順は「M+とIPAの合成フォントのインストール 」参照のこと)

efont

efontはsourceforgeのefontプロジェクトからダウンロードしてくる。

efontは、tarボールで圧縮されているので展開する。そして、適当なディレクトリ(例えば/usr/share/fontsなど)にttfファイルをコピーする。私は/usr/local/share/fonts/efontディレクトリを作成して、そこに格納した。/usr/share/fontsや/usr/share/X11/fontsなどのディレクトリはデフォルトのシステムのフォントディレクトリなのでその下に作ったディレクトリに格納しておけば、何も設定しなくてもそのフォントは認識される。しかし、/usr/local/share/fontsはデフォルトのディレクトリでないので、システムに登録する必要がある。

システムへのフォントディレクトリの登録は/etc/fonts/local.confで行う。もともとlocal.confという設定ファイルは存在しないので、次のように自作する。

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file for local customizations -->
<fontconfig>
    <dir>/usr/local/share/fonts</dir>
</fontconfig>

ちなみに、/etc/fonts/fonts.confを見てみると、システムのデフォルトのフォントディレクトリが書かれているのが分かる。この設定ファイルのヘッダに注意書きされているように、fonts.confは直に編集してはならない。カスタマイズはlocal.confにすること

ちなみに、フォントパスなどの登録、反映は上のvitstream veraの場合と同じ。

xtermで日本語を扱えるフォントはあまりないけれど、efontは使えるのでインストールした。xtermのフォント設定は~/.Xresouceから行う。

Dejavuフォント

Dejavuフォントはrpmfindからfedora core9用のパッケージdejavu-fonts-2.24-3.fc9.noarch.rpmをダウンロードする。

$ rpm -ivh dejavu-fonts-2.24-3.fc9.noarch.rpm
でインストールできる。このフォントのdejavu sans monoをemacsで使うことにする。 CentOS5.2ではemacs 21が入っている。これで他のフォントに変更したらなぜか欧文が□になってうまく表示できない。いろいろ試してみて、dejavuを入れてemacs23にしたらうまくdejavu sans monoを登録できた。

まず、上のようにdejavu-fontsをインストールする(ちなみに、フォントパスなどの登録、反映は上のvitstream veraの場合と同じ)。次に、http://people.redhat.com/coldwell/emacs/repo/rhel/emacs-release-23-1.el5.noarch.rpmを取ってきてインストールする。そして、

yum update emacs-common
とするとemacs23にバージョンアップできた。emacs-commonを入れると、gnome関連のパッケージも依存性によりインストールされて嫌だったけれど、仕方なし。

参考サイト

2009年2月13日金曜日

Windowの名前、クラス名を調べる。 このエントリーを含むはてなブックマーク

本記事では、LinuxのX上で表示されるウィンドウの名前、クラス名を調べる方法をまとめる。 例えば、WindowManagerのtwmの設定ファイルでアプリケーションごとのウィンドウの挙動を設定するときなどに、そのウィンドウの名前やクラス名を使うときに必要になる。

xpropコマンドを実行してウィンドウをクリックすれば、そのウィンドウに関する性質が端末に出力される。それでは、順を追って説明する。

次のコマンド

$ xprop
を実行すると、マウスポインタが十字架になるのでウィンドウをクリックする(下の写真に十字架のポインタは写ってませんが、、、)。

そのウィンドウに関する情報が端末に出力される。大量の情報なので、grepで抜き出す。ウィンドウの名前(WM_NAME)の場合は次のようにする。

$ xprop | grep WM_NAME
ウィンドウのクラス名(WM_CLASS)の場合は次のようにする。
$ xprop | grep WM_CLASS

2009年2月12日木曜日

suコマンドの制限 このエントリーを含むはてなブックマーク

本記事では、CentOS5.2でsuコマンドを実行できるユーザを制限する方法をまとめる。他のユーザのパスワードを知っていたとしても(不正に知りえた情報かもしれないので)、誰でもsuを実行できることは危険である。したがって、suを実行できるユーザの制限をする。

設定

/etc/login.defsに次の1行を追加する(<---この設定は、最近は不要らしい。pam_wheel.so を使う場合は、SU_WHEEL_ONLY の設定は不要より)。

SU_WHEEL_ONLY yes
これは、wheelグループに所属するユーザだけsu権限が得られることを意味している。

さらに、/etc/pam.d/suで次の箇所

# Uncomment the following line to require a user to be in the "wheel" group.
#auth            required        pam_wheel.so use_uid
をコメントアウトして、
# Uncomment the following line to require a user to be in the "wheel" group.
auth            required        pam_wheel.so use_uid
のように変更する。 これで、ユーザがwheelグループに所属している場合だけsuの実行権限が与えられる。 ちなみに、よく似た行があるので別の箇所をコメントアウトしないように注意する。

次に、あるユーザhogeをwheelグループに所属させたいときは、

# usermod -G wheel hoge
を実行すれば良い。

sudoの利用

ここでは、ユーザにsudoの実行権限を与える方法を説明する。

sudoを使うと、別のユーザとしてコマンドを実行することができる。 suではrootパスワードを入力してroot権限を取得する必要があったが、 rootパスワードを入力するリスクを回避するためなどの理由で、sudoが使われることがある。

sudoはsuとは異なり、rootパスワードは必要とされない。現在のアカウントのパスワードを 入力して、本人確認が取れればroot権限でコマンドを実行できる。 もちろん、sudoの実行権限の与えられるユーザは十分信頼できることが前提である。

ユーザhogeにsudoの実行権限を与える方法は、まずhogeをwheelグループに所属させて、次にwheelグループに所属するユーザにsudoの実行権限を与えることで実現する。sudoの権限を設定するファイルは/etc/sudoersであるが、これは直に編集するのでなくvisudoという専用のツールで編集する。

# visudo 
で編集モードに入る。次の行
#%wheel ALL=(ALL) ALL
を探して、コメントを外せば良い。

sudoを使うことで、rootパスワードをユーザに知らせることなくroot権限を与えることができるようになるというメリットはある。また、sudoで実行したコマンドの履歴は保存される。しかし、rootパスワードなしで一般ユーザがroot権限を取得できるということはセキュリティ上あまり好ましくないので、これはデメリットでもある。ゆえに、sudoを利用する場合は、それが本当に必要なのかどうかを十分検討する必要がある。

参考サイト

2009年2月11日水曜日

ntpサーバの設定 このエントリーを含むはてなブックマーク

本記事では、ntpサーバの設定をまとめる。

ntpサーバのインストール

yumあるいはapt-getなどでインストールする。

$ yum -y install ntp

設定ファイル

/etc/ntp.confを編集する。

# デフォルトで全てのNTPアクセス拒否
restrict default ignore

# ローカルホストからはNTPアクセス許可
restrict 127.0.0.1 
restrict -6 ::1

# 参照するntpサーバを指定
server ntp.nict.jp
server ntp.nict.jp
server ntp.nict.jp


server  127.127.1.0     # local clock
fudge   127.127.1.0 stratum 10  
# 変動情報記録ファイルの指定
driftfile /var/lib/ntp/drift

時刻合わせ、デーモン起動

$ ntpdate ntp.nict.jp
11 Feb 21:06:39 ntpdate[15455]: step time server xxxx offset -193.337527 sec
$ /etc/rc.d/init.d/ntpd start

参考サイト

sshサーバの設定 このエントリーを含むはてなブックマーク

この概要は表示できません。投稿を閲覧するには ここをクリック してください。

CentOSのセットアップ(X起動、アップデート) このエントリーを含むはてなブックマーク

本記事では、CentOSのインストールから、X Window Systemの設定、yumによるパッケージのアップデートまでをまとめる。インストールしたPCは、内蔵型DVDドライブのあるデスクトップ型コンピュータである。

CentOSのインストール

Biosで、DVDドライブが最も優先的に起動するように設定する。そして、 「CentOSのインストールDVDを作成する」の手順で作成したDVDを入れて、再起動する。後はグラフィカルインストールで、対話的にインストールを進めれば良い。

インストールするパッケージは、おおまかに選択しておけば後は自動でインストールされるが、私は必要なものを手動で選択して最小構成となるようにした。

X Window Systemの設定

OSを立ち上げてみると、X Windowはうまく起動しなかった。したがって、/etc/X11/xorg.confを手動で設定し直した(Monitorセクションはいい加減に書くとモニターが破損する危険があるらしい。Monitorセクションは書かないでおくとデフォルトの設定となる)。

# Xorg configuration created by pyxf86config

Section "ServerLayout"
Identifier     "Default Layout"
Screen      0  "Screen0" 0 0
InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "InputDevice"
Identifier  "Keyboard0"
Driver      "kbd"
Option     "XkbModel" "jp106"
Option     "XkbLayout" "jp"
EndSection

Section "Device"
Identifier  "Videocard0"
Driver      "vesa"
EndSection

Section "Screen"
Identifier "Screen0"
Device     "Videocard0"
DefaultDepth     24
SubSection "Display"
 Viewport   0 0
 Depth     24
 Modes "1024x768"
EndSubSection
EndSection
ちなみに、もとのxorg.confにはFontPathが指定されていない。 /var/log/Xorg.0.logを見てみると、FontPathが指定されていないので、 デフォルトを適用すると書いてあった。 そうして欲しくないならば、xorg.confを書いておけば良い。 Xフォントサーバ(xfs)は、設定ファイル/etc/X11/fs/configを読み込んで 動作するのだが、こちらにフォントパスが書かれている。

設定後に、

$ startx
によってXが起動する。うまくGUIが表示されたらOK。

パッケージのアップデート

アップデートはyumを使う。プロキシ経由でネットに接続しているので、~/.bashrcなどに

http_proxy="http://hogehoge.proxy.net:8080"
export http_proxy
を挿入してプロキシを環境変数に登録する。

次に、bashrcを再び読み込む。

$source ~/.bashrc

そして、アップデートを実行する。

$ yum update

CentOSのインストールDVDを作成する。 このエントリーを含むはてなブックマーク

本記事では、Linuxディストリビューションの1つであるCentOSのインストールDVDを作成する方法をまとめる。CentOSのインストール方法は大きく分けて

  1. インストールCDまたはDVD
  2. ネットワーク経由
です。今回は、centOS.orgからisoイメージをダウンロードして、インストールDVDを作成する方法を説明します。

isoイメージの取得

centOS.orgのdownloadsタブのmirrorsを選択すると、次の画面になります。

CentOS-5 ISOs(CentOS 5のisoイメージのこと)をクリックして、適当なミラーサイトを選択します。私はjaistのftpサーバを選択しました。次の3つをダウンロードします。

  • CentOS-5.2-i386-bin-DVD.iso
  • md5sum.txt
  • md5sum.txt.asc
ちなみに、isoイメージは3.7GBほどもあるので、ローカルマシンのディスク容量などに注意してください。

チェックサムファイルの署名を検証する。

$ gpg --verify md5sum.txt.asc
そして、チェックサムでisoイメージの整合性を検証する。
$ md5sum --check md5sum.txt

isoイメージの書き込み

ファイルマネージャのnautilusで、isoイメージファイルを選択して右クリックして「"CD/DVDの作成"で開く」を選択すれば良い(Ubuntu8.04)。 ちなみに、環境は次の通り

  • DVDドライブ:BuffaloのDVM-X16U2
  • 作業用コンピュータ:ThinkPadX31

最初からこうしておけば良かったのだが、諸事情でWindowsからisoイメージの書き込みをしてしまい、思わぬトラブルに見舞われてしまった。というのは、DeepBurnerという(ある程度知られているらしい)フリーのDVDライターを使ってisoイメージを書き込もうとしたとき、処理が遅い上に、エラーで書き込めなかった(理由は不明)。それで、思い直してubuntuから上の方法でしたら、問題なく書き込めた。

grubにパスワードを設定する このエントリーを含むはてなブックマーク

本記事では、linux(主にUbuntu)でgrubパスワードを設定する方法をまとめる。grubをパスワードで保護する理由は、シングルユーザモードへのアクセスを防ぐことなどが挙げられる。シングルユーザモードで起動すると、パスワードなしでrootとしてログインできるからです。他の理由は、参考サイトの"Biosとブートローダのセキュリティ"に簡潔にまとめられています。

設定ファイルの編集

Ubuntuの場合、設定ファイルは/boot/grub/menu.lstである(他のLinuxでは/boot/grub/grub.confなど)。 以下のようにパスワードを設定する箇所がある。

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line)  and entries protected by the
# command 'lock'
# e.g. password topsecret
#      password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

password   hogehoge
という具合で、hogehogeというパスワードを設定する1行を挿入すれば良い。 このファイルはパーミッションでroot権限を持つユーザだけが閲覧できるように しておけば、直にパスワードを書き込んでも良いかもしれない。 さらに安全にしたいならば暗号化すれば良い。

パスワードの暗号化

grubコマンドを実行してgrub シェルを起動する。

$ grub
プロンプトが現れるまで、少し時間がかかるかもしれない。

md5cryptで暗号化する。

> md5crypt
Password: hogehoge
Encrypted: 暗号化されたパスワード
暗号化されたパスワードをコピーして、先ほどの設定ファイルで 直にパスワードを書いていた行の代わりに
password   --md5  暗号化されたパスワード
を挿入する。

参考サイト

2009年2月10日火曜日

Red Hat Linux9のサービス一覧 このエントリーを含むはてなブックマーク

本記事では、Red Hat Linux9のサービスの説明をまとめる。

サービス一覧

各ランレベルごとのサービスの起動、停止の設定を見る。

$ chkconfig --list | less

サービスの説明をまとめる。

kudzu
ハードウェアの自動認識を支援する
syslog
システムのログを記録する
netfs
NFSやsambaにマウントする
network
起動時にネットワークインターフェースを初期化する
random
乱数生成器を初期化する
rawdevices
自動でrawデバイスをマウントする
pcmcia
pcmciaカードを検出する
saslauthd
sasl(Simple Authentication and Security Layer)認証サーバ
keytable
/etc/sysconfig/keyboardを参照して、キーマップをロードする
apmd
電源管理デーモン
atd
指定時刻にコマンドを実行する
gpm
コンソールでマウスを使うためのツール
autofs
Automatic File System. ファイルシステムの自動マウント、アンマウントを行う
iptables
パケットフィルタリングツール
irda
赤外線通信(IrDA:Infrared Data Association)用のユーティリティ
isdn
ISDN用ユーティリティ
sshd
sshデーモン
portmap
NFS、NIS使用時のポートマッパー
nfs
NFS(Network File System)サーバ
nfslock
NFSファイル・ロック機能
sendmail
メールサーバデーモン
rhnsd
Red Hat Networkデーモン。更新などを通知する
crond
コマンドを定期的に実行するデーモン
anacron
定期的なコマンドスケジューラであり、システムが停止しているときに実行できなかったタスクを次回起動時に自動実行する
httpd
HTTPデーモン
aep1000
AEP1000、AEP2000という SSL 用の暗号化アクセラレータの デバイスドライバ
bcm5820
aep1000と同種の暗号化アクセラレータのデバイスドライバ
squid
プロキシサーバ、webキャッシュサーバ
tux
Red Hat Content Acceleratorは、カーネルベース、マルチスレッド、高性能の HTTPサーバで、スタティックデータとダイナミックデータの両方を処理する能力があります。また、tuxはカーネルアクセラレートしたネットワークサービスのアーキテクチャです。
winbind
SambaのWinbind(SambaでWindowsドメインの認証を利用する)デーモン
smb
sambaデーモン
xfs
X フォントサーバ
xinetd
inetdの代わるセキュアなデーモン管理プログラム
named
DNSサーバデーモン
ntpd
Network Time Protocol(NTP)デーモン
canna
漢字変換サーバ
FreeWnn
漢字変換サーバ

サービスの起動、停止は次のようにする。 例えば、ランレベル3でpcmciaデーモンを停止したいときは

$ chkconfig --level 3 pcmcia off
とする。すべてのランレベルで停止したいときは
$ chkconfig pcmcia off

コンソールのメッセージが文字化けする このエントリーを含むはてなブックマーク

本記事では、Red Hat Linuxでコンソールのメッセージの文字化けを回避する方法をまとめる。

KONを使う方法

Kanji cONsole emulatorのKONを使う方法をまとめる。 コンソールで、
$ kon
と実行すれば、コンソールで日本語を表示できるようになる。

環境変数LANGを設定する方法

環境変数LANGを英語に設定する。
$ export LANG="en_US"
コンソールのデフォルトの言語設定は/etc/sysconfig/i18nに記述されているので、ここを直接編集してもよい。
#LANG="ja_JP.eucJP" 変更前
LANG="en_US"

参考

キーワード

キーワード別に記事を分類してあります。クリックすると各キーワードに該当する記事たちが表示されます。

筆者について

自分の写真
趣味はコンピュータ、音楽、写真などです。