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]}"
Firefox + uim環境で日本語入力の開始/終了ができないことがある [Debian]
以下は、この事象への対応についてまとめたものである。
[ソフトウェアのバージョン]
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]
詳細は、以下の通りである。
・発生した不具合の一覧
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]
以下は、その際に発生した事象とその対応をまとめたものである。
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]
詳細は、以下の通りである。
[更新前]
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]
詳細は、以下の通りである。
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]
・パッケージのバージョン
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]
詳細は、以下の通りである。
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]
# パッケージのバージョン
・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