yum は標準インストールリポジトリと、yum-prioritiesプラグインがある。このyum-prioritiesを追加するには、下記のコマンドを実行する。
# yum -y install yum-priorities
基本的にはCentOSのディストリビューションに入っているので、別途インストール必要はありませんが、いろいろ困ったときのために。
Intltoolのインストール(すでにインストールされていれば不必要) # wget http://download.gnome.org/sources/intltool/0.40/intltool-0.40.6.tar.gz # tar zxvf intltool-0.40.6.tar.gz # cd intltool-0.40.6 # ./configure # make # make install
Yumのインストール # wget http://yum.baseurl.org/download/3.2/yum-3.2.25.tar.gz # tar zxvf yum-3.2.25.tar.gz # cd yum-3.2.25 # make # make DESTDIR=/ install
Yumのユーティリティのインストール(必要に応じて) # wget http://yum.baseurl.org/download/yum-utils/yum-utils-1.1.24.tar.gz # tar zxvf yum-utils-1.1.24.tar.gz # make <- 無駄なファイル削除だけ # make install
RPMのインストール # wget http://rpm.org/releases/rpm-4.7.x/rpm-4.7.2.tar.bz2 # bunzip2 rpm-4.7.2.tar.bz2 # tar xvf rpm-4.7.2.tar # cd rpm-4.7.2 # ./configure --enable-python # make # make install
CentOSのアップデートには、以下のコマンドで対応できる。(CentOS 5移行)
yum update
また、アップデートされた情報を確認するには以下のコマンドを利用する。
rpm -q centos-release
現在のメモリーの空き状態などを確認できる。
# free
現在のプロセス別のメモリ状態などを確認できる。
# top
自分のセグメント 192.168.0.0 に、他のセグメントである、192.168.1.0 のセグメントとつながっている、ゲートウェイ 192.168.0.2 を設定する。(最後のeth0 はどのインターフェイルからかという指定だが、指定しなくても問題無い)
# route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.2 eth0
指定したセグメントのルート情報を削除する。
# route del -net 192.168.1.0 netmask 255.255.255.0
# route
MSDOSの時代には非常にいろいろなファイラーと呼ばれる、CUIベースの擬似GUIファイル管理ソフトをファイラーと呼んでいた。有志によって、Linuxにも移植されたので紹介しておく。公式ページ
# wget http://hp.vector.co.jp/authors/VA012337/soft/fd/FD-3.00i.tar.gz # yum install ncurses-devel # rpmbuild -tb FD-3.00i.tar.gz # cd /usr/src/redhat/RPMS/i386 # rpm -ivh FDclone-3.00i-1.i386.rpm
設定ファイルを修正する。
# emacs /etc/fd2rc ANSICOLOR=1 SORTTYPE=1 LANGUAGE="UTF-8" DEFKCODE="UTF-8" FNAMEKCODE="UTF-8" URLKCODE="UTF-8" UNICODEBUFFER=1
irqbalance | マルチCPU環境で2nd CPU移行も割り込み処理を行なう事が出来るようにするプロセス。これによりマルチCPUシステムのパフォーマンスが上がる。1CPUのマシンでは使う意味は無い。確認方法は、cat /proc/interrupts |
auditd | システム監視機能、/etc/audit.rulesにログを取得する条件(cpを実行した場合)などを記述することで、cp コマンド実行後、コマンド実行に関するログを出力する |
acpid | ホスト機の動作と電源を管理し、省電力のための休止状態をサポートするデーモン。サーバ用には不必要 |
anacron | cronではその実行予定時刻にシステムが稼動していない場合には実行がキャンセルされるため、サーバ等では遅れても確実に実行されるanacronを入れておくことが多い |
apmd | バッテリーの制御を行う。バッテリーシステムがAPM(Advanced Power Management)に準拠している必要がある |
avahi-daemon | LAN上のIP機器を、DNSサーバーなどの所在地情報サーバーに頼らずに検知し、自動的に動作させる仕組みを与えるデーモン |
avahi-dnsconfd | |
bluetooth | いわずと知れた、BlueTooth用のデーモン |
hald | ハードウェア抽象化層デーモン(Hardware Abstraction Layer Daemon) |
hald-runner | |
hald-addon-acpi | |
hald-addon-storage | |
dnsmasq | BINDでDNSを構築するまでもない、小規模LANに最適なhostsベースなDNSサーバ。XENにおいてはゲストOSに導入されている場合がある |
XEN仮想マシンの場合の特殊デーモン
libvirtd | libvirtは仮想機械の制御を抽象化したライブラリである。デーモンとしては、仮想スイッチなど仮想化されたOSとホストOSとの接続などの管理を行うWikipedia |
xenconsoled | ゲストOSへのコンソール接続のための必須デーモン。起動していない場合には、ゲストOSに接続できない |
Linuxでは、PATHの検索を高速化させるために、Dentryやinodeなどのキャッシュ機構が備わっている。しかし、新しいプログラムを導入した場合など、古い位置に存在するキャッシュのために、whichコマンドの挙動がおかしくなる場合がある。その場合には、下記のコマンドでキャッシュをクリアするとよい。
# sync <- まじない # echo 1 > /proc/sys/vm/drop_caches <- PageCache のクリア # echo 2 > /proc/sys/vm/drop_caches <- Dentry, inode のクリア
それでもダメな場合には、以下のコマンドデータベース(Linuxが自動的に1日1回更新している)を、手動で更新すると良いと思われる。
# updatedb
Linuxでは、パスワードファイルはセキュリティの関係からアカウントの情報を記録する /etc/passwd ファイルと、パスワードを暗号化して保存しておく、/etc/shadow の2つで構成されている。
# cat /etc/passwd hogehoge:x:500:500:John Tomas:/home/hogehoge:/bin/bash
番号 | 上記サンプルでの例 | 説明 |
1 | hogehoge | アカウント名 |
2 | x | パスワードの存在フラグ |
3 | 500 | ユーザー番号(UID) |
4 | 500 | グループ番号(GID) |
5 | John Tomas | ユーザーの名前 |
6 | /home/hogehoge | ホームディレクトリ |
7 | /bin/bash | ログインシェル |
# cat /etc/shadow hogehoge:xHNuzvZ9XXhYA:14400::::::
番号 | 上記サンプルでの例 | 説明 |
1 | hogehoge | アカウント名 |
2 | xHNuzvZ9XXhYA | 暗号化されたパスワード本体(*だけの場合、rootが新パスワードを設定するまでログイン不可、!!だけの場合の意味はアカウントロック) |
3 | 10440 | パスワードの最終変更日(1970/1/1からの通し日付が設定される) |
4 | 変更可能最短期間(この期間を越えないと変更不可) | |
5 | 未変更可能最長期間(この期間を越えたら変更必要) | |
6 | 警告日(上記期日の何日前に警告するか) | |
7 | インアクティブ(ログインしないと無効になる日数) | |
8 | 失効日(アカウント失効までの日数) | |
9 | フラグ(未使用) |
アカウントのUIDの変更には、/etc/passwd などを直接変更するより、以下のコマンドを利用すると既存のファイルのUIDも併せて変更してもらえるため便利ではあるが、一部のファイルは変更されないため注意が必要だ。
# /usr/sbin/usermod -u xx username
※xxは新しいUID番号
サーバー側で以下のコマンドを実行
# yum -y install ypserv # ypdomainname mydomain.com # vi /etc/sysconfig/network <−下記行を追記 NISDOMAIN=mydomain.com # vi /var/yp/Makefile <−下記を修正 MERGE_PASSWD=false MERGE_GROUP=false all: passwd shadow group hosts rpc services netid protocols <ーshadowを追加 # vi /var/yp/securenets 255.255.0.0 192.168.0.0 # vi /etc/ypserv.conf
次にNISのプログラムを起動させる。
# service portmap start # service ypserv start # service yppasswdd start
自動起動の設定を行う。
# chkconfig portmap on # chkconfig ypserv on # chkconfig yppasswdd on
初期化
# /usr/lib/yp/ypinit -m
ポートを開ける
ポート、753 , 756 , 765 の3つのポートのTCP,UDPの両方を開けておく。
ユーザー追加の毎処理
# cd /var/yp # make
# yum -y install ypbind # vi /etc/sysconfig/network <−下記行を追記 NISDOMAIN=mydomain.com # vi /etc/sysconfig/authconfig USENIS=yes # vi /etc/yp.conf domain mydomain.com server nis.mydomain.com <−最後はNISのサーバ名 ypserver nis.mydomain.com # vi /etc/nsswitch.conf <−すべてにNISを追記する passwd:files nis shadow:files nis group:files nis hosts:files dns nis
自動起動の設定を行う。
# chkconfig portmap on # chkconfig ypbind on
その後再起動
# reboot
サーバーが起動しているのは ps ax で ypserv or ypbindが起動しているか。またypbindがうまく行っているかは、以下のコマンド。
# ypwhich <−接続サーバーの確認 # ypcat passwd <−サーバーに登録されているユーザー
拡張子 | 圧縮コマンド | 解凍コマンド |
.tar | tar -cvf | tar -xvf |
.tar.z or .taz | tar -Zcvf | tar -Zxvf |
.tar.gz or .tgz | tar -zcvf | tar -zxvf |
.tar.bz2 or .tbz | tar -jcvf | tar -jxvf |
.tar.xz | tar -Jcvf | tar -Jxvf |
.zip | zip -rv | unzip |
.zh | lha -cv | lha -v |
.7z | 7z | 7z x |
.rar | rar a | unrar x |
.cab | cab -r | cabextract |