So-net無料ブログ作成

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) 下記のパッケージ以外をアップデートする。

libvirt-*
virt-install-*
virt-manager-*


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


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


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

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


[3. 備考]


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) 
共通テーマ:パソコン・インターネット