CentOS7が出たのでRC版から正式版にアップデートしてみた

CentOS7がリリースされたので、CentOS7 RC版でインストールしたマシンを、正式版にできないかやってみた。
 ・CentOS7のリリースのアナウンス:[CentOS-announce] Release for CentOS-7 on x86_64
 ・CentOS7のリリースノート:CentOS 7.0.1406 Release Notes

とりあえず、centos-releaseをアップデートすればいいのかなぁ、とやってみた。
試した時点ではkddlabsにはまだ無かったので、iijからファイルを持ってきた。

[root@cent7rc]# wget http://ftp.iij.ad.jp/pub/linux/centos/7/os/x86_64/Packages/centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm
--2014-07-08 09:41:10--  http://ftp.iij.ad.jp/pub/linux/centos/7/os/x86_64/Packages/centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm
ftp.iij.ad.jp (ftp.iij.ad.jp) をDNSに問いあわせています... 202.232.140.170, 2001:240:bb8f:200::1:170
ftp.iij.ad.jp (ftp.iij.ad.jp)|202.232.140.170|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 20100 (20K) [application/x-rpm]
`centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm' に保存中

100%[======================================>] 20,100      --.-K/s 時間 0.01s

2014-07-08 09:41:11 (1.47 MB/s) - `centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm' へ保存完了 [20100/20100]

[root@cent7rc ~]# rpm -Uvh centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm
警告: centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm: ヘッダー V3 RSA/SHA256 Signature、鍵 ID f4a80eb5: NOKEY
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:centos-release-7-0.1406.el7.cento################################# [ 50%]
エラー: アーカイブの伸長に失敗: ファイル /usr/share/doc/redhat-release: cpio: rename失敗 - ディレクトリです
エラー: centos-release-7-0.1406.el7.centos.2.3.x86_64: インストール 失敗
エラー: centos-release-7-0.el7.0.140617.3.x86_64: 削除 スキップした
[root@cent7rc ~]#

失敗した。

が・・・/etc/yum.repos.d/には、さっきまで無かったファイル群が・・・

[root@cent7rc ~]# ls -l /etc/yum.repos.d/
合計 16
-rw-r--r--. 1 root root 1612  7月  4 20:00 CentOS-Base.repo
-rw-r--r--. 1 root root  640  7月  4 20:00 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 1331  7月  4 20:00 CentOS-Sources.repo
-rw-r--r--. 1 root root  156  7月  4 20:00 CentOS-Vault.repo
[root@cent7rc]#

では、ということで「yum update」

[root@cent7rc ~]# yum update
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.tsukuba.wide.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ NetworkManager.x86_64 1:0.9.9.1-13.git20140326.4dba720.el7 を 更新
---> パッケージ NetworkManager.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 を アップデート
---> パッケージ NetworkManager-glib.x86_64 1:0.9.9.1-13.git20140326.4dba720.el7 を 更新
---> パッケージ NetworkManager-glib.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 を アップデート
---> パッケージ NetworkManager-tui.x86_64 1:0.9.9.1-13.git20140326.4dba720.el7  を 更新
---> パッケージ NetworkManager-tui.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 を アップデート
---> パッケージ anaconda.x86_64 0:19.31.79-1.el7.centos.3 を 更新
---> パッケージ anaconda.x86_64 0:19.31.79-1.el7.centos.4 を アップデート
---> パッケージ anaconda-widgets.x86_64 0:19.31.79-1.el7.centos.3 を 更新
---> パッケージ anaconda-widgets.x86_64 0:19.31.79-1.el7.centos.4 を アップデー ト
---> パッケージ centos-logos.noarch 0:70.0.5-1.el7.centos を 更新
---> パッケージ centos-logos.noarch 0:70.0.6-1.el7.centos を アップデート
---> パッケージ centos-release.x86_64 0:7-0.el7.0.140617.3 を 更新
---> パッケージ centos-release.x86_64 0:7-0.1406.el7.centos.2.3 を アップデート
---> パッケージ evolution.x86_64 0:3.8.5-21.el7 を 更新
---> パッケージ evolution.x86_64 0:3.8.5-22.el7_0.1 を アップデート
---> パッケージ evolution-data-server.x86_64 0:3.8.5-23.el7 を 更新
---> パッケージ evolution-data-server.x86_64 0:3.8.5-24.el7_0 を アップデート
---> パッケージ evolution-help.noarch 0:3.8.5-21.el7 を 更新
---> パッケージ evolution-help.noarch 0:3.8.5-22.el7_0.1 を アップデート
---> パッケージ firefox.x86_64 0:24.5.0-1.el7.centos を 更新
---> パッケージ firefox.x86_64 0:24.6.0-1.el7.centos を アップデート
---> パッケージ fprintd.x86_64 0:0.5.0-3.el7 を 更新
---> パッケージ fprintd.x86_64 0:0.5.0-4.0.el7_0 を アップデート
---> パッケージ fprintd-pam.x86_64 0:0.5.0-3.el7 を 更新
---> パッケージ fprintd-pam.x86_64 0:0.5.0-4.0.el7_0 を アップデート
---> パッケージ gdm.x86_64 1:3.8.4-27.el7 を 更新
---> パッケージ gdm.x86_64 1:3.8.4-28.el7_0.1 を アップデート
---> パッケージ gdm-libs.x86_64 1:3.8.4-27.el7 を 更新
---> パッケージ gdm-libs.x86_64 1:3.8.4-28.el7_0.1 を アップデート
---> パッケージ gnome-classic-session.noarch 0:3.8.4-9.el7 を 更新
---> パッケージ gnome-classic-session.noarch 0:3.8.4-10.el7_0 を アップデート
---> パッケージ gnome-online-accounts.x86_64 0:3.8.5-8.el7 を 更新
---> パッケージ gnome-online-accounts.x86_64 0:3.8.5-9.el7_0.1 を アップデート
---> パッケージ gnome-settings-daemon.x86_64 0:3.8.6.1-9.el7 を 更新
---> パッケージ gnome-settings-daemon.x86_64 0:3.8.6.1-9.el7_0.1 を アップデート
---> パッケージ gnome-settings-daemon-updates.x86_64 0:3.8.6.1-9.el7 を 更新
---> パッケージ gnome-settings-daemon-updates.x86_64 0:3.8.6.1-9.el7_0.1 を アップデート
---> パッケージ gnome-shell.x86_64 0:3.8.4-31.el7 を 更新
---> パッケージ gnome-shell.x86_64 0:3.8.4-32.el7_0 を アップデート
---> パッケージ gnome-shell-extension-alternate-tab.noarch 0:3.8.4-9.el7 を 更新
---> パッケージ gnome-shell-extension-alternate-tab.noarch 0:3.8.4-10.el7_0 を  アップデート
---> パッケージ gnome-shell-extension-apps-menu.noarch 0:3.8.4-9.el7 を 更新
---> パッケージ gnome-shell-extension-apps-menu.noarch 0:3.8.4-10.el7_0 を アッ プデート
---> パッケージ gnome-shell-extension-common.noarch 0:3.8.4-9.el7 を 更新
---> パッケージ gnome-shell-extension-common.noarch 0:3.8.4-10.el7_0 を アップデート
---> パッケージ gnome-shell-extension-launch-new-instance.noarch 0:3.8.4-9.el7  を 更新
---> パッケージ gnome-shell-extension-launch-new-instance.noarch 0:3.8.4-10.el7_0 を アップデート
---> パッケージ gnome-shell-extension-places-menu.noarch 0:3.8.4-9.el7 を 更新
---> パッケージ gnome-shell-extension-places-menu.noarch 0:3.8.4-10.el7_0 を ア ップデート
---> パッケージ gnome-shell-extension-window-list.noarch 0:3.8.4-9.el7 を 更新
---> パッケージ gnome-shell-extension-window-list.noarch 0:3.8.4-10.el7_0 を ア ップデート
---> パッケージ gnutls.x86_64 0:3.1.18-8.el7 を 更新
---> パッケージ gnutls.x86_64 0:3.1.18-9.el7_0 を アップデート
---> パッケージ gnutls-dane.x86_64 0:3.1.18-8.el7 を 更新
---> パッケージ gnutls-dane.x86_64 0:3.1.18-9.el7_0 を アップデート
---> パッケージ gnutls-utils.x86_64 0:3.1.18-8.el7 を 更新
---> パッケージ gnutls-utils.x86_64 0:3.1.18-9.el7_0 を アップデート
---> パッケージ java-1.7.0-openjdk.x86_64 1:1.7.0.51-2.4.5.5.el7 を 更新
---> パッケージ java-1.7.0-openjdk.x86_64 1:1.7.0.55-2.4.7.2.el7_0 を アップデート
---> パッケージ java-1.7.0-openjdk-headless.x86_64 1:1.7.0.51-2.4.5.5.el7 を 更 新
---> パッケージ java-1.7.0-openjdk-headless.x86_64 1:1.7.0.55-2.4.7.2.el7_0 を  アップデート
---> パッケージ json-c.x86_64 0:0.11-3.el7 を 更新
---> パッケージ json-c.x86_64 0:0.11-4.el7_0 を アップデート
---> パッケージ kernel.x86_64 0:3.10.0-123.4.2.el7 を インストール
---> パッケージ kernel-tools.x86_64 0:3.10.0-123.el7 を 更新
---> パッケージ kernel-tools.x86_64 0:3.10.0-123.4.2.el7 を アップデート
---> パッケージ kernel-tools-libs.x86_64 0:3.10.0-123.el7 を 更新
---> パッケージ kernel-tools-libs.x86_64 0:3.10.0-123.4.2.el7 を アップデート
---> パッケージ kexec-tools.x86_64 0:2.0.4-32.el7 を 更新
---> パッケージ kexec-tools.x86_64 0:2.0.4-32.el7.centos.1 を アップデート
---> パッケージ kpatch.noarch 0:0.0-1.el7 を 更新
---> パッケージ kpatch.noarch 0:0.1.2-1.el7_0 を アップデート
---> パッケージ libcacard.x86_64 10:1.5.3-60.el7 を 更新
---> パッケージ libcacard.x86_64 10:1.5.3-60.el7_0_0.2 を アップデート
---> パッケージ libipa_hbac.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ libipa_hbac.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ libipa_hbac-python.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ libipa_hbac-python.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ libsmbclient.x86_64 0:4.1.1-31.el7 を 更新
---> パッケージ libsmbclient.x86_64 0:4.1.1-33.el7_0 を アップデート
---> パッケージ libsss_idmap.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ libsss_idmap.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ libtasn1.x86_64 0:3.3-3.el7 を 更新
---> パッケージ libtasn1.x86_64 0:3.3-5.el7_0 を アップデート
---> パッケージ libwbclient.x86_64 0:4.1.1-31.el7 を 更新
---> パッケージ libwbclient.x86_64 0:4.1.1-33.el7_0 を アップデート
---> パッケージ mariadb-libs.x86_64 1:5.5.35-3.el7 を 更新
---> パッケージ mariadb-libs.x86_64 1:5.5.37-1.el7_0 を アップデート
---> パッケージ microcode_ctl.x86_64 2:2.1-7.1.el7 を 更新
---> パッケージ microcode_ctl.x86_64 2:2.1-7.1.el7_0.1 を アップデート
---> パッケージ openssl.x86_64 1:1.0.1e-34.el7 を 更新
---> パッケージ openssl.x86_64 1:1.0.1e-34.el7_0.3 を アップデート
---> パッケージ openssl-libs.x86_64 1:1.0.1e-34.el7 を 更新
---> パッケージ openssl-libs.x86_64 1:1.0.1e-34.el7_0.3 を アップデート
---> パッケージ python-sssdconfig.noarch 0:1.11.2-65.el7 を 更新
---> パッケージ python-sssdconfig.noarch 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ qemu-guest-agent.x86_64 10:1.5.3-60.el7 を 更新
---> パッケージ qemu-guest-agent.x86_64 10:1.5.3-60.el7_0_0.2 を アップデート
---> パッケージ qemu-img.x86_64 10:1.5.3-60.el7 を 更新
---> パッケージ qemu-img.x86_64 10:1.5.3-60.el7_0_0.2 を アップデート
---> パッケージ qemu-kvm.x86_64 10:1.5.3-60.el7 を 更新
---> パッケージ qemu-kvm.x86_64 10:1.5.3-60.el7_0_0.2 を アップデート
---> パッケージ qemu-kvm-common.x86_64 10:1.5.3-60.el7 を 更新
---> パッケージ qemu-kvm-common.x86_64 10:1.5.3-60.el7_0_0.2 を アップデート
---> パッケージ samba-client.x86_64 0:4.1.1-31.el7 を 更新
---> パッケージ samba-client.x86_64 0:4.1.1-33.el7_0 を アップデート
---> パッケージ samba-common.x86_64 0:4.1.1-31.el7 を 更新
---> パッケージ samba-common.x86_64 0:4.1.1-33.el7_0 を アップデート
---> パッケージ samba-libs.x86_64 0:4.1.1-31.el7 を 更新
---> パッケージ samba-libs.x86_64 0:4.1.1-33.el7_0 を アップデート
---> パッケージ selinux-policy.noarch 0:3.12.1-153.el7 を 更新
---> パッケージ selinux-policy.noarch 0:3.12.1-153.el7_0.10 を アップデート
---> パッケージ selinux-policy-targeted.noarch 0:3.12.1-153.el7 を 更新
---> パッケージ selinux-policy-targeted.noarch 0:3.12.1-153.el7_0.10 を アップデート
---> パッケージ shim.x86_64 0:0.7-5.2.el7.centos.1 を 更新
---> パッケージ shim.x86_64 0:0.7-5.2.el7.centos.2 を アップデート
---> パッケージ sssd.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-ad.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-ad.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-client.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-client.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-common.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-common.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-common-pac.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-common-pac.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-ipa.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-ipa.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-krb5.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-krb5.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-krb5-common.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-krb5-common.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-ldap.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-ldap.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ sssd-proxy.x86_64 0:1.11.2-65.el7 を 更新
---> パッケージ sssd-proxy.x86_64 0:1.11.2-68.el7_0.5 を アップデート
---> パッケージ tuned.noarch 0:2.3.0-11.el7 を 更新
---> パッケージ tuned.noarch 0:2.3.0-11.el7_0.3 を アップデート
---> パッケージ tzdata.noarch 0:2014b-1.el7 を 更新
---> パッケージ tzdata.noarch 0:2014e-1.el7_0 を アップデート
---> パッケージ tzdata-java.noarch 0:2014b-1.el7 を 更新
---> パッケージ tzdata-java.noarch 0:2014e-1.el7_0 を アップデート
---> パッケージ webkitgtk3.x86_64 0:2.0.4-6.el7 を 更新
---> パッケージ webkitgtk3.x86_64 0:2.0.4-6.el7_0.1 を アップデート
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package                         アーキテクチャー
                                        バージョン                リポジトリー
                                                                           容量
================================================================================
インストール中:
 kernel                          x86_64 3.10.0-123.4.2.el7        updates  29 M
更新します:
 NetworkManager                  x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0
                                                                  updates 1.4 M
 NetworkManager-glib             x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0
                                                                  updates 369 k
 NetworkManager-tui              x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0
                                                                  updates 190 k
 anaconda                        x86_64 19.31.79-1.el7.centos.4   base    2.2 M
 anaconda-widgets                x86_64 19.31.79-1.el7.centos.4   base    715 k
 centos-logos                    noarch 70.0.6-1.el7.centos       base     21 M
 centos-release                  x86_64 7-0.1406.el7.centos.2.3   base     20 k
 evolution                       x86_64 3.8.5-22.el7_0.1          updates 8.3 M
 evolution-data-server           x86_64 3.8.5-24.el7_0            updates 2.8 M
 evolution-help                  noarch 3.8.5-22.el7_0.1          updates 3.0 M
 firefox                         x86_64 24.6.0-1.el7.centos       updates  49 M
 fprintd                         x86_64 0.5.0-4.0.el7_0           updates  75 k
 fprintd-pam                     x86_64 0.5.0-4.0.el7_0           updates  15 k
 gdm                             x86_64 1:3.8.4-28.el7_0.1        updates 912 k
 gdm-libs                        x86_64 1:3.8.4-28.el7_0.1        updates  13 k
 gnome-classic-session           noarch 3.8.4-10.el7_0            updates  23 k
 gnome-online-accounts           x86_64 3.8.5-9.el7_0.1           updates 394 k
 gnome-settings-daemon           x86_64 3.8.6.1-9.el7_0.1         updates 1.2 M
 gnome-settings-daemon-updates   x86_64 3.8.6.1-9.el7_0.1         updates  53 k
 gnome-shell                     x86_64 3.8.4-32.el7_0            updates 1.2 M
 gnome-shell-extension-alternate-tab
                                 noarch 3.8.4-10.el7_0            updates  15 k
 gnome-shell-extension-apps-menu noarch 3.8.4-10.el7_0            updates  18 k
 gnome-shell-extension-common    noarch 3.8.4-10.el7_0            updates  91 k
 gnome-shell-extension-launch-new-instance
                                 noarch 3.8.4-10.el7_0            updates  14 k
 gnome-shell-extension-places-menu
                                 noarch 3.8.4-10.el7_0            updates  17 k
 gnome-shell-extension-window-list
                                 noarch 3.8.4-10.el7_0            updates  22 k
 gnutls                          x86_64 3.1.18-9.el7_0            updates 609 k
 gnutls-dane                     x86_64 3.1.18-9.el7_0            updates  51 k
 gnutls-utils                    x86_64 3.1.18-9.el7_0            updates 207 k
 java-1.7.0-openjdk              x86_64 1:1.7.0.55-2.4.7.2.el7_0  updates 209 k
 java-1.7.0-openjdk-headless     x86_64 1:1.7.0.55-2.4.7.2.el7_0  updates  25 M
 json-c                          x86_64 0.11-4.el7_0              updates  31 k
 kernel-tools                    x86_64 3.10.0-123.4.2.el7        updates 669 k
 kernel-tools-libs               x86_64 3.10.0-123.4.2.el7        updates 609 k
 kexec-tools                     x86_64 2.0.4-32.el7.centos.1     updates 320 k
 kpatch                          noarch 0.1.2-1.el7_0             updates 7.8 k
 libcacard                       x86_64 10:1.5.3-60.el7_0_0.2     updates 175 k
 libipa_hbac                     x86_64 1.11.2-68.el7_0.5         updates  73 k
 libipa_hbac-python              x86_64 1.11.2-68.el7_0.5         updates  67 k
 libsmbclient                    x86_64 4.1.1-33.el7_0            updates 114 k
 libsss_idmap                    x86_64 1.11.2-68.el7_0.5         updates  77 k
 libtasn1                        x86_64 3.3-5.el7_0               updates 316 k
 libwbclient                     x86_64 4.1.1-33.el7_0            updates  84 k
 mariadb-libs                    x86_64 1:5.5.37-1.el7_0          updates 752 k
 microcode_ctl                   x86_64 2:2.1-7.1.el7_0.1         updates 488 k
 openssl                         x86_64 1:1.0.1e-34.el7_0.3       updates 705 k
 openssl-libs                    x86_64 1:1.0.1e-34.el7_0.3       updates 939 k
 python-sssdconfig               noarch 1.11.2-68.el7_0.5         updates  97 k
 qemu-guest-agent                x86_64 10:1.5.3-60.el7_0_0.2     updates 240 k
 qemu-img                        x86_64 10:1.5.3-60.el7_0_0.2     updates 596 k
 qemu-kvm                        x86_64 10:1.5.3-60.el7_0_0.2     updates 1.8 M
 qemu-kvm-common                 x86_64 10:1.5.3-60.el7_0_0.2     updates 307 k
 samba-client                    x86_64 4.1.1-33.el7_0            updates 516 k
 samba-common                    x86_64 4.1.1-33.el7_0            updates 690 k
 samba-libs                      x86_64 4.1.1-33.el7_0            updates 4.3 M
 selinux-policy                  noarch 3.12.1-153.el7_0.10       updates 340 k
 selinux-policy-targeted         noarch 3.12.1-153.el7_0.10       updates 3.8 M
 shim                            x86_64 0.7-5.2.el7.centos.2      base    671 k
 sssd                            x86_64 1.11.2-68.el7_0.5         updates  66 k
 sssd-ad                         x86_64 1.11.2-68.el7_0.5         updates 169 k
 sssd-client                     x86_64 1.11.2-68.el7_0.5         updates 120 k
 sssd-common                     x86_64 1.11.2-68.el7_0.5         updates 1.2 M
 sssd-common-pac                 x86_64 1.11.2-68.el7_0.5         updates 121 k
 sssd-ipa                        x86_64 1.11.2-68.el7_0.5         updates 273 k
 sssd-krb5                       x86_64 1.11.2-68.el7_0.5         updates 110 k
 sssd-krb5-common                x86_64 1.11.2-68.el7_0.5         updates 203 k
 sssd-ldap                       x86_64 1.11.2-68.el7_0.5         updates 203 k
 sssd-proxy                      x86_64 1.11.2-68.el7_0.5         updates 117 k
 tuned                           noarch 2.3.0-11.el7_0.3          updates 145 k
 tzdata                          noarch 2014e-1.el7_0             updates 433 k
 tzdata-java                     noarch 2014e-1.el7_0             updates 148 k
 webkitgtk3                      x86_64 2.0.4-6.el7_0.1           updates  10 M

トランザクションの要約
================================================================================
インストール   1 パッケージ
更新          72 パッケージ

総ダウンロード容量: 180 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for base
No Presto metadata available for updates
警告: /var/cache/yum/x86_64/7/updates/packages/NetworkManager-glib-0.9.9.1-23.git20140326.4dba720.el7_0.x86_64.rpm: ヘッダー V3 RSA/SHA256 Signature、鍵 ID f4a80eb5: NOKEY
NetworkManager-glib-0.9.9.1-23.git20140326.4dba720.el7_0.x86_64.rpm の公開鍵がインストールされていません
(1/73): NetworkManager-glib-0.9.9.1-23.git20140326.4dba720 | 369 kB   00:00
<略>
(73/73): webkitgtk3-2.0.4-6.el7_0.1.x86_64.rpm             |  10 MB   00:01
--------------------------------------------------------------------------------
合計                                               8.3 MB/s | 180 MB  00:21
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 から鍵を取得中です。
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-0.el7.0.140617.3.x86_64 (@base/$releasever)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  更新します              : libwbclient-4.1.1-33.el7_0.x86_64             1/145
<略>
  更新します              : centos-release-7-0.1406.el7.centos.2.3.x8    62/145
Error unpacking rpm package centos-release-7-0.1406.el7.centos.2.3.x86_64
error: unpacking of archive failed on file /usr/share/doc/redhat-release: cpio: rename
  更新します              : 10:libcacard-1.5.3-60.el7_0_0.2.x86_64       63/145
<略>
  更新します              : json-c-0.11-4.el7_0.x86_64                   71/145
  インストール中          : kernel-3.10.0-123.4.2.el7.x86_64             72/145
  更新します              : 10:qemu-guest-agent-1.5.3-60.el7_0_0.2.x8    73/145
  整理中                  : sssd-1.11.2-65.el7.x86_64                    74/145
<略>
  整理中                  : 10:qemu-guest-agent-1.5.3-60.el7.x86_64     144/145
  検証中                  : evolution-3.8.5-22.el7_0.1.x86_64             1/145
<略>
  検証中                  : gnome-shell-extension-apps-menu-3.8.4-9.e   131/145
centos-release-7-0.el7.0.140617.3.x86_64 was supposed to be removed but is not!
  検証中                  : centos-release-7-0.el7.0.140617.3.x86_64    132/145
  検証中                  : 1:java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7   133/145
<略>
  検証中                  : 1:java-1.7.0-openjdk-headless-1.7.0.51-2.   145/145

インストール:
  kernel.x86_64 0:3.10.0-123.4.2.el7

更新:
  NetworkManager.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0
<略>
  webkitgtk3.x86_64 0:2.0.4-6.el7_0.1

失敗:
  centos-release.x86_64 0:7-0.el7.0.140617.3
  centos-release.x86_64 0:7-0.1406.el7.centos.2.3

完了しました!
[root@cent7rc ~]#

centos-releaseのインストールに失敗している?
rpmコマンドを実行して確認してみるとRC時代のものが残っている模様

[root@cent7rc ~]# rpm -qa|grep release
centos-release-7-0.el7.0.140617.3.x86_64
[root@cent7rc ~]#

rpmファイルを–forceで適用しようとしても、同じ状態

[root@cent7rc ~]# rpm -Uvh --force centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:centos-release-7-0.1406.el7.cento################################# [100%]
エラー: アーカイブの伸長に失敗: ファイル /usr/share/doc/redhat-release: cpio: rename失敗 - ディレクトリです
エラー: centos-release-7-0.1406.el7.centos.2.3.x86_64: インストール 失敗
[root@cent7rc ~]#

ファイルが壊れているのかとrpm2cpio/cpioで展開してみると、それは正常終了

[root@cent7rc tmp]# rpm2cpio ../centos-release-7-0.1406.el7.centos.2.3.x86_64.rpm |cpio -ivd
./etc/centos-release
./etc/issue
./etc/issue.net
./etc/os-release
./etc/pki/rpm-gpg
./etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
./etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Debug-7
./etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Testing-7
./etc/redhat-release
./etc/rpm/macros.dist
./etc/system-release
./etc/system-release-cpe
./etc/yum.repos.d/CentOS-Base.repo
./etc/yum.repos.d/CentOS-Debuginfo.repo
./etc/yum.repos.d/CentOS-Sources.repo
./etc/yum.repos.d/CentOS-Vault.repo
./usr/lib/systemd/system-preset/85-display-manager.preset
./usr/lib/systemd/system-preset/90-default.preset
./usr/share/centos-release/EULA
./usr/share/doc/centos-release/Contributors
./usr/share/doc/centos-release/GPL
./usr/share/doc/redhat-release
./usr/share/redhat-release
67 blocks
[root@cent7rc tmp]#

謎な状態ですね。

まぁ、テストマシンなので、気にせず消しましょうかね・・・

MySQLとpostgresqlでのレプリケーション動作検証時使用perlスクリプト

MySQLのレプリケーション機能を使うとどのような動きをするのかを確認中。

テストデータのインサートと確認を行うためのスクリプトを作成した。

標準で用意されているデータベース「test」内にテーブル「testtable」を作成して、そこにデータを投入することにした。

# mysql -u root
mysql> use test;
mysql> create table testtable (
	id int(20) not null auto_increment,
	name char(100) default '' not null,
	text char(255) default '',
	primary key (id)
);
mysql> grant all on test.* to テストユーザ名@ホスト名 identified by 'パスワード';
mysql>

スクリプトはperl。
perl-DBD-MySQLパッケージをインストールしておくこと。

#!/usr/bin/perl

use DBI;

my $mysqluser="MySQL内のユーザ名";
my $mysqlpassword="パスワード";
my $masterserver="マスタサーバ名";
my $slaveserver="スレーブサーバ名";
my $dbname="test";
my $tablename="testtable";
$max=5;

sub getselect{
	my($server,$user,$password,$dbname,$tablename)=@_;
	my $db=DBI->connect("DBI:mysql:$dbname:$server",$user,$password);
	my $sth=$db->prepare("select id,name,text from $tablename order by id desc");
	$sth->execute;
	print "\tname\ttext\n";
	my $count=$max;
	for(my $i=0; $i&lt;$sth->rows; $i++){
		my @tmp=$sth->fetchrow_array;
		if($count>0){
			print $tmp[0] ."\t". $tmp[1] ."\t". $tmp[2] ."\n";
			$count--;
		}
	}
	$sth->finish;
	$db->disconnect;
}

sub insertvalue{
	my($server,$user,$password,$dbname,$tablename)=@_;
	my $db=DBI->connect("DBI:mysql:$dbname:$server",$user,$password);
	my $str1=substr("00".rand(100),-3);
	my $str2=localtime();
	my $sth=$db->prepare("insert into $tablename values (NULL,'name$str1','$str2')");
	$sth->execute;
	$sth->finish;
	$db->disconnect;
}

if($ARGV[0] =~ /ins/){
	print "=== insert ===\n";
	insertvalue($masterserver,$mysqluser,$mysqlpassword,$dbname,$tablename);
}

print "=== master:$masterserver ===\n";
getselect($masterserver,$mysqluser,$mysqlpassword,$dbname,$tablename);

print "=== slave:$slaveserver ===\n";
getselect($slaveserver,$mysqluser,$mysqlpassword,$dbname,$tablename);

使い方
情報確認のみ「mysqltest.pl」
データ追加と情報確認「mysqltest.pl ins」

オプションとして「ins」(insert)を指定すると、データを追加する、というもの。

実行すると以下の様な形となる。

# mysqltest.pl ins
=== insert ===
=== マスタサーバ ===
name    text
248     name284 Fri Jun 20 11:42:01 2014
247     name563 Fri Jun 20 11:35:01 2014
246     name934 Fri Jun 20 11:28:01 2014
245     name769 Fri Jun 20 11:21:01 2014
244     name227 Fri Jun 20 11:14:01 2014
=== スレーブサーバ ===
name    text
248     name284 Fri Jun 20 11:42:01 2014
247     name563 Fri Jun 20 11:35:01 2014
246     name934 Fri Jun 20 11:28:01 2014
245     name769 Fri Jun 20 11:21:01 2014
244     name227 Fri Jun 20 11:14:01 2014
#

「単純増加する数字 name+ランダム数字 日付」という出力内容のうち、最新の5件のみ表示する、というものになっている。

マスタサーバの出力内容と、スレーブサーバの出力内容を比べる、というもの。


2021/05/19

postgresql環境でのバックアップ試験のためにこのスクリプトを流用しようとしたところ、作り直しが必要なポイントがあった。

まずはテーブル作成時の違い

create table testtable (
	id int(20) not null auto_increment,
	name char(100) default '' not null,
	text char(255) default '',
	primary key (id) 
);

これをそのまま実行すると下記エラーになる

ERROR:  syntax error at or near "("
LINE 2: id int(20) not null auto_increment,

int型auto_increment属性というのはMySQL特有で、postgresqlではserial型で置き換える。
「int(20) auto_increment」→「serial」に変更すると、以下のようになる。

create table testtable (
	id serial not null,
	name char(100) default '' not null,
	text char(255) default '',
	primary key (id) 
);

また、perlモジュールは DBD:mysqlではなくDBD:Pgに変更になり、データベースとホスト指定手法が変わった。

パッケージとしては perl-DBD-Pg をインストールする。

#!/usr/bin/perl

use DBI;

my $mysqluser="postgresql内のユーザ名";
my $mysqlpassword="パスワード";
my $masterserver="マスタサーバ名";
my $slaveserver="スレーブサーバ名";
my $dbname="test";
my $tablename="testtable";
$max=5;

sub getselect{
        my($server,$user,$password,$dbname,$tablename)=@_;
        my $db=DBI->connect("DBI:Pg:dbname=$dbname;host=$server",$user,$password);
        my $sth=$db->prepare("select id,name,text from $tablename order by id desc");
        $sth->execute;
        print "\tname\ttext\n";
        my $count=$max;
        for(my $i=0; $i&lt;$sth->rows; $i++){
                my @tmp=$sth->fetchrow_array;
                if($count>0){
                        print $tmp[0] ."\t". $tmp[1] ."\t". $tmp[2] ."\n";
                        $count--;
                }
        }
        $sth->finish;
        $db->disconnect;
}

sub insertvalue{
        my($server,$user,$password,$dbname,$tablename)=@_;
        my $db=DBI->connect("DBI:Pg:dbname=$dbname;host=$server",$user,$password);
        my $str1=substr("00".rand(100),-3);
        my $str2=localtime();
        my $sth=$db->prepare("insert into $tablename (name, text) values ('name$str1','$str2')");
        $sth->execute;
        $sth->finish;
        $db->disconnect;
}

if($ARGV[0] =~ /ins/){
        print "=== insert ===\n";
        insertvalue($masterserver,$mysqluser,$mysqlpassword,$dbname,$tablename);
}

print "=== postgresql:$masterserver ===\n";
getselect($masterserver,$mysqluser,$mysqlpassword,$dbname,$tablename);

print "=== slave:$slaveserver ===\n";
getselect($slaveserver,$mysqluser,$mysqlpassword,$dbname,$tablename);

CentOS5でFedora20やRHEL6のrpmがrpm2cpioで展開できない

CentOS5環境で、Fedora20のRPMファイルを展開しようとした。

# wget http://archives.fedoraproject.org/pub/fedora/linux/updates/20/i386/nss-3.16.1-1.fc20.i686.rpm
# rpm2cpio nss-3.16.1-1.fc20.i686.rpm |cpio -ivd
cpio: warning: skipped 6151 bytes of junk
cpio: warning: archive header has reverse byte-order
cpio: g イaォ7・
             z,a1m俿イフJcレ[}\&・dDDシFンWロ [&;Y(・・クJ.疱:: unknown file type
cpio: premature end of file
#

エラー・・・

調べてみると、この展開の問題はRHEL5での問題らしい。
Bug 602423 – rpm2cpio fails on rhel-6 rpms
Bug 837945 – Can’t extract rpms from RHEL6 on RHEL5

Bug 602423の方に、この問題に対処するための、rpm2cpio.shというのがアップロードされている。(patched parmezan, works for me on rhel5 (1.48 KB, application/x-sh) というやつ)

このrpm2cpio.shを使ってみると、期待通りの動作をした。

# ./rpm2cpio.sh nss-3.16.1-1.fc20.i686.rpm|cpio -ivd
./etc/pki/nssdb
./etc/pki/nssdb/cert8.db
./etc/pki/nssdb/cert9.db
./etc/pki/nssdb/key3.db
./etc/pki/nssdb/key4.db
./etc/pki/nssdb/pkcs11.txt
./etc/pki/nssdb/secmod.db
./usr/lib/libnss3.so
./usr/lib/libnsspem.so
./usr/lib/libsmime3.so
./usr/lib/libssl3.so
./usr/lib/nss/libnssckbi.so
./usr/share/man/man5/cert8.db.5.gz
./usr/share/man/man5/cert9.db.5.gz
./usr/share/man/man5/key3.db.5.gz
./usr/share/man/man5/key4.db.5.gz
./usr/share/man/man5/pkcs11.txt.5.gz
./usr/share/man/man5/secmod.db.5.gz
5146 blocks
#

rpm2cpio.shの中を確認してみる。

#!/bin/sh

pkg=$1
if [ "$pkg" = "" -o ! -e "$pkg" ]; then
    echo "no package supplied" 1>&2
   exit 1
fi

leadsize=96
o=`expr $leadsize + 8`
set `od -j $o -N 8 -t u1 $pkg`
il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
echo `od -j $o -N 8 -t u1 $pkg`
 echo "sig il: $il dl: $dl"

sigsize=`expr 8 + 16 \* $il + $dl`
o=`expr $o + $sigsize + \( 8 - \( $sigsize \% 8 \) \) \% 8 + 8`
set `od -j $o -N 8 -t u1 $pkg`
il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
 echo "hdr il: $il dl: $dl"
exit

hdrsize=`expr 8 + 16 \* $il + $dl`
o=`expr $o + $hdrsize`
EXTRACTOR="dd if=$pkg ibs=$o skip=1"

COMPRESSION=`($EXTRACTOR |file -) 2>/dev/null`
if echo $COMPRESSION |grep -q gzip; then
        DECOMPRESSOR=gunzip
elif echo $COMPRESSION |grep -q bzip2; then
        DECOMPRESSOR=bunzip2
elif echo $COMPRESSION |grep -q xz; then
        DECOMPRESSOR=unxz
elif echo $COMPRESSION |grep -q cpio; then
        DECOMPRESSOR=cat
elif $EXTRACTOR | od -x | head -1 | grep -q '37fd 587a '; then
        DECOMPRESSOR=unxz
else
        # Most versions of file don't support LZMA, therefore we assume
        # anything not detected is LZMA
        DECOMPRESSOR=`which unlzma 2>/dev/null`
        case "$DECOMPRESSOR" in
            /* ) ;;
            *  ) DECOMPRESSOR=`which lzmash 2>/dev/null`
                 case "$DECOMPRESSOR" in
                     /* ) DECOMPRESSOR="lzmash -d -c" ;;
                     *  ) DECOMPRESSOR=cat ;;
                 esac
                 ;;
        esac
fi

$EXTRACTOR 2>/dev/null | $DECOMPRESSOR

CentOS5ではサポートされていないヘッダと署名部分を削除してから、個別で展開しているような感じですかね。

オープンソース版もあるVTLソフトウェアQUADSTOR

LTFSについて調べていたら「QUADSTOR」というものが出てきた。

QUADSTORのページにいくと「Storage Virtualization Software」と「Virtual Tape Library(VTL)」の2種類がある。

どちらもLinux/FreeBSDサーバの管理下にあるディスクを使って、FC/iSCSI/Infiniband接続のデバイスとして見せるためのソフトウェア。

VTLの方は、さらに/dev/st0や/dev/sg0などの通常のデバイスファイルとして見せることもできるようだ。

おもしろそうなので、後ほど詳細を調査予定

使って見た詳細→「QUADSTOR VLTを使ってみた

LTOテープをファイルシステムとして使うLTFSについて 2014/06/09版

LTOテープをファイルシステムとして使うLTFSについて 2020/05/11版」にて内容を更新しました。


2015/11/18の情報を元に、新記事「LTOテープをファイルシステムとして使うLTFSについて 2015/11/18版」を公開しています。


LTOテープ1本を持ち運びができるファイルシステムメディアとして使用できるようにするLTFSについて、最近の状況を調べ直した。
(過去の関連記事:「LTOテープをファイルシステムとして使うLTFS(2012/11/28)」「テープ装置メーカ純正のLTFS一覧(2013/12/20更新)」「IBM版LTFSをRHEL5で使ってみた(2013/05/20)

LTO-5/LTO-6からは、メディアを2つの領域に分割して利用することが可能になった。
その機能を活かし、1本のテープメディアの中に、メディア内データの管理情報と、実データを分割して保存することを可能とした。
これにより、これまで実現出来なかった、1本のテープメディアだけで可搬性のあるファイルシステム構築、というものが可能となり、その実装として、LTFS(Linear Tape File System)というのがある。

使用用途としては、バックアップ用ではなく、長期保存のためのアーカイブ用や、大容量データの持ち運び用として使用されている。

LTFSを実現するためのソフトウェアについては、基本的には、IBMが大本のベースを作り、それを各LTOドライブメーカが、自社ドライブ向けにカスタマイズして提供しているような形となっている。

LTFSには、バージョンがいくつかあり、現状気にしなければならないのは、以下の4つ
・LTFS 1.0
・LTFS 2.0 : ファイルインデックス関連で機能をいろいろ追加
・LTFS 2.1 : 2012/05/18リリース。LTFS2.0+シンボリックリンク(現在draft版)
・LTFS 2.2 : 2013/12/21リリース。管理情報の改良

ファイルインデックスは、XMLで書かれているので、LTOテープからデータを直接読み込んで、自前でデコードしてみる、ということも可能ではある。

LTFS2.2の規格書はSNIAの「Linear Tape File System (LTFS)」にある。
その他、いろんな情報は、LTOの規格団体の「LTFS Overview」にある。

LTFSの公式認証を取得しているLTFSソフトウェアについては、「LTFS Compliance Verification」にて紹介されている。

2014/06/06時点では以下の6個が登録されている。

 Company

 Product

 Version

 LTFS Version*

 LTO Generation

 Date tested

 Quantum

 Quantum Scalar LTFS Appliance

 2.0.2

 2.0.1

 LTO5 & 6

 9/11/13

 HP

 HP StoreOpen Standalone

 2.1.0

 2.1.0

 LTO5 & 6

 9/11/13

 IBM

 IBM Single Drive Version

 1.3.0

 2.1.0

 LTO5 & 6

 9/11/13

 IBM

 IBM LTFS Library Edition

 V1R3

 2.1.0

 LTO5 & 6

 10/2/13

 Quantum

 Quantum LTFS

 2.1.0

 2.1.0

 LTO5 & 6

 11/29/13

 HP

 HP StoreOpen Automation

 1.2.0

 2.0.1

 LTO5 & 6

 11/29/13

ソフトウェアのバージョンと、対応しているLTFSフォーマットのバージョンに関連性は無いので注意が必要。

各ドライブメーカが出しているLTFSソフトウェアの情報について

まずは、上記のリストに載っているメーカのものから。

・IBM
公式: IBM Linear Tape File System

ソフトウェアの入手は、「Fix Central」にて「製品グループ:System Storage」-「Tape Systems」-「Tape drives and software」の下にある「LTFS Single Drive Edition (SDE)」や「LTFS Library Edition (LE)」を選択して行う。
なお、LEの方はアップデータのみの配布で、元になるソフトウェアについては、IBMから別途入手する必要がある。
基本的には、LTFS Single Drive Edition(SDE)が、他の全てのLTFSソフトウェアの原型になっているもの・・・という感じである。

2014/06/09時点での最新は、
LTFS Library Edition : ver2.1.2.2-4103(2013/12/06)
LTFS Single Drive Edition: ver2.2.0.0-4301(2014/05/09)

SDEの方はLTFS2.2をサポート。
LEの方はサポートしているのかどうかはっきりしなかった。

・HP
公式: HP StoreOpen
日本語情報: HP LTFS (Linear Tape File System)

ソフトウェアの入手は、単体ドライブ向けの「HP StoreOpen Standalone」も、チェンジャー向け「HP StoreOpen Automation」も、なぜか「HP StoreOpen Standaloneダウンロードページ」のリンクから可能。

2014/06/09時点での最新は、
HP StoreOpen Standalone : ver2.2.0(2014/04/29)
HP StoreOpen Automation : ver1.3.0(2014/02/03)

どちらのバージョンもLTFS 2.2.0をサポートするためにバージョンアップしている。

・Quantum
公式: Linear Tape File System

ソフトウェア入手は上記の公式ページの「Software」タブから行う。
ソースコードについては、LTFS Open Source Filesから。

2014/06/09時点での最新は、
qtmltfs : ver2.1.1(2014/02/25)

日付的にLTFS2.2もサポートなのかな?と思いきや、README内の変更履歴を見る限りでは、LTFS2.1までのサポート。

・Quantum Scalar LTFS Appliance
公式:Scalar LTFSアプライアンス

こいつだけ、他のとは違って、ハードウェアがセットになったアプライアンス。
これの下にFC経由などでテープチェンジャーを繋いで使うもの。

リストに載っていない、LTFS

・TANDBERG DATA
公式: LTFS for Big Data Storage

ソフトウェアの入手は「LTFS Documents and Downloadsから行う。

2014/06/09時点での最新は
バイナリ: ver2.1.0
ソースコード: ver1.2.0
ではあるものの、HP StoreOpen Standaloneそのままである模様。

・Oracle
公式: Oracle’s StorageTek Linear Tape File System, Open Edition

ソフトウェアの入手は「https://oss.oracle.com/projects/ltfs/files/」から行う。

2014/06/09時点での最新は
ltfs-1.2.6-20130711(2013/08/15)

IBM LTFS 1.2.5とHP LTFS 2.0.0を組み合わせ、Oracle/StorageTek用の設定を入れたもの。
LTFS2.0.0までのサポート