最近、環境構築する機会があったので、よく使う Linux コマンドなどをメモる。完全に個人のメモレベルなので、いろいろ間違っている可能性あり。
尚、OS は不幸にも CentOS 5.4 ...。
アーカイブ系
.tar.gz 形式のアーカイブファイルを扱う場合は tar コマンドを使う。
# tar xzvf /path/to/foobar.tar.gz // 展開する # tar czvf /path/to/foobar.tar.gz /foo/bar // 作成する
x
: アーカイブを展開する (extract)c
: アーカイブを作成する (create)z
: gzip 形式を扱うv
: 展開/作成時にアーカイブ内のファイルを一覧表示するf
: 展開/作成するアーカイブファイルを指定するX
: アーカイブに含めないパターンを記述したファイルを指定する
# tar czvf /path/to/foobar.tar.gz /foo/bar -X .ignore (.ignore に記載したパターンに一致するファイルはアーカイブに含まれない)
ポート/プロセスを調べる
あるポートがどのプログラムに使われているか調べる場合は netstat コマンドを使う。
(Java のソフトウェアを使っていると java.net.BindException: Address already in use
というエラーにしばしば遭遇することがある)
# netstat -nlp
n
: 名前解決せず、IPアドレスで表示するl
: LISTEN しているポートを表示するp
: プロセスID(PID)とプログラム名を表示する
実行中のプロセスを調べる場合は ps コマンドを使う。
# ps auxf
a
: 自分以外のセッションのプロセスを表示するu
: ユーザを表示するx
: すべてのプロセスを表示するf
: プロセスの親子関係を表示する
ネットワーク関連
DHCPの環境でIPアドレスを再取得する場合は dhclient コマンドを使う。
# dhclient -r // IPアドレス解放 # dhclient // IPアドレス取得
ネットワークを再起動する場合は /etc/init.d/network を使う。
# /etc/init.d/network restart # service network restart // 本来の使い方はたぶんこっち
SSL 関連
httpd で SSL を使う場合は以下の手順で証明書を作成する。(オレオレ証明書)
OpenSSL と mod_ssl をインストールしていない場合はインストールする。
# yum install openssl # yum install mod_ssl
証明書を作成する。
# cd /etc/httpd/conf # openssl genrsa -aes128 1024 > server.key // パスフレーズを入力する # openssl req -new -key server.key > server.csr // Common Name にはサーバのホスト/IPアドレスを設定する (他はブランクでも問題なし) # openssl x509 -in server.csr -days 365 -req -signkey server.key > server.crt // 365日間有効な証明書
SSL の設定
# vi /etc/httpd/conf.d/ssl.conf // 以下を変更する SSLCertificateFile /etc/httpd/conf/server.crt SSLCertificateKeyFile /etc/httpd/conf/server.key # /etc/init.d/httpd restart // 再起動
(番外) CentALT から Apache HTTP Server インストールする
古い CentOS だと、新しいバージョンの httpd が yum でインストールできない場合がある模様。この場合は CentALT リポジトリからインストールする。
// EPEL # wget http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm # rpm -ivh epel-release-5-4.noarch.rpm // CentALT # wget http://mirror.sysadminguide.net/centalt/repository/centos/5/x86_64/centalt-release-5-3.noarch.rpm # rpm -ivh centalt-release-5-3.noarch.rpm # vi /etc/yum.repos.d/centalt.repo // baseurl と enabled を変更 baseurl=http://mirror.sysadminguide.net/centalt/repository/centos/5/$basearch/ enabled=0 # yum list --enablerepo=CentALT httpd | grep CentALT // インストールするバージョンを確認する # yum install --enablerepo=CentALT httpd
(番外) 旧バージョンの Jenkins をインストールする
不幸にも Java 6 で Jenkins を稼働させる必要がある場合は 1.607 をインストールする。
(1.608 以降は Java 7 以上が必須)
// Jenkins インストールで Error performing checksum になるのでこのパッケージをインストール # yum -y --enablerepo=epel install python-hashlib # wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo # wget http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key # rpm --import jenkins-ci.org.key # yum --showduplicates list jenkins // インストールするバージョンを確認する # yum install jenkins-1.607-1.1