SSブログ

Debian 9の'systemctl list-unit-files'の色表示がおかしい [Debian]

[ソフトウェアのバージョン]
systemd 232-25

1. 発生事象


'systemctl list-unit-files' の色表示がおかしい。

・状態の表示部分のみでなく、行全体が色付けされる。
・最終行で使用された色が画面の前景色となってしまう。

(補足)
Debian 8 (systemd 215-17+deb8u7) では発生しない。


2. 対処方法


(1) 上記事象の発生時に対応する場合


reset コマンドを実行する。


(2) 上記事象を発生させたくない場合


下記の内容で /usr/local/bin/systemctl を作成し、このスクリプトを使用する。
または、出力行数に関係なくページャーを使用(ページャーにパイプ連携)する。

#!/bin/bash
#
# patch for 'systemctl list-unit-files' (on Debian 9)
# - turn off colors
# - disable underline
#
# target version: systemd 232-25
#

/bin/systemctl "$@" | cat
exit "${PIPESTATUS[0]}"


nice!(0)  コメント(0) 

Firefox + uim環境で日本語入力の開始/終了ができないことがある [Debian]

Debian 8 上の Firefox において、uim での日本語入力の開始/終了ができないことがある。
以下は、この事象への対応についてまとめたものである。

[ソフトウェアのバージョン]
uim-anthy 1:1.8.6-8
uim-common 1:1.8.6-8
uim-gtk2.0 1:1.8.6-8
uim-utils 1:1.8.6-8
uim-xim 1:1.8.6-8

1. 発生事象


Firefox + uim 環境で日本語入力の開始/終了ができないことがある。

・Google 検索の入力画面で度々発生する。
・他のソフト、他の画面では問題なく使用できる。


2. 対処方法


下記の手順を実施する。

(1) 環境変数 GTK_IM_MODULE の設定値変更

(変更前)
export GTK_IM_MODULE=uim

(変更後)
export GTK_IM_MODULE=xim

3. 備考


(1) 上記事象が改善されない場合の対応方法


(a) 変換待ちとなっている場合には、キャンセルを行う。


・変換待ちとなっていないかの確認
 Space キーを押下し、変換候補が表示されないかを確認する。
 変換候補が表示された場合、変換待ち状態である。

・変換待ち状態の場合には、この状態を解除する。
 ESC キー、または Control-G を押下する。
 (ほとんどの場合は、これだけで改善できる。)


(b) 上記の手順で改善しない場合には、当該タブを閉じる。


・当該タブでアクセスしている URL をメモする。
・当該タブをを閉じた後に新しいタブを開く。
・新しいタブで、メモした URL にアクセスする。


(2) Debian 8 に限定される問題ではないと思われる。


Firefox と uim の組み合わせで発生する問題のように思われる。


Debian 9.0へのアップグレード後の不具合対応 [Debian]

Debian 9.0 へのアップグレード後に発生した不具合の残件対応を行った。
詳細は、以下の通りである。

・発生した不具合の一覧
 cf. http://dan-project.blog.so-net.ne.jp/2017-06-25

1. 発生事象


X アプリでノード名を付けて指定したディスプレイを開けない。

(例)
% xterm -display localhost:0
xterm: Xt error: Can't open display: localhost:0


・パッケージのバージョン
 xserver-xorg 1:7.7+19
 xserver-xorg-core 2:1.19.2-1
 xinit 1.3.4-3+b1


2. 対処方法


/usr/bin/Xorg を変更し、起動時のオプションに '--listen tcp' を追加する。

# cd /usr/bin
# diff Xorg Xorg.org
8c8
<       exec "$basedir"/Xorg.wrap -listen tcp "$@"
---
>       exec "$basedir"/Xorg.wrap "$@"
10c10
<       exec "$basedir"/Xorg -listen tcp "$@"
---
>       exec "$basedir"/Xorg "$@"

3. 備考


(1) /usr/bin/Xorg の変更により、6000 番ポートが Listen 状態になる。

% netstat -an | grep 6000
tcp        0      0 0.0.0.0:6000            0.0.0.0:*           LISTEN
tcp6       0      0 :::6000                 :::*                LISTEN


(2) /etc/X11/xinit/xserverrc の変更では効果がない。

# cd /etc/X11/xinit
# diff xserverrc xserverrc.org
3c3
< exec /usr/bin/X "$@"
---
> exec /usr/bin/X -nolisten tcp "$@"


Debian 9.0へのアップグレード時に発生した不具合への対応 [Debian]

Debian 9 のテスト環境作成のため、Debian 8.8 から Debian 9.0 へのアップグレードを行った。
以下は、その際に発生した事象とその対応をまとめたものである。

1. アップグレードの手順


これまでのバージョンでの実施手順と同様である。
cf. https://www.debian.org/releases/stretch/i386/release-notes/ch-upgrading.ja.html


2. 発生事象 (対応済)


(1) アップグレード後に LVM が認識されない


・ブート時に LVM が認識されない。
・マウントに失敗し、システムが正常に起動できない。
・emergency mode になる。


(a) 対処方法


下記の手順を実施し、initramfs image を更新する。

・emergency mode で、root のパスワードを入力
・lvscan を実行
・マウントに必要な VG に対して、'vgchange -ay ' を実行
・exit を実行(emergency mode の終了)
・/boot/initrd.img-* の更新
 (update-initramfs -c|-u -k `uname -r`)
・システムの再起動


(2) コンソールで、日本語キーボードとして認識されない


・/etc/default/keyboard は Debian 8 からの流用である。
・'localectl set-keymap jp106' の実行では改善されない。
・X 環境では日本語キーボードと認識される。


(a) 対処方法


/etc/rc.local に下記の設定を追加する。

loadkeys jp106


(3) 一般ユーザーで X を 起動できない。


・パッケージのバージョン: xserver-xorg 1:7.7+19
・/var/log/Xorg.0.log が作成されない。
 (~/.local/share/xorg/Xorg.0.log が作成される。)
・ログファイルのエラーメッセージは、下記の通りである。

Fatal server error:
(EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)


(a) 対処方法


/etc/X11/Xwrapper.config を変更する。

# diff Xwrapper.config Xwrapper.config.org
14,15c14
< allowed_users=anybody
< needs_root_rights=yes
---
> allowed_users=console


・上記の対応後、/var/log/Xorg.0.log が作成されるようになる。


(4) mplayer で ~/.mplayer/{config,input.conf} の設定が反映されない。


(a) 原因


mplayer から mpv に変更されたためである。
・mplayer は mpv へのシンボリックリンクとなっている。
・mplayer と mpv では、設定ファイルのパスが異なる。


(b) 対処方法


下記のパスに設定ファイルを作成する。

~/.mpv/{config,input.conf}
または
~/.config/mpv/{mpv.conf,input.conf}


(c) 設定ファイルへの設定例

% cat ~/.mpv/config
# display size and aspect ratio
video-aspect=16:9
geometry=320

% cat ~/.mpv/input.conf
# key bindings
MOUSE_BTN3 volume 1
MOUSE_BTN4 volume -1


(5) gnome-session が想定通りの動作とならない。


・パッケージのバージョン: gnome-session-flashback 3.22.0-3
・'exec gnome-session --session=gnome-flashback' で起動できない。


(a) 対処方法


gnome-session の起動部分を下記のように変更する。
( cf. https://wiki.archlinuxjp.org/index.php/GNOME_Flashback )

(変更前)
exec gnome-session --session=gnome-flashback

(変更後)
export XDG_CURRENT_DESKTOP=GNOME-Flashback:GNOME
exec gnome-session --session=gnome-flashback-metacity


(b) gnome-session のバージョンの確認方法


・gnome-session --version: 出力なし
・/usr/lib/gnome-session/gnome-session-binary --version: 出力なし
・gnome-session-inhibit --version: バージョンを表示


3. 発生事象 (未対応)


(1) X アプリでノード名を付けて指定したディスプレイを開けない。


・パッケージのバージョン: xserver-xorg 1:7.7+19
・'Xt error: Can't open display' と出力される。
・'xhost +' を実行しても状況は変わらない。
・xauth を無効化しても状況は変わらない。
・':0' で指定した場合には開ける。

(例)
% xterm -display localhost:0
xterm: Xt error: Can't open display: localhost:0


xawtvのウィンドウサイズを変更すると画像が表示されなくなる [Debian]

[ソフトウェアのバージョン]
xawtv 3.103-3+b1
linux-image-3.16.0-4-686-pae 3.16.39-1+deb8u2

1. 発生事象


Debian 8 において、xawtv のウィンドウサイズを変更すると画像が表示されなくなる。

・xawtv を再起動すると回復する。
・Debian 7 (linux-image-3.2.0-4-686-pae 3.2.86-1)では発生しない。
・xawtv 3.102-3 (Debian 7 のパッケージ)に変更しても状況は変わらない。


2. 原因


kernel 3.16.x 上で発生する xawtv のバグである。
(詳細は、備考を参照。)


3. 対処方法


下記の手順を実施する。

(1) 更新するパッケージの入手


ubuntu 16.10 の下記のパッケージをダウンロードする。

fontconfig-config_2.11.94-0ubuntu2_all.deb
libfontconfig1_2.11.94-0ubuntu2_i386.deb
pia_3.103-4_i386.deb
scantv_3.103-4_i386.deb
xawtv-plugins_3.103-4_i386.deb
xawtv_3.103-4_i386.deb


(補足)
・Debian 8 用の更新パッケージはリリースされていない。
・Debian sid よりも ubuntu 16.10 の方が更新するパッケージの数が少ない。
https://pkgs.org/ 等から当該パッケージをダウンロードする。


(2) パッケージの更新

# dpkg -i *.deb


(補足)
更新内容は、下記の通りである。

・fontconfig-config
 2.11.0-6.3+deb8u1 => 2.11.94-0ubuntu2
・libfontconfig1
 2.11.0-6.3+deb8u1 => 2.11.94-0ubuntu2
・pia
 3.103-3+b1 => 3.103-4
・scantv
 3.103-3+b1 => 3.103-4
・xawtv-plugins
 3.103-3+b1 => 3.103-4
・xawtv
 3.103-3+b1 => 3.103-4

[備考]


PostgreSQL 9.4、PHP 5.6への更新後の不具合 [Debian]

Debian 8 において、PostgreSQL、PHP の更新後に不具合が発生するようになってしまった。
詳細は、以下の通りである。

[更新前]
postgresql-9.1 9.1.16-0+deb7u1
php5 5.4.45-0+deb7u4
postgresql-9.1-903.jdbc3.jar

[更新後]
postgresql-9.4 9.4.8-0+deb8u1
php5 5.6.23+dfsg-0+deb8u1
postgresql-9.4.1209.jdbc42.jar

1. 不具合-1


(1) 発生事象


JDBC において、日本語を含むテーブルへの操作でエラーが発生する。

・UTF8 以外の日本語を含む場合に、SQLException が発生する。
・同様の設定でも、PostgreSQL 9.1 ではエラーは発生しない。
・当該データベースの文字コードに関する設定は、下記の通りである。
 (Encoding: SQL_ASCII, Collate: C, Ctype: C)

(補足)
エラーログは、下記の通りである。
(/var/log/postgresql/postgresql-9.4-main.log)

ERROR:  invalid byte sequence for encoding "UTF8": 0xa5


(2) 対処方法


データベースの作成時に、エンコーディングを指定する。

(例) EUC_JP を使用する場合
% createdb -E EUC_JP -T template0 test

2. 不具合-2


(1) 発生事象


PHP において、HTTP ヘッダーでのエンコーディングの設定が効かない。
このため、文字化けするページがある。

・下記の設定が効かない。
 <meta http-equiv="Content-Type" content="text/html; charset=shift_jis">

(補足)
PHP 5.6 での仕様の変更のためである。


(2) 対処方法


PHP の default_charset の設定で対応する。

(a) /etc/php5/apache2/php.ini で設定する。

(例) EUC-JP を使用する場合
default_charset = EUC-JP


(b) ページ毎に変更する場合には、HTTP ヘッダーで設定する。


HTTP ヘッダーに下記のコードを追加する。

(例) Shift_JIS を使用する場合
<?php
  if (PHP_VERSION >= 5.6) {
    ini_set('default_charset', 'Shift_JIS');
  }
?>

3. 備考


PostgreSQL の更新により、ブート時に下記のようなワーニングが出力されなくなった。

postgres (1416): /proc/1416/oom_adj is deprecated, \
please use /proc/1416/oom_score_adj instead.


Debian 8のDNSの逆引きが遅いことへの対応 [Debian]

久しぶりに Debian 8 (Debian 7 からアップグレード) を使用していて、DNS の逆引きが遅くなっていることに気付いたので、元の状態になるように対応を行った。
詳細は、以下の通りである。

1. 発生事象


DNS の逆引きが遅い。

例えば、下記コマンドの実行において、結果が得られるまでの時間が長い。
また、-n オプションを追加すると、通常のレスポンスになる。

・iptables -L
・netstat -r


2. 原因


mDNS (Multicast DNS) のパケットが送信されるためである。

・systemd への移行ににより、停止していた当該サービスが自動起動されていた。


3. 対処方法


下記のいずれかの手順を実施する。

(1) mDNS のアンインストール

# dpkg --purge libnss-mdns


(2) /etc/nsswitch.conf の編集

# diff nsswitch.conf nsswitch.conf.org
11c11
< hosts:          files mdns4_minimal [NOTFOUND=return] dns
---
> hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4


(3) avahi-daemon の無効化

# systemctl stop avahi-daemon.socket
# systemctl disable avahi-daemon.socket

# systemctl stop avahi-daemon
# systemctl disable avahi-daemon


PostgreSQL 9.1起動時のPermission deniedへの対応 [Debian]

Debian 8 において、PostgreSQL 9.1 の起動ができなくなってしまった。

・パッケージのバージョン
 postgresql-9.1 9.1.16-0+deb7u1
 postgresql-common 165

・エラーメッセージ
 "/etc/ssl/certs/ssl-cert-snakeoil.pem": Permission denied

原因および対処方法の詳細は、以下の通りである。

1. 発生事象


下記のような状況となり、PostgreSQL の起動に失敗する。

[postgresql@9.1-main]
could not open file "/etc/ssl/certs/ssl-cert-snakeoil.pem": Permission denied
startup process (PID 5060) exited with exit code 1
aborting startup due to startup process failure

[systemd]
postgresql@9.1-main.service: control process exited, code=exited status=1
Failed to start PostgreSQL Cluster 9.1-main.
Unit postgresql@9.1-main.service entered failed state.

2. 原因


(1) PostgreSQL のバグと思われる。


アクセス可能かではなく、所有者なのかをチェックしているように思われる。
少なくとも、/etc/ssl/certs/ssl-cert-snakeoil.pem は参照可能である。

[シンボリック・リンクの状況]
# pwd
/var/lib/postgresql/9.1/main
# ls -l server.*
lrwxrwxrwx 1 root root 36 Jun  2 13:10 server.crt -> \
/etc/ssl/certs/ssl-cert-snakeoil.pem
lrwxrwxrwx 1 root root 38 Jun  2 13:10 server.key -> \
/etc/ssl/private/ssl-cert-snakeoil.key

[シンボリック・リンク先の状況]
# pwd
/etc/ssl
# ls -l
total 36
drwxr-xr-x 2 root root     20480 May 30 02:12 certs/
-rw-r--r-- 1 root root     10835 Mar 19  2013 openssl.cnf
drwx--x--- 2 root ssl-cert  4096 Feb 22  2009 private/
# ls -l certs/ssl-cert-snakeoil.pem
-rw-r--r-- 1 root root 644 Feb 22  2009 certs/ssl-cert-snakeoil.pem
# ls -l private/ssl-cert-snakeoil.key
-rw-r----- 1 root ssl-cert 887 Feb 22  2009 private/ssl-cert-snakeoil.key

[postgres ユーザーの所属グループの状況]
# grep postgres /etc/group
ssl-cert:x:104:postgres
postgres:x:122:

3. 対処方法


取り敢えず、下記の手順の実施により、状況が改善される。

(1) 当該ファイルの所有者を root から postgres に変更する。

# cd /etc/ssl
# chown postgres certs/ssl-cert-snakeoil.pem
# chown postgres private/ssl-cert-snakeoil.key

# ls -l certs/ssl-cert-snakeoil.pem
-rw-r--r-- 1 postgres root 644 Feb 22  2009 certs/ssl-cert-snakeoil.pem
# ls -l private/ssl-cert-snakeoil.key
-rw-r----- 1 postgres ssl-cert 887 Feb 22  2009 \
private/ssl-cert-snakeoil.key


(2) PostgreSQL の起動

# systemctl start postgresql@9.1-main.service
# systemctl status postgresql@9.1-main.service


(3) PostgreSQL が正常に起動できた後に root 所有に戻す。


PostgreSQL が正常に起動できた後は、root 所有に戻しても問題は発生しない。


4. 備考


(1) 参考資料


https://forums.kali.org/showthread.php?25638-Postgresql-won-t-start



debian 8のautofsの不具合への対応 [Debian]

Debian 8 の autofs での ntfs マウント時の不具合について、パッケージが更新されないため、別の方法での対応を行った。
詳細は、以下の通りである。

1. 発生事象


autofs での NTFS のマウント時にオプション指定ができない。
・NTFS のマウントには、ntfs-3g (1:2014.2.15AR.2-1+deb8u2) を使用している。
・fstype 以外のオプションを指定するとマウントポイントが認識されない。
・fstype 以外のオプションを指定しない場合には問題ない。
・mount コマンドでのオプション指定では問題なくマウントできる。

(補足)
http://dan-project.blog.so-net.ne.jp/2015-06-30


2. 原因


ntfs-3g において、-s オプションが未サポートとなっているためである。
・automount が ntfs-3g を -s オプション指定で実行する。
・-s オプションが指定されているため、ntfs-3g がエラーとなる。
・ntfs-3g がエラーとなるため、mount が実施されない。

(補足)
下記の手順により、確認できる。
・/etc/default/autofs の OPTIONS に -d を追加する。
・autofs を再起動する。
・autofs によるマウントを実行する。
・/var/log/syslog を参照する。


3. 対処方法


ntfs-3g に -s オプションを渡さないようにするため、下記の手順を実施する。


(1) 既存の ntfs-3g の保存

# cd /bin
# mv ntfs-3g ntfs-3g.org


(2) ntfs-3g の作成


/bin/ntfs-3g として、下記のシェルスクリプトを作成する。

#!/bin/sh
# patch for ntfs-3g(1:2014.2.15AR.2-1+deb8u2)
/bin/ntfs-3g.org `echo $* | sed 's/ -s//'`

4. 備考


(1) 参考情報


https://bugs.launchpad.net/ubuntu/+source/autofs/+bug/1448678


(2) ntfs-3g を Debian 7 のパッケージにバージョンダウンしても改善しない。


ntfs-3g_2012.1.15AR.5-2.1+deb7u2_i386.deb
(dpkg -i ntfs-3g_2012.1.15AR.5-2.1+deb7u2_i386.deb でインストール)

(補足)
Debian 7 では問題は発生しない。



debian 8のautofsの不具合 [Debian]

Debian 8 の autofs での NTFS のマウントにおいて、下記の不具合が発生する。

# パッケージのバージョン
・autofs 5.0.8-2
・ntfs-3g 1:2014.2.15AR.2-1+deb8u2

1. 発生事象


autofs での NTFS のマウント時にオプション指定ができない。

・NTFS のマウントには、ntfs-3g を使用している。
・fstype 以外のオプションを指定するとマウントポイントが認識されない。
・fstype 以外のオプションを指定しない場合には問題ない。
・mount コマンドでのオプション指定では問題なくマウントできる。

【異常ケース】
# cat /etc/auto.misc
...
win_1 -fstype=ntfs,ro :/dev/sda1
...
# cd /misc/win_1
bash: cd: /misc/win_1: No such file or directory
【正常ケース-1】
# cat /etc/auto.misc
...
win_1 -fstype=ntfs :/dev/sda1
...
# cd /misc/win_1
# pwd
# /misc/win_1
【正常ケース-2】
# mkdir /tmp/aaa
# mount -t ntfs -o ro /dev/sda1 /tmp/aaa
# mount | grep /tmp/aaa
/dev/sda1 on /tmp/aaa type fuseblk (ro,...)


(補足)
・ext3 ファイルシステムの場合には、オプション指定ができる。
 (,ro を追加して確認)


2. 対処方法


現時点では不明である。

取り敢えずは、/etc/fstab に当該エントリを追加し、通常の mount で対応する。


3. 備考


autofs を Debian 7 のパッケージ(autofs 5.0.7-3) にバージョンダウンしても改善しない。
・autofs_5.0.7-3_i386.deb
・ntfs-3g_2012.1.15AR.5-2.1+deb7u2_i386.deb



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