So-net無料ブログ作成
前の10件 | -

ファイルパスの不要な/の削除 [Linux]

シェルスクリプトで、ファイルパスの不要な / を削除しようとして少々手間取ってしまった、
以下は、備忘録としてまとめたものである。

1. 要求仕様


ファイルパスから不要な / を取り除く。
・/ が連続する部分を / に変更
・最後の / を削除


2. 実行例


(1) sed の場合


(a) 基本正規表現を使用する場合

% echo ..//aa//bb//cc// | sed -e 's!/\{2,\}!/!g' -e 's!\([^/]\)/$!\1!'
../aa/bb/cc
% echo /// | sed -e 's!/\{2,\}!/!g' -e 's!\([^/]\)/$!\1!'
/


(b) 拡張正規表現を使用する場合

% echo ..//aa//bb//cc// | sed -r -e 's!/+!/!g' -e 's!([^/])/$!\1!'
../aa/bb/cc
% echo /// | sed -r -e 's!/+!/!g' -e 's!([^/])/$!\1!'
/


(c) 失敗例

% echo ..//aa//bb//cc// | sed -e 's!/*!/!g' -e 's!\([^/]\)/$!\1!'
/././a/a/b/b/c/c


(2) awk の場合

% echo ..//aa//bb//cc// | \
awk '{gsub(/\/+/, "/"); r=gensub(/([^/])\/$/, "\\1", 1); print r}'
../aa/bb/cc
% echo /// | \
awk '{gsub(/\/+/, "/"); r=gensub(/([^/])\/$/, "\\1", 1); print r}'
/


(補足)
・gsub() および sub() では "\\1" が機能しない。
・gensub() の戻り値は変換後の文字列である(元の文字列を変更しない)。


3. sed の正規表現


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

Google検索の国名・現在地の表示の無効化 [misc]

Google 検索のページ下部に国名・現在地が表示されるが、邪魔なので表示の無効化を行った。
詳細は、以下の通りである。

[ソフトウェアのバージョン]
・Web ブラウザ: Firefox 52.6.0 ESR
・Firefox Add-on: Adblock Plus 2.8.2

1. 実施手順


Adblock Plus のフィルタに下記の設定を追加する。

www.google.co.jp##div[class$="_Ubu"]
www.google.com##div[class$="_Ubu"]


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

/dev/dm-0から/dev/mapper/*への変換 [Debian]

[ソフトウェアのバージョン]
・OS: Debian GNU/Linux 8
・lvm2 2.02.111-2.2+deb8u1
・mdadm 3.3.2-5+deb8u2

1. 発生事象


Debian 8 において、'df /' の出力でデバイス・パスが /dev/dm-0 と表示される。

・/ は、mdadm+LVM 構成での LV である。
・/ 以外では、/dev/mapper/* と表示される。
・動作上の問題はない。
・GRUB 設定の root= で /dev/mapper/* を指定しても状況は変わらない。

(補足)
・Debian 9 では発生しない。
 (lvm2 2.02.168-2、mdadm 3.4-4+b1)
・CentOS 6 では発生しない。
 (lvm2-2.02.143-12.el6_9.1.i686、mdadm-3.3.4-8.el6.i686)
・CentOS 7 では発生しない。
 (lvm2-2.02.171-8.el7.x86_64、mdadm-4.0-5.el7.x86_64)


2. 変換方法


下記のいずれかの手順で、/dev/mapper/ 内でのデバイス・パスが取得できる。


(1) /sys/block/ からのデバイス・パスの取得

# cat /sys/block/dm-0/dm/name
vg_linux-debian_root


・/sys/block/dm-0 は ../devices/virtual/block/md0/ へのシンボリック・リンク


(2) /dev/mapper/ からのデバイス・パスの取得

# ls -l /dev/mapper/ | grep -w dm-0 | awk '{print $(NF -2)}'
vg_linux-debian_root


(補足)
/dev/mapper/vg_linux-debian_root は /dev/vg_linux/debian_root でもアクセス可能


3. 備考


(1) 対応するデバイス・パスを一覧表示するスクリプト

#!/bin/sh
for i in `ls -d /sys/block/dm-*`; do
    echo "/dev/`basename $i`" ... "/dev/mapper/`cat $i/dm/name`"
done


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

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

Debian 9.1 から 9.2 へのアップデート後に Postfix の不具合が発生する。
詳細は、以下の通りである。

[ソフトウェアのバージョン]
・postfix 3.1.6-0+deb9u1
・postfix-sqlite 3.1.6-0+deb9u1

1. 発生事象


/etc/postfix/main.cf の mynetworks の設定が反映されない。

・該当するアドレスの 25 番ポートが LISTEN 状態にならない。
 ('netstat -an | grep :25' の実行結果で確認できる。)


2. 対処方法


Debian 9.1 のパッケージにバージョンダウンする。

(1) パッケージの入手


https://pkgs.org/ 等から、下記のパッケージをダウンロードする。

・postfix-sqlite_3.1.4-7_i386.deb
・postfix_3.1.4-7_i386.deb


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

# dpkg -i postfix_3.1.4-7_i386.deb postfix-sqlite_3.1.4-7_i386.deb


(3) Postfix の再起動

# /etc/init.d/postfix restart
または
# systemctl restart postfix


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

Firefoxのファイル入出力の候補に意図しないマウントポイントが表示されることへの対応 [Linux]

以前、Firefox のファイル入出力の候補に意図しないマウントポイントが表示されるため、表示されないように対応を行った。しかし、システムのバージョンアップにより、再発するようになってしまった。
以下は、この発生事象について備忘録としてまとめたものである。

[関係するソフトウェア]
・OS: CentOS 6/7、Debian 8/9
・Firefox 45.9.0 ESR、Firefox 52.4.0 ESR
・gvfs (CentOS の場合: gvfs、Debian の場合: gvfs-daemons)

1. 発生事象


ファイル入出力の候補にに意図しないマウントポイントが表示される。

・候補が多数表示されるため、見づらい。
・ファイルを開く時の候補に表示される。
・名前を付けてページを保存する時の候補に表示される。
・ブックマークのインポート/エクスポート時の候補に表示される。


2. 対処方法

2-1. gvfs 1.30 より前のバージョンの場合


CentOS 6、CentOS 7.3 まで、Debian 8 が該当する。

また、下記の条件により、状況が異なる。
・/usr/share/gvfs/remote-volume-monitors/udisks2.monitor の有無
 (ただし、CentOS 6 の場合では gdu.monitor)


(1) udisks2.monitor 有の場合 (初期状態)


上記のマウントポイントが表示される。


(2) udisks2.monitor 無の場合 (udisks2.monitor.org へのリネーム)


上記のマウントポイントが表示されない。


2-2. gvfs 1.30 以降の場合


CentOS 7.4 以降、Debian 9 が該当する。

また、下記の条件により、状況が異なる。
・Firefox のバージョン
・/usr/share/gvfs/remote-volume-monitors/udisks2.monitor の有無


(1) Firefox 45.9.0 ESR 場合


(a) udisks2.monitor 有の場合 (初期状態)


・/etc/auto.misc で定義されているマウントポイントが表示される。


(b) udisks2.monitor 無の場合 (udisks2.monitor.org へのリネーム)


・/etc/fstab で定義されているマウントポイントが表示される。


(2) Firefox 52.4.0 ESR の場合


(a) udisks2.monitor 有の場合 (初期状態)


・/etc/auto.misc で定義されているマウントポイントが表示される。
・[他の場所] という項目でまとめられるため、見づらくはない。


(b) udisks2.monitor 無の場合 (udisks2.monitor.org へのリネーム)


・/etc/fstab で定義されているマウントポイントが表示される。



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

[Wikipediaの寄付のお願い]のブロック [misc]

Wikipedia の [寄付のお願い] の表示が Web ブラウジングの邪魔になってきた。
このため、Adblock Plus に上記の表示をブロックする設定の追加を行った。

[ソフトウェアのバージョン]
・Firefox 45.9.0 ESR、Firefox 52.4.0 ESR
・Adblock Plus 2.8.2

[フィルタの設定]
ja.wikipedia.org##div[class="frb"]
en.wikipedia.org##div[class="frb"]


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

[こちらによくアクセスする方はGoogleをホームページに]のブロック [misc]

Firefox で Google 検索を行うと、[こちらによくアクセスする方は Google をホームページに] というポップアップが表示される。
実害はないが鬱陶しいため、Adblock Plus でブロックしている。

1. 以前効果のあった設定


本日(2017-09-20) の朝までは、下記の設定でブロックできていた。

www.google.co.jp##div[aria-label="promo"]

2. 現在効果のある設定


先程 Google 検索を行うと、上記のポップアップが表示されてしまった。
このため、設定の追加を行った。これでまたブロックされるようになった。

www.google.co.jp##div[class="gb_fa gb_g"]


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

Firefoxのブックマークでボーダーが表示されない [Linux]

[ソフトウェアのバージョン]
Firefox 52.3.0 ESR
OS: Debian 8.9、CentOS 7.3

1. 発生事象


Firefox のメニューバーから表示したブックマークで、ボーダーが表示されない。

・表示が重なった場合に見づらい。
・Firefox 45.9.0 ESR では発生しない。


2. 対処方法


ボーダーを表示するためのスタイルシートを追加する。
(Stylish を使用しているため、Stylish に設定を追加する。)

(設定例)

@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

/* setting for bookmark */
menupopup > * {
  background-color: #f5f5f5 !important;
  border: 1px solid #c0c0c0 !important;
}

3. 備考


(1) 色のサンプル


https://developer.mozilla.org/ja/docs/Web/CSS/color_value


[追記]


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

Debian 9でFlash Pluginのクラッシュが度々発生する [Debian]

[ソフトウェアのバージョン]
・OS: Debian 9.1
・Firefox 45.9.0 ESR、Firefox 52.3.0 ESR
・Flash Plugin v27.0.0.130

1. 発生事象


radiko で Adobe Flash Plugin がクラッシュする。

・必ず発生するわけではないが、度々発生する。
 (初回アクセス時に発生しなければ、その後は発生しない。)
・当該事象が発生する場合には、ページの表示に非常に時間を要する。
・Debian 8 (フラウザ、Flash Plugin のバージョンは同じ) では発生しない。
・発生する場合としない場合で、何が異なるのかは不明である。


2. 対処方法


(1) Flash Plugin をできる限り新しいバージョンにする。

(2) ページが正しく表示されない場合には、[ページを再読み込み] を選択する。

(3) ページが正しく表示された場合には、エラーメッセージを無視する。


・特に問題なく機能する。
・万一問題が発生する場合には、[ページを再読み込み] を再度選択する。


(補足)
v27.0.0.130 に更新した後に上記 (2)、(3) での対応ができるようになった気がする。
(正確に検証したわけではない。)


3. 備考


(1) Firefox のエラーメッセージ

###!!! [Parent][MessageChannel::Call] Error: \
(msgtype=0xA20006,name=PPluginInstance::Msg_NPP_SetWindow) \
Channel timeout: cannot send/recv

###!!! [Parent][MessageChannel] Error: \
(msgtype=0x2E0001,name=PBrowserStream::Msg_Write) \
Channel timeout: cannot send/recv

###!!! [Parent][MessageChannel] Error: \
(msgtype=0x2E0003,name=PBrowserStream::Msg_NPP_DestroyStream) \
Channel timeout: cannot send/recv


nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット
前の10件 | -