CentOS6.9を7.3にアップグレード

CentOS6系から7系へのアップグレードはアップグレードツールが存在するのですが、このツールは6.7以上で実行すると問題があると書かれているます。
TipsAndTricks/CentOSUpgradeTool – CentOS Wiki

色々ググると6.5からならアップグレードできたという記事が多い反面、6.8からアップグレードしようとしてエラーが出たという記事もありました。
CentOS6.8 から CentOS7 へのアップグレード – demandosigno
↑の記事を読むと、openscapをバージョンダウンさせるといけそうという話があったのでその方法で試してみました。

注意:アップグレード後の起動時にsshdが止まっているのでコンソールアクセスができる状態が必要です。
また一時的にsudoが動かなくなったりする場合があるのでrootのパスワードを忘れないように。
あと他にも何が起こるかわからないので重要なファイルはバックアップを。

アップグレードツールを落とすためのリポジトリをyum.repos.dに追加。

ツールインストール。

アップグレード前診断的なコマンド実行。

エラーになりました。
CentOS6.8 から CentOS7 へのアップグレード – demandosignoのコメントを参考にopenscapをダウングレード。

preupg通ったっぽい。

preupgrade/result.htmlを除いてみる。needs_actionの項目は要注意っぽい。
よくわからないのもあるけど一部対処。

やれと書かれているのでやります。

仮想環境で先に一度試した時、この中の一部のパッケージは確かにライブラリが無いよ状態みたいなのになってたので –cleanup-post(6から7で廃止されたパッケージを自動的に削除するオプション)を付けることにします。

アップグレード。

INPLACERISKとかいうのが沢山出てくるけどとりあえずy

エラー。
sgrastar blogを参考にinstrepoを変更してみる。

またエラー。
repodata/3a1b41925bb25892c1003b22979ea0705aa815fed57f992cf0229b76539a9ac4-filelists.sqlite.bz2はmirror.centos.orgにはある模様。

redhat-upgrade-tool-cli –helpを見たところ–addrepoという引数があるっぽいので試してみる。

通ったっぽい。

grep: error while loading shared libraries~とかいうのが大量に出ましたが待ってたら終わりました。

sshdが止まってるので7系からの新スタイルで起動と自動起動設定。

起動失敗しました。
色々ググったら解決してる方が。
CentOS 6.5からCentOS 7.0へのアップグレード(補足トラブル:対処) – Marlock Homes Diary

起動しました。

これでSSHが繋がりました。

アップグレード成功っぽい。

grepしようとしたらエラー。

CentOS7へのアップデートでハマった – Qiitaを参考に

したら直しました。

yumを使おうとしたらエラー。

rpm -ql yumを見るとyumモジュールは/usr/lib/python2.7/site-packages/yumにインストールされているのに対して

/usr/libがありません。
CentOSリポジトリのpythonバージョンは2.7.5だけど過去に手動で2.7.8をビルドしてaltinstallしたせいな気がする。
というかリポジトリから2.7.5も入れたはずなのにどの実行ファイルをpython -Vしても2.7.8って出て謎…。
/usr/local/のパスしか見てないようなのでPythonでデフォルトパスを追加する方法 | 凡人のブログを参考に既存のパスに無理やりyumに必要なパスを追加しました。

以下2ディレクトリを追加

したらyumが動くようになりました。
2.7.8のsite-packagesと2.7.5のsite-packagesが混ざっちゃってる気もするけど同じ2.7だし大丈夫でしょたぶん…。

httpdの起動エラー。
モジュール云々はCentOS7にアップグレードしたらApacheのバージョンが2.4になった! – My Happinessを参考にしつつエラー出るモジュールををひたすらコメントアウト。
あとsystemctlの出力が…で省略されて読めない時は-lオプションを付けるといいみたいです。
モジュール色々コメントアウトしたら次はphpのエラー。

たぶん以前php5.5をremiから入れたせいだと思うので消して公式リポジトリから再インストールしてみたら直りました。

MySQLから置き換わったMariaDBを起動しようとしたところ

/var/log/を見たところmysqld.log.rpmsaveというバックアップファイルができていてるのでこれを戻してみます。

そしたらまた起動失敗したので/var/log/mysqld.logをみると

というエラー。

これで起動しました。(参考:mysql5.7が急に起動しなくなった – Qiita

MariaDBに置き換わってもMySQL時代に入れたデータは引き継がれてるみたいです。

あとepelとremiがCentOS6用のままなのでアップデートします。

こうするとyumの気遣いでepel.repoは更新されずepel.repo.rpmnewとして配置されるので入れ替えます。

epelとremi-safeがデフォルトでenabled=1になっていたので一応0にしておきました。

こんな感じでだいたい動くようになった気がします。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

コメント

  1. 通りすがり より:

    素晴らしい記事をありがとうございます。
    バージョンアップができなく色々なサイトをめぐっておりましたが最終的にこの記事のおかげでアップデートできました。