tech.guitarrapc.cóm

Technical updates

Windows AzureのOpenLogic CentOS 6.3 で GNOME (X Window)を使うまでセットアップをしてみる part2

part2です。 前回は、AzureにCentOSでイメージを作りSSHで接続出来るところの確認まですすめました。
Windows AzureのOpenLogic CentOS 6.3 で GNOME (X Window)を使うまでセットアップをしてみる part1
目次はこちら。 今回は、yumでシステム状態の更新とRemiというRepositoryを追加します。
  1. Open Logic CentOS 6.3のインスタンス作成と接続
  2. yum更新とRemi Repositoruの導入
  3. ssh 公開鍵暗号での接続に切り替え
  4. zshのインストール
  5. gccなどDevelopment Toolsをインストール
  6. GNOMEの導入
  7. VNCの導入

yum更新とRemi Repositoruの導入

yum updateとは、Windowsでいう Windows Updateのようなものです。 システム状態や、yumでインストールしたパッケージの更新を行います。

root化はしないように

rootにしていい事ありません。 多少面倒くさくても、キッチリUser権限で コマンドを実行して、必要に応じてsudo すべきだと思っています。 よって、su - もありませんね。 Permission Denyされると確認したらsudoしましょう。 以下のコマンドでは、sudoしないとPermissionはじかれた箇所はsudoを頭につけています。 また、yumでの対話プロンプトでも y での自動承認はやらないようにしています。 理由は同じです。 つけたい人は読み替えて下さい。

システム全体のyum更新をする

至って簡単です。
yum update
yumはインストールを伴うため、root権限 が必要なのでsudoしてください。
sudo yum update
これで、最新の状態になります。 [office src="https://skydrive.live.com/embed?cid=D0D99BE0D6F89C8B&resid=D0D99BE0D6F89C8B%211426&authkey=AH22CBK99lJmnMU" width="319" height="73"]

yumの自動更新

管理を楽にするため、yumの自動更新ツールであるyum-cron入れます。
sudo yum install yum-cron
インストール後は、自動更新期間を設定します。(単位:秒) /etc内部ファイルをvimで編集しますので、sudoを付けてください。
sudo vim /etc/sysconfig/yum-cron
以下の設定で行きましょう。
♯--------------------------------以下を記入
SERVICE_WAIT_TIME=86400
♯--------------------------------以上まで
続いて、設定した内容で、daemon化とrun level設定をします。
sudo chkconfig yum-cron on
以下のコマンドで2~5がonになっていれば、再起動後も自動実行されます。
chkconfig | grep yum-cron
[azureuser@cherishacquire]~% chkconfig | grep yum-cron yum-cron 0:off 1:off 2:on 3:on 4:on 5:on 6:off
最後に、deamonを開始します。
sudo service yum-cron start
[azureuser@cherishacquire]~% sudo service yum-cron start [sudo] password for azureuser: Enabling nightly yum update: [ OK ]

remi repositoryの導入

LAMP環境などで、デフォルトのrepositoryに含まれないものも強力にサポートしているRemiを入れます。 AWSの場合、自身のRepositoryが強力なので不要なのですが……しょうがない。 あ、いらない人はスキップして下さい。

yum-prioritiesでRepository優先順位をつける

yum-prioritiesを使って参照jするRepositoryに優先順位をつけます。 導入は簡単です。
sudo yum install yum-priorities
まずは、標準レポジトリに優先順位づけします。 CentOS-Base.repoを開いて、ベースの設定から行います。
Baseとupdateは priority=1をセクション末尾に追加 他は priority=2をセクション末尾に追加
sudo vim /etc/yum.repos.d/CentOS-Base.repo
設定後はこんな感じです。
[openlogic] name=CentOS-$releasever - openlogic packages for $basearch baseurl=http://olcentgbl.trafficmanager.net/openlogic/$releasever/openlogic/$basearch/ enabled=1 gpgcheck=0 [base] name=CentOS-$releasever - Base baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 priority=1 #released updates [updates] name=CentOS-$releasever - Updates baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 priority=1 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 priority=2 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 priority=2 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 priority=2

Remiのインストール

まずは、epelをRPMでインストールします。 最新ファイルの状態は、ここで確認してください。
http://ftp-srv2.kddilabs.jp/Linux/packages/fedora/epel/6/
sudo rpm -Uvh http://ftp-srv2.kddilabs.jp/Linux/packages/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
次にremiをRPMでインストールします。 最新ファイルの状態は、ここで確認してください。
http://rpms.famillecollet.com/enterprise/
sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
最後にrmpforgeをRPMでインストールします。 最新ファイルの状態は、ここで確認してください。
http://pkgs.repoforge.org/rpmforge-release/
sudo rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
これで、repositoryはインストールされました。 簡単ですね。

yum.repo.dの確認

repository状態を確認します。
ls -l /etc/yum.repos.d/
サンプルです。
[azureuser@cherishacquire ~]$ ls -l /etc/yum.repos.d/ total 44 -rw-r--r--. 1 root root 1359 May 3 18:58 CentOS-Base.repo -rw-r--r--. 1 root root 637 Jun 26 2012 CentOS-Debuginfo.repo -rw-r--r--. 1 root root 626 Jun 26 2012 CentOS-Media.repo -rw-r--r--. 1 root root 2593 Jun 26 2012 CentOS-Vault.repo -rw-r--r--. 1 root root 957 Nov 5 03:52 epel.repo -rw-r--r--. 1 root root 1056 Nov 5 03:52 epel-testing.repo -rw-r--r--. 1 root root 739 Mar 20 14:24 mirrors-rpmforge -rw-r--r--. 1 root root 717 Mar 20 14:24 mirrors-rpmforge-extras -rw-r--r--. 1 root root 728 Mar 20 14:24 mirrors-rpmforge-testing -rw-r--r--. 1 root root 1020 Feb 12 18:50 remi.repo -rw-r--r--. 1 root root 1128 Mar 20 14:24 rpmforge.repo

remi.repo の有効化

デフォルトは無効になっているので有効化します。 また、Baseと並んで優先的に選択されるようにpriorityをつけます。 以下のコマンドで、ファイルを開きます。
sudo vim /etc/yum.repos.d/remi.repo
変更内容は、[remi] のenabledを0 => 1へ priority=1も追記 変更後はこのようになります。
enabled=1
priority=1
サンプルです。
[remi] name=Les RPM de remi pour Enterprise Linux 6 - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/6/remi/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/6/remi/mirror enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi priority=1 [remi-test] name=Les RPM de remi en test pour Enterprise Linux 6 - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/6/test/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/6/test/mirror enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi [remi-debuginfo] name=Les RPM de remi pour Enterprise Linux 6 - $basearch - debuginfo baseurl=http://rpms.famillecollet.com/enterprise/6/debug-remi/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi [remi-test-debuginfo] name=Les RPM de remi en test pour Enterprise Linux 6 - $basearch - debuginfo baseurl=http://rpms.famillecollet.com/enterprise/6/debug-test/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

yumでrepo追加されたか確認し更新

簡単です。
yum repolist
サンプルです。 [office src="https://skydrive.live.com/embed?cid=D0D99BE0D6F89C8B&resid=D0D99BE0D6F89C8B%211427&authkey=ALXItKpfgXYydLE" width="319" height="83"]

remiを使ったyumの例

Repositryを明示します。
sudo yum --enablerepo=remi install パッケージ名
以上で、remiの導入は完了です。

cronでremiでいれたパッケージを定期アップデート

シェルを作ってcronで定期アップデートしましょう。

shの作成

vimでファイルを作成し、書きます。
sudo vim /root/update.sh
記述内容です。
♯--------------------------------以下を記入
#!/bin/bash
date;
yum --enablerepo=remi -y update パッケージ名
♯--------------------------------以上まで
次に実行権限を付与します。
sudo chmod +x /root/update.sh
最後に、crontabで定期実行させます。 crontabを開いて設定すれば完了です。
crontab -e
記述内容は、毎朝6時に実行 結果は/root/result.txtに出力としました。
♯--------------------------------以下を記入
00 6 * * * sh /root/update.sh > /root/result.txt
♯--------------------------------以上まで

まとめ

以上で、repositoryの準備が完了しました。 次回は、ssh接続を公開鍵認証方式に切り替えます。