Debian6(Squeeze)からDebian7(Wheezy)にアップグレード

さくらVPS上で動いてるOSのアップグレードをしようと思います。
このサイトのサーバは「Debian6」で動いていましたが、「Debian7」にアップグレードしました。今回のアップグレードでは「sudo」の設定が変わったり、「Suhosin PHP モジュール」が削除されていて、ちょっと手間がかかったのでそれも記載しいきます。
また、宇宙ステーションで使っているノートPCはWindowsXPから変更してDebian6を使うことになったようですね。。
http://www.gizmodo.jp/2013/05/oswindows.html
http://training.linuxfoundation.org/why-our-linux-training/training-reviews/linux-foundation-training-prepares-the-international-space-station-for-linux-migration
宇宙ステーションで使うPCとかって、独自OS使っているものだと勝手に思っていたので、Windowsを使っていたことに逆に驚いていますが、Linuxの領域も家電、ロボット、スマホ等々どんどん広がっていってますね。

 

毎回書いてますが、DebianのコードネームはToyStoryキャラクターから付けていて今回は「Squeeze」→「Wheezy」だよ!

Squeeze      wheezy
じゃあ、アップグレードします。

基本的には「Debian 6.0 (squeeze) からのアップグレード」を参照しながら行います。
http://www.debian.org/releases/wheezy/i386/release-notes/ch-upgrading.ja.html
・まずは、バックアップ
http://brokendish.org/debian/1723/
でやっているのでOK

 

・パッケージの状態をチェックする

dpkg --audit

 

・hold 状態にあるパッケージを確認する

dpkg --get-selections | grep 'hold$'

 

・衝突しているパッケージを削除する

apt-get search splashy

 

・sources.listを編集

vi /etc/apt/sources.list

deb http://ftp.jp.debian.org/debian wheezy main
deb-src http://ftp.jp.debian.org/debian wheezy main
 
deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

 

・パッケージリストの更新

apt-get update

 

・まずは、システムの最小アップグレードを行う

apt-get upgrade

 

・システムのアップグレード

apt-get dist-upgrade

インストール中に設定ファイルを上書きするかの確認が出てくる

再設定したくないので今までの設定ファイルを使う「デフォルト=N」にしておく

Apache2のアップグレードでエラーになっている様子(後で見る)

アップグレード終了

 

・システムの再起動

shitdown -r now

 

 

・サービスが動いているか確認

Apache2はやっぱり動いてないので起動してみると・・

apache2: Syntax error on line 207 of /etc/apache2/apache2.conf: Could not open configuration file /etc/apache2/httpd.conf: No such file or directory
Action ‘configtest’ failed.
The Apache error log may have more information.
failed!

解決方法

vi /etc/apache2/apache2.conf

# Include all the user configurations:
#Include httpd.conf <<ここをコメントアウト


/etc/init.d# ./apache2 restart
[ ok ] Restarting web server: apache2.

 

次の問題

Suhosin PHP モジュールのロードに失敗する

dpkg --purge php5-suhosin

で削除する

 

次の問題
・sudo -sでRootになった時にPATHの設定が出来てない

(注): root の PATH は通常、/usr/local/sbin:/usr/sbin:/sbin を含んでいるはずです。
E: Sub-process /usr/bin/dpkg returned an error code (2)


●暫定対応として「sudo -s」した後に、sbinのパスを通す
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin:/usr/sbin:/sbin

 

●本格対応
sudoersの設定ファイルが変わっているので変更する
(Apacheの設定ファイルのように分割されたみたい)

visudo -f /etc/sudoers.d/mySudoers

# Host alias specification
 
# User alias specification
 
# Cmnd alias specification
 
# User privilege specification
root ALL=(ALL) ALL
 
# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
%hoge ALL=NOPASSWD: ALL
 
Defaults syslog=local3

今までの設定ファイルを修正する
visudo

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
#includedir /etc/sudoers.d
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

——————————————-

 

・正常に動き出したのでバージョンを確認してみる

uname -a
Linux brokendish 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2+deb7u2 x86_64 GNU/Linux
cat /etc/debian_version
7.0

 

今回は色々めんどくさかったな。

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です