先のCentOSをインストールする(2)からの続きです。
CentOSの基本的な設定を終えたら、最初にOSのバージョンアップをしましょう。
Windowsでも最初にWindowsのアップデートを行うようにCentOSでも最新のセキュリティパッチなども提供されているかもしれません。まずは、アップデートしておきましょう。
- 目次
- 履歴
2010年7月17日 初版
システムのアップデート手順
システムのアップデートの手順は、
- アップデートに不要なパッケージがあれば、それを指定します。
- アップデートが必要なパッケージがあるか確認します。
- アップデートが必要であればアップデートを実施します。
- アップデートを自動化します。
と、こんな感じで始めます。
アップデート不要なパッケージを指定する。
アップデート不要なパッケージがあれば、/etc/yum.confに指定します。
|
ここでは、以下のようなものを指定してみています。
無条件に何でもかんでもアップデートしてしまうと、環境が変わって、今まで正しく動いていたものが、動かなくなることが多々あります。
そのためにも、意識してアップデートしたくないものは、ここで、指定しておくできです。
そのため、ここの設定は、できれば、最初のシステムアップデートを終えた後に行うことが良いと思います。
(つまり、2回目以降のアップデート時に有効になるようにした方が良いということです。)
- gcc(コンパイラ)
- kde(KDE GUIパッケージ)
- openssh(OpenSSHパッケージ)
- kernel(カーネルパッケージ)
- php(phpパッケージ)
- mysql(mysqlパッケージ)
ここでは、すべてのパッケージを指定せずに”*“ワイルドカードを指定して、一括指定しています。もちろん、個々のパッケージを指定することも可能です。
アップデートが必要なパッケージがあるか確認します。
アップデートが必要なパッケージは、yum check-updateで知ることができます。
|
ここで、各パッケージ名が左にリスト表示されます。 その各パッケージ名の右にbase, updatesなどと表示されます。 このupdatesの場合は、そのパッケージの最新アッケージがあります・・・という意味になります。。
アップデートが必要であればアップデートを実施します。
アップデートは、各パッケージ毎に、yum update xxxx で実施することもできます。(xxxx:パッケージ名)
また、一括して先にチェックでupdatesと出力された全てのパッケージをyum updateアップデートすることもできます。
|
上記のようにダウンロードサイズの確認と実際にアップデートの前の確認が1回ずつ行われます。
すべてyで一括アップデートが実施されます。
アップデートを自動化します。
先のyum updateで無条件にアップデートして良ければ、それをcronに登録すれば良いと思います。
以下は、cronに直接起動処理を記述した例です。毎日5時5分にアップデートを実施するように指定しています。
|
しかし、少々、危ないですね。
そのため、一般的には、アップデートすべきパッケージがどれだけあるか、毎日チェックし、そのチェック結果を通知する仕組みを採ることが多いようです。
その時に用いるのが、yum-cronです。
- yum-cronのインストール
CentOS(RedHat系)では、もうおなじみのyumでインストールです。
$ yum install yum-cron Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile ... ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: yum-cron noarch 3.2.29-22.el6.centos.2 updates 34 k ... Transaction Summary ================================================================================ Install 5 Package(s) Total download size: 162 k Installed size: 252 k Is this ok [y/N]: y ... Complete!
- yum-cronの設定ファイル編集
yum-cronの設定を行う場合、/etc/sysconfig/yum-cron を編集することで実施します。
/etc/sysconfig/yum-cron
# Pass any given paramter to yum, as run in all the scripts invoked # by this package. Be aware that this is global, and yum is invoked in # several modes by these scripts for which your own parameter might not # be appropriate YUM_PARAMETER= # Don't install, just check (valid: yes|no) CHECK_ONLY=no # Check to see if you can reach the repos before updating (valid: yes|no) CHECK_FIRST=no # Don't install, just check and download (valid: yes|no) # Implies CHECK_ONLY=yes (gotta check first to see what to download) #DOWNLOAD_ONLY=no DOWNLOAD_ONLY=yes # Error level, practical range 0-10, 0 means print only critical errors which # you must be told, 1 means print all errors, even ones that are not important # Level 0 is the default # ERROR_LEVEL=0 # Debug level, practical range 0-10, higher number means more output # Level 1 is a useful level if you want to see what's been done and # don't want to read /var/log/yum.log # Level 0 is the default # DEBUG_LEVEL=1 # randomwait is used by yum to wait random time # default is 60 so yum waits random time from 1 to 60 minutes # the value must not be zero RANDOMWAIT="60" # if MAILTO is set and the mail command is available, the mail command # is used to deliver yum output # by default MAILTO is unset, so crond mails the output by itself # example: MAILTO=root MAILTO= # you may set SYSTEMNAME if you want your yum emails tagged differently # default is output of hostname command # this variable is used only if MAILTO is set too #SYSTEMNAME="" # you may set DAYS_OF_WEEK to the days of the week you want to run # default is every day #DAYS_OF_WEEK="0123456" # which day should it do cleanup on? defaults to 0 (Sunday). If this day isn't in the # DAYS_OF_WEEK above, it'll never happen CLEANDAY="0" # set to yes to make the yum-cron service to wait for transactions to complete SERVICE_WAITS=yes # set maximum time period (in seconds) for the yum-cron service to wait for # transactions to complete. The default is 300 seconds (5 minutes) SERVICE_WAIT_TIME=300
YUM_PARAMETERyumへ渡すパラメータを指定します。ここで、yum にパラメータを渡すと、このパッケージで呼び出されたすべてのスクリプトで実行されます。CHECK_ONLYこの値が、yesなら、インストールは実行しません。チェックのみを実施します。CHECK_FIRSTアップデートする前にリポジトリに到達することができますかどうかをチェックする。DOWNLOAD_ONLYこの値が、yesなら、インストールは実行しません。チェックとダウンロードまでを実施します。CHECK_ONLY=yes を含んでいます。ERROR_LEVELエラーレベル(0-10)を指定します。0は、知らなければならない必要最小限の重要なエラーのみを出力します。1は、大事でないものも含めて全てのエラーを出力します。デフォルト0です。DEBUG_LEVELデバッグレベル(0-10)を指定します。大きい数値は、出力情報が多くなります。レベル1は、/var/log/yum.logを見ることなく yumで何か実施されたか知るのに一般的に良く使われるレベルでしょう。デフォルト0です。RANDOMWAITrandomwaitは、yumがランダムな時間 待つために使われます。デフォルトは、60(分)です。この値は、0を指定してはいけません。1-60 の数値を設定します。MAILTOyumの出力情報をメールで送信する先の送信先を設定します。デフォルトは、root 宛てに送信します。SYSTEMNAMEyumで使用するメール内のデフォルトのホスト名と異なるシステム名を使いたい場合に設定します。ここで設定した名前は、MAILTO で送信されるメールにも使用されます。DAYS_OF_WEEK実施する曜日(数値 0:日曜日-6:土曜日)を指定します。デフォルトでは、”0123456″ で毎日実施されます。CLEANDAY消去する曜日を指定します。デフォルト 0 (日曜日) 上記のDAYS_OF_WEEKに設定されていないなら、消去されません。SERVICE_WAITS転送完了まで yum-cron サービスを待たせるか否かを設定します。yes:待たせるSERVICE_WAIT_TIME転送完了まで yum-cron サービスの最大待ち時間を設定します。 デフォルト 300 秒(5分)ここでは、
CHECK_ONLY , DOWNLOAD_ONLY は、意識して設定すべきでしょう。
いずれも no を設定しておくと自動で更新まで実施してくれます。
CHECK_ONLY=yes
DOWNLOAD_ONLY=no
とするとチェックのみ実施されます。
※チェック+ダウンロードまでしたい場合は、DOWNLOAD_ONLY=yesとします。
また、
CHECK_ONLY=no
DOWNLOAD_ONLY=no
とすると自動的にアップデートまで実施します。
ただ、ほとんどは、負荷の少ない夜中に実施するでしょうから、もしもエラーが発生した際は、最悪の場合、システムに異常をきたすかもしれません。
その対応までを考慮すれば、しばらくは、ダウンロードまでを実施、手動でアップデートを行うことでしょうね。 しばらく問題がなければ、自動更新に切り替える・・・という手順でも良いかもしれません。
自動更新でシステム異常となることは、早々ありません。そのリスクをどう見るか・・・でしょうね。
また、更新があるとroot宛てにメールが来ます。
メールの送信先を変更したい場合は、MAILTOにメールアドレス(ユーザ名)を指定することでyumのメールの送信先を変更することができます。
MAILTO=hoge
と設定すれば、hoge宛てにメールを送信することができます。
- yum-cronを起動
$ /etc/rc.d/init.d/yum-cron start
- yum-cronをシステム再起動でも起動させる
$ chkconfig yum-cron on
ここで一部説明しているcronは、LinuxをはじめとしてUNIX系では、自動化するためによく使います。
理解しておくと非常に便利な機能です。
格安レンタルサーバーを使う場合にも、これからサイトの立ち上げた後、mysqlのバックアップやHTML,phpファイルのバックアップなどを自動化するのもこのcronを利用します。
参照記事:
・CRON(クーロン)とは…
・cron(クーロン) を使いたい方へのおすすめは…
このシステムのアップデートの作業を終えたら、「評判のさくらのVPSを使うときに最初にやっておきたいこと(CentOS編)」の基本設定を行っておきましょう。 (「評判のさくらのVPSを使うときに最初にやっておきたいこと(CentOS編)」は、さくらのVPSの設定のようなタイトルになっていますが、サーバーとしてCentOSを利用するなら、同じ手順で無駄なリソースを使わないように設定できます。)
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。
コメントを投稿 :