SSブログ

CentOS 7.6へのアップデート後の不具合 [CentOS]

CentOS 7.5 から 7.6 へのアップデート後、以下の不具合が発生する。

[ソフトウェアのバージョン]
・xorg-x11-server-Xorg-1.20.1-5.1.el7.x86_64
・xorg-x11-server-utils-7.7-20.el7.x86_64
・xorg-x11-utils-7.5-23.el7.x86_64
・xorg-x11-xkb-utils-7.7-14.el7.x86_64
・emacs-24.3-22.el7.x86_64
・xterm-295-3.el7.x86_64

1. 発生事象


ウィンドウ間のコピー・ペーストができないことがある。

・コピー・ペーストでウィンドウのフォーカスを移動できない。
 (マウスの移動に追随してフォーカスが移動するように設定している。)
・X の初回起動時に発生することが多い。
・X の初回起動時に発生しない場合には、以後も発生しない。
・MATE 1.16、FVWM 2.6 で発生することを確認
・CentOS 7.5 では発生しない。

再現方法は、下記の通りである。

(1) Emacs、Xterm を起動する。

(2) Emacs (または Xterm) 上で適当なコマンド実行し、実行結果の一部を選択する。


(例)
・'ls -l' を実行
・実行結果のいずれかの行で、月の値をマウスで選択する。


(3) 他方のウィンドウにマウスカーソルを移動する。


ここで、ウィンドウのフォーカスを移動できない。


2. 対処方法


下記の手順により X を再起動すると改善される。

・フォーカスされているウィンドウを終了する。
 (exit の実行、ウィンドウのクローズ、等)
・X を終了する。
・X の終了後、再度 X を起動する。

(補足)
・最初に X を再起動することで、問題事象の発生を抑止できるかも知れない。
・現時点では、原因は不明である。
・X 関連のパッケージのバグの可能性が高い。



nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

CentOS 7.6へのアップデート [CentOS]

CentOS 7.5 から 7.6 へのアップデートを行った。
基本的な手順はこれまでと同じであるが、MATE 関連で想定外の事象が発生した。
以下は、備忘録として発生事象と対処方法をまとめたものである。

1. EPEL にある MATE 関連のパッケージとの依存関係の解決


(1) 発生事象


MATE 関連のパッケージとの依存関係を解決しない場合、下記のエラーが発生する。

---> Package libgtop2.x86_64 0:2.34.2-2.el7 will be updated
--> Processing Dependency: libgtop-2.0.so.10()(64bit) for package: \
mate-applets-1.16.0-1.el7.x86_64
--> Processing Dependency: libgtop-2.0.so.10()(64bit) for package: \
marco-1.16.1-3.el7.x86_64
--> Finished Dependency Resolution
Error: Package: marco-1.16.1-3.el7.x86_64 (@epel)
           Requires: libgtop-2.0.so.10()(64bit)
           Removing: libgtop2-2.34.2-2.el7.x86_64 (@base)
               libgtop-2.0.so.10()(64bit)
           Updated By: libgtop2-2.38.0-3.el7.x86_64 (base)
              ~libgtop-2.0.so.11()(64bit)
Error: Package: mate-applets-1.16.0-1.el7.x86_64 (@epel)
           Requires: libgtop-2.0.so.10()(64bit)
           Removing: libgtop2-2.34.2-2.el7.x86_64 (@base)
               libgtop-2.0.so.10()(64bit)
           Updated By: libgtop2-2.38.0-3.el7.x86_64 (base)
              ~libgtop-2.0.so.11()(64bit)
 You could try using --skip-broken to work around the problem


(2) 対処方法


まず、下記の手順により、更新可能な EPEL パッケージの情報を取得する。

# env LANG=C yum --disablerepo=* --enablerepo=epel list updates \
> /tmp/updated-pkg-epel.log


次に、下記のパッケージを更新の対象に追加する。

・marco.x86_64
・mate-applets.x86_64


2. MATE のパネルのフォントが滲むことへの対応


(1) 発生事象


CentOS 7.6 への更新後、MATE のパネルのフォントが滲むようになった。


(2) 対処方法


設定ファイルでの当該フォントの識別子が変更されたようである。
このため、設定内容(指定したフォント)が引き継がれない。

よって、下記の手順により、再度フォントの設定を行う。

・[システム] -> [設定] -> [外観の設定] を選択
・[フォント] タグを選択
・フォントの指定

再設定前後での設定内容は、それぞれ下記の通りである。

(再設定前)
アプリケーション: さざなみゴシック Gothic-Regular 10
ドキュメント: さざなみゴシック Gothic-Regular 9
デスクトップ: さざなみゴシック Gothic-Regular 10
ウィンドウのタイトル: さざなみゴシック Gothic-Regular 9
固定幅のフォント: Monospace 9

(再設定後)
アプリケーション: Sazanami Gothic 10
ドキュメント: Sazanami Gothic 9
デスクトップ: Sazanami Gothic 10
ウィンドウのタイトル: Sazanami Gothic 9
固定幅のフォント: Monospace 9

3. 備考


CentOS 7.6 へのアップデートにより、下記のパッケージが追加/削除される。

(追加されるパッケージ) - 14 個のパッケージ
boost-random.x86_64
daxctl-libs.x86_64
libblockdev-nvdimm.x86_64
libglvnd.x86_64
libglvnd-egl.x86_64
libglvnd-gles.x86_64
libglvnd-glx.x86_64
libsmartcols.x86_64
libwayland-egl.x86_64
mozjs52.x86_64
ndctl.x86_64
ndctl-libs.x86_64
python2-blockdev.x86_64
python2-subprocess32.x86_64

(削除されるパッケージ) - 1 個のパッケージ
mesa-libwayland-egl.x86_64


nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

ハードディスクへのアクセス障害発生後、特定のブートができなくなった [CentOS]

CentOS 6 において、ハードディスクへのアクセス障害の発生後、特定のブートができなくなった。
以下は、備忘録として、発生事象と対処方法をまとめたものである。

1. 発生事象


マルチブート環境において、下記のブートができなくなった。

・Linux の GRUB Legacy からの Windows 7 のブート
 Error 13: Invalid or unsupported excutable format と出力される。

・GRUB Legacy でのチェイン・ブート
 再度 1 段目の GRUB メニューが表示され、ブートできない。

(補足)
・チェイン・ブートしない場合にはブートできる。
・2 個目のディスクを無効化(SATA ケーブルを抜線)すると、Windows 7 は起動できる。
 Windows 7 は 1 個目のディスクにインストールされている。
・grub-install を再実行しても改善されない。


2. 原因


BIOS の設定において、Disk1 と Disk2 が逆順に設定された状態になっていた。
(/dev/sd[ab] とディスクの関係が逆に設定されていた。)

なお、なぜこのような状況になったのかは不明である。


3. 対処方法


BIOS の設定画面において、Disk1 と Disk2 の順序を修正する。
・/dev/sda と /dev/sdb に接続されるディスクの設定を正しい値に修正する。



nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

CentOS 6のClamAVのウィルス・チェックでエラーが発生する件の対処方法 [CentOS]

CentOS 6 のClamAVのウィルス・チェックでエラーが発生する件が解決した。
詳細は、以下の通りである。

1. 発生事象


https://dan-project.blog.so-net.ne.jp/2018-07-18


2. 対処方法


EPEL の testing パッケージに更新する。

・clamav-0.100.1-2.el6.i686.rpm
・clamav-db-0.100.1-2.el6.i686.rpm

(補足)
・cf. http://dl.fedoraproject.org/pub/epel/testing/6/i386/Packages/c/
・しばらくすると、EPEL のパッケージになると思われる。



nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

CentOS 6のClamAVのウィルス・チェックでエラーが発生する [CentOS]

[ソフトウェアのバージョン]
・clamav-0.100.0-1.el6.i686 (EPEL のパッケージ)
・clamav-db-0.100.0-1.el6.i686 (EPEL のパッケージ)

1. 発生事象


ClamAV のウィルス・チェックでエラーが発生する。

[エラーメッセージ]
LibClamAV Error: cli_cvdload: Corrupted CVD header
LibClamAV Error: Can't load /var/lib/clamav/daily.cld: Malformed database
ERROR: Malformed database

(補足)
・CentOS 6/7 と Debian 8/9 をマルチブートしており、ウィルス情報を共有している。
 (ウィルス情報: /var/lib/clamav/)
・CentOS 7(EPEL のパッケージ)、Debian 8/9 の ClamAV では発生しない。
・CentOS 6(EPEL のパッケージ) の clamav-0.99-* では発生しない。


2. 対処方法


[古いパージョン(v99.*) の RPM パッケージを入手できる場合]
古いバージョンにバージョンダウンする。

[上記以外の場合]
更新パッケージのリリースを待つ。

(補足)
パッケージのバグのようである。
cf. https://bugzilla.redhat.com/show_bug.cgi?id=1600458


[3. 追記]


nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

CentOS 7.5へのアップデート後の不具合の発生 [CentOS]

CentOS 7.4 から 7.5 へのアップデート後に KVM で不具合が発生する。
詳細は、以下の通りである。

[ソフトウェアのバージョン]
・virt-manager-1.4.3-3.el7.noarch
・libvirt-daemon-3.9.0-14.el7_5.4.x86_64

1. 発生事象


CentOS 7.5 への更新後、KVM で起動できないドメインが発生する。

[エラーメッセージ]
Error starting domain: サポートされない設定: shared access for disk 'hdc' \
requires use of supported storage format
[hdc の設定] - /etc/libvirt/qemu/xxx.xml
<disk type='file' device='disk'>
  <driver name='qemu' type='qcow2'/>
  <source file='/var/lib/libvirt/images/cluster-common.qcow2'/>
  <target dev='hdc' bus='ide'/>
  <shareable/>
  <address type='drive' controller='0' bus='1' target='0' unit='0'/>
</disk>


・hdc はクラスタ・ノード間で共有するディスクである。


2. 対処方法


該当するパッケージを CentOS 7.4 のものにバージョンダウンする。

[該当するパッケージ]
・libvirt-*
・virt-install-*
・virt-manager-*

(補足)
該当するパッケージの詳細については、備考を参照。


2-1. CentOS 7.4 のバックアップ・データが存在する場合の手順


(1) バックアップ・データを使用し、CentOS 7.4 に戻す。


(2) 該当するパッケージ以外をアップデートする。


2-2. CentOS 7.4 のバックアップ・データが存在しない場合の手順


該当するパッケージを CentOS 7.4 のものにバージョンダウンする。


3. 備考


(1) 関係するパッケージ


下記のパッケージへのアップデートにより、上記の問題を発生する。

libvirt-3.9.0-14.el7_5.4.x86_64
libvirt-client-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-config-network-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-config-nwfilter-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-interface-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-lxc-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-network-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-nodedev-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-nwfilter-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-qemu-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-secret-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-core-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-disk-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-gluster-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-iscsi-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-logical-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-mpath-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-rbd-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-scsi-3.9.0-14.el7_5.4.x86_64
libvirt-glib-1.0.0-1.el7.x86_64
libvirt-libs-3.9.0-14.el7_5.4.x86_64
libvirt-python-3.9.0-1.el7.x86_64
virt-install-1.4.3-3.el7.noarch
virt-manager-1.4.3-3.el7.noarch
virt-manager-common-1.4.3-3.el7.noarch


また、CentOS 7.4 での当該パッケージは、下記の通りである。

libvirt-3.2.0-14.el7_4.9.x86_64
libvirt-client-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-config-network-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-config-nwfilter-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-interface-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-lxc-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-network-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-nodedev-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-nwfilter-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-qemu-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-secret-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-core-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-disk-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-gluster-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-iscsi-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-logical-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-mpath-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-rbd-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-scsi-3.2.0-14.el7_4.9.x86_64
libvirt-glib-1.0.0-1.el7.x86_64
libvirt-libs-3.2.0-14.el7_4.9.x86_64
libvirt-python-3.2.0-3.el7_4.1.x86_64
virt-install-1.4.1-7.el7.noarch
virt-manager-1.4.1-7.el7.noarch
virt-manager-common-1.4.1-7.el7.noarch

[4. 追記]


nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

CentOS 7.4へのアップデートでの不具合 [CentOS]

CentOS 7.3 から CentOS 7.4 へのアップデートを行った。
その際、32 bit 版パッケージがインストールされる不具合が発生した。
詳細は、以下の通りである。

1. 発生事象


32 bit 版パッケージがインストールされてしまう。

(補足)
・アップデート前の環境には、32 bit 版パッケージはインストールされていない。
・当該パッケージの 64 bit 版がインストールされている。
・当該パッケージの一覧は備考を参照。


2. 対処方法


当該パッケージをアン・インストールする。

# rpm -e `rpm -qa | grep '\.i[3-6]86$'`


(補足)
上記のアン・インストール後もシステムは正常に動作する。


[備考]


nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

Pacemaker + Corosync + DRBD でのクラスタ環境の構築 [CentOS]

[ソフトウェアのバージョン]
・pacemaker-1.1.12-8.el6_7.2.i686
・corosync-1.4.7-2.el6.i686
・kmod-drbd84-8.4.7-1_1.el6.elrepo.i686
・drbd84-utils-8.9.5-1.el6.elrepo.i686
・OS: CentOS 6.7

1. 要件


Pacemaker + Corosync のクラスタリング環境に DRBD リソースを追加する。


2. DRBD の導入


(1) パッケージのインストール


下記のパッケージをインストールする。

・kmod-drbd84-8.4.7-1_1.el6.elrepo.i686
・drbd84-utils-8.9.5-1.el6.elrepo.i686


(2) DRBD の設定


/etc/drbd.d/{global_common.conf,r0.res} を下記のように変更する。
(詳細は備考を参照)

(a) 対象のノード


・vm2.private.net(192.168.0.22)
・vm3.private.net(192.168.0.23)


(b) ディスクのデバイス・パス


/dev/sdc1


(c) DRBD デバイス


/dev/drbd0


(d) タイムアウト値

wfc-timeout 30

3. DRBD の自動機能の停止
# chkconfig drbd off
# chkconfig --list drbd

4. リソースの定義


(1) DRBD

# pcs resource create drbd ocf:linbit:drbd \
drbd_resource=r0 \
op monitor interval=20s

## Master/Slave 型のリソースとしての定義
# pcs resource master ms-drbd drbd \
master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify=true


(2) ファイルシステム

# pcs resource create fs-drbd ocf:heartbeat:Filesystem \
device=/dev/drbd0 directory=/share-drbd fstype=ext3 \
op monitor interval=20s


(3) 既存リソースとの制約条件の設定

# pcs resource group add group-1 fs-drbd --before fs-nfs
# pcs constraint colocation add master ms-drbd with group-1 INFINITY
# pcs constraint order promote ms-drbd then start group-1

(補足)
# pcs resource group list
group-1: fs-drbd fs-nfs nfs-server vip-check vip


(4) その他


エラーが発生する場合には、当該リソースの故障履歴をクリアする。

(例)
# pcs resource cleanup drbd
# pcs resource cleanup fs-drbd
# pcs resource cleanup ...

5. 備考


(1) DRBD の構築手順


cf. http://dan-project.blog.so-net.ne.jp/2016-05-10



nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

Pacemaker + Corosyncのクラスタ環境での制約条件の設定 [CentOS]

Pacemaker + Corosync のクラスタ環境に DRBD リソースを追加することになった。
そこで、以前実施した Pacemaker の構築手順の見直しを行った。
以下は、その際に気づいたことをまとめたものである。

[ソフトウェアのバージョン]
・pacemaker-1.1.12-8.el6_7.2.i686
・corosync-1.4.7-2.el6.i686
・OS: CentOS 6.7

1. リソースの制約条件


クラスタで管理するリソースには、下記のような制約条件を設定できる。

・リソースを起動するノードの選択方法
・リソースの起動順序


2. リソース間の制約条件の設定方法


(1) リソースを起動するノードの選択方法

# pcs constraint colocation add <res-id-1> with <res-id-2>


・リソース-2(res-id-2) と同じノードでリソース-1(res-id-1) を起動する。


(2) リソースの起動順序

# pcs constraint order <res-id-1> then <res-id-2>


・リソース-1(res-id-1) の後にリソース-2(res-id-2) を起動する。


(補足)
・リソースの数が多くなると、制約条件の管理が面倒になる。
・リソースグループを定義すると、制約条件の管理の手間を軽減できる。


3. リソースグループに適用される制約条件


・同じリソースグループのリソースは、同じノードで起動される。
・リソースグループの定義時に指定した順序でリソースが起動される。
・リソースグループの定義時に指定した逆順でリソースが停止される。


4. migration-threshold の設定


同一リソースの障害が何回発生した時にフェイルオーバーするかを指定できる。
リソースの失敗回数との比較結果により、対応方法が異なる。

・失敗回数が migration-threshold 未満: 当該リソースの再起動を実施
・失敗回数が migration-threshold 以上: フェイルオーバーを実施

(1) 設定

# pcs resource defaults migration-threshold=<count>


・デフォルト値: INFINITY (無限)


(2) 設定の確認

# pcs resource defaults


(3) 設定の削除

# pcs resource defaults migration-threshold=


nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

GNOME-3からMATEへの移行 [CentOS]

CentOS 7.3 において GNOME-3(classic mode) を使用してきたが、使いづらいため MATE への移行を行った。
以下は、必要最小限のパッケージのみをインストールする方針で実施した手順である。
(正常に動作はするが、ワーニング・メッセージが出力される場合がある。)

# ソフトウェアのバージョン
・GNOME 3.14
・MATE 1.16

1. GNOME のアン・インストール
# yum remove gnome-*  ... (注1)

# rpm -qa | grep gnome
# rpm -e <GNOME 関連のパッケージ>  ... (注2)


(注1)
依存関係により、必要なパッケージがアン・インストールされることがある。
今回は、下記のパッケージがアン・インストールされたため、後で再インストールする。
・fvwm
・xlockmore
・virt-manager (KVM がインストールされている場合)

(注2)
wireshark-gnome はアン・インストールしない。


2. アン・インストールされたパッケージの再インストール

3. mate-desktop のインストール
# yum --enablerepo=epel install mate-desktop.x86_64

4. MATE 用の追加パッケージのインストール
# yum --enablerepo=epel install mate-settings-daemon.x86_64
# yum --enablerepo=epel install mate-applets.x86_64  ... (注1)
# yum --enablerepo=epel install mate-media.x86_64  ... (注2)
# yum --enablerepo=epel install mozo.noarch
# yum --enablerepo=epel install mate-icon-theme.noarch
# yum --enablerepo=epel install mate-themes.noarch


(注1) パネルにごみ箱を表示するため。
(注2) パネルに音量調整ツールを表示するため。


5. セッションの開始コマンドの変更


~/.xinitrc、~/.Xclients 等を編集する。

(変更前)
export GNOME_SHELL_SESSION_MODE=classic
exec gnome-session --session=gnome-classic

(変更後)
exec mate-session

[追記]


nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。