事象の水平線

個人的ブックマーク代わりなメモ書きブログ。 地球は丸いよ。↓このへん。

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop
前回、何故かCentOSサーバーのクラッシュが頻発して頭を抱えたのだけれど、少し原因が見えてきたのでメモ。

クラッシュしたときは、ディスプレイに何も写らずpingも帰ってこなくなってネットワークも無反応になるので、当初は何が起きてるのかさっぱり解らなかった。
ただ、syslog(/var/log/messages)にcrashとなってる箇所がそれらしいところにあったので、色々実験してみたらどうやらスクリーンセーバー電源管理の絡みでクラッシュする気がする。

ローカルで直接触っている事は少ないので、あまり確証はないのだけれど、スクリーンセーバーの起動するまでの時間が電源管理でディスプレイをスリープする時間よりも長いもしくは同じだと、スクリーンセーバーが起動するタイミングでクラッシュしている様子。
ネットで検索してもそれらしい症状は見当たらないから、うちだけなんだろうな・・・CentOSのフォーラムとかは英語で読むのめんどいので読んでないけど・・・

とりあえず、そうならないように設定したのでこれで様子見ます…

スポンサーサイト

PageTop
Ubuntu11 NFSクライアント設定で、UbuntuからCentOSサーバーにNFSでつながるようにはなったのだけど、NFSのディレクトリをマウントしたままサーバーの電源を切ると、Nautilusが道連れになってしまいます。ソフトマウントでつないでるんですけどねぇ・・・
で、autofsとかいろいろ試したのだけれどうまくいかない。
まぁ、多分よく解ってないだけだと思いますが・・・・

ので、Sambaでつなぐことにしました   Linux同士なのに…orz

で、とりあえずsmbfsをインストールして、マウントする方法です。


linux@Ubuntu-DT:~$ sudo apt-get install smbfs
[sudo] password for linux:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
autofs5
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
cifs-utils
以下のパッケージが新たにインストールされます:
cifs-utils smbfs
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。
42.6 kB 中 4,572 B のアーカイブを取得する必要があります。
この操作後に追加で 180 kB のディスク容量が消費されます。
続行しますか [Y/n]? y
取得:1 http://jp.archive.ubuntu.com/ubuntu/ natty-updates/main smbfs i386 2:4.5-2ubuntu0.11.04.1 [4,572 B]
4,572 B を 0秒 で取得しました (19.5 kB/s)
未選択パッケージ cifs-utils を選択しています。
(データベースを読み込んでいます ... 現在 224530 個のファイルとディレクトリがインストールされています。)
(.../cifs-utils_2%3a4.5-2ubuntu0.11.04.1_i386.deb から) cifs-utils を展開しています...
未選択パッケージ smbfs を選択しています。
(.../smbfs_2%3a4.5-2ubuntu0.11.04.1_i386.deb から) smbfs を展開しています...
man-db のトリガを処理しています ...
cifs-utils (2:4.5-2ubuntu0.11.04.1) を設定しています ...
smbfs (2:4.5-2ubuntu0.11.04.1) を設定しています ...
linux@Ubuntu-DT:~$


そして、
/etc/fstabにこんな感じで書き込みます(一行で)

//192.168.0.101/share /home/share smbfs username=guest,password=pass,rw,defaults 0 0

オプションでpasswordを入れておかないとつなぐ度に聞かれます。たぶん。

で、

linux@Ubuntu-DT:~$ sudo mount -a

でマウントはOKなんですが、やはりこれでもサーバーの電源を切ると微妙(?)にNautilusが飛びます;;;
NFSの時は、Nautilusは全部ダメだったの対して、マウントしたディレクトリを見にいくとそのフォルダだけが飛んで、他のディレクトリは見にいけるというNFSの時よりはマイルドな(?)飛び方なんですけど・・・・

で、仕方ないんで他の方法を探ると、こんなHPを発見
『絶対無糖 (Zettai Non Sugar)』さんの『Ubuntu 11.04 で Samba を使ってみる
『人生をかるくする秘密のバックヤード』さんの『Linuxで利用できるSMBクライアント

フォルダの『場所』(なければ『表示』>『場所バー』)にsmb://IPアドレスと入れるだけでつながるようです。

ということで、
そんならこれでもいける?ということで

linux@Ubuntu-DT:~$ nautilus smb://192.168.0.101/

バッチリOKでした。

ので、サーバーを立ち上げて、つながったらNautilusでサンバのフォルダを開くスクリプトを作りました。
エンコードはUTF-8
→ mount_smb.txt
 (.sh拡張子がアップできないので.txtになってます)

#!/bin/bash

#サーバーのip
smbserver_ip="192.168.0.101"
#サーバーのMacアドレス
macaddress="**:**:**:**:**:**"
#ノーティファイアイコン
notify_icon="/usr/share/icons/Humanity/apps/48/gksu-root-terminal.svg"

##########################################
########## 設定するのはここまで ##########
##########################################

sudo etherwake $macaddress

count=1

while [ 0 ];
do
ping_res=$(ping -c1 $smbserver_ip)
if echo $ping_res | grep -sq ", 0% packet loss"
then
if [ $count -ge 2 ]
then
sleep 15
fi
mount_res=$(/usr/bin/nautilus smb://$smbserver_ip/)
if [ -z $mount_res ]
then
notify-send -i $notify_icon 'Mounted SMB drives Now' &&
aplay "/usr/share/sounds/Media/notify.wav" >/dev/null 2>&1
else
notify-send -i $notify_icon $mount_res &&
aplay "/usr/share/sounds/Media/notify.wav" >/dev/null 2>&1
fi
exit
else
if [ $count -ge 30 ]
then
notify-send -i $notify_icon "I can't find the server." &&
aplay '/usr/share/sounds/Media/Uh oh.wav' >/dev/null 2>&1
exit
fi
let ++count
fi
done



動作は、pingを一発打って帰ってきたらnautilusでsmbにつなぐという感じです。
一発目でつながった時は、既にサーバーが起動していたものとして即nautilusで開きますが、2発目以降の場合は、起動したばかりと想定して、15秒待ってからnautilusで開いています。
pingが帰ってきても、smbが立ち上がるまでは若干時間がかかるので・・・・
また、30回pingを打っても起動が確認できない時はexitしています。

etherwakeやnotify-sendに関しては、Ubuntu11 WOL  して putty で SSH接続を参考にしてください。

後は、作ったスクリプトに実行権限をあげて(chmod)、ランチャーに登録すればばっちりです。

PageTop
リモートのウェブブラウザからCentOSサーバーの電源を切るエントリの続編、というか、ちょい改訂です。
前回ので問題がある訳ではないですけど…

続 CentOS6.0 自動電源OFF その3で、ローカルで作業をしているときは自動で電源を切らないようにしたので、同様に、apache userからも電源が切れないようにします。

というわけで、変更点は実際に電源を切るスクリプトを走らせているphphalt.phpだけです。
エンコードはUTF-8
→phpファイル phphalt2.txt
 (使うときはファイル名をphphalt.phpに)

<html>
<head>
<MEtA http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="refresh" content="15;URL=http:./">
<?php
if(isset($_POST['submit']))
//if submit has been pressed
{
#ログファイル名
$log="/home/share/log/shutdown.log";
#remoteshutdown.phpより優先すべきシェルスクリプト名
$override_exec_file="backup.sh";

#ローカルでログインがないとき
exec("/usr/bin/who | grep tty",$tty);
if(empty($tty)){
#優先すべきスクリプトが走ってないとき
exec("/usr/bin/pgrep -f $override_exec_file",$pid);
if(empty($pid)){
#シャットダウン ログかけるかな?
exec("sudo /sbin/shutdown -h now 2>&1");
$message="<<<<<<<<<< ".date("Y/m/d H:i:s")." Done Shutdown by Apache >>>>>>>>>>";
}
else{
$message="/// Another script is running. Shutdown was suspended. ///";
exec('wall "
###############################
Another script is running.
Shutdown was suspended.
###############################"');
}
}
else{
$message="/// tty user is logged on. Shutdown was suspended. ///";
exec('wall "
###############################
tty user is logged on.
Shutdown was suspended.
###############################"');
}
#HTML
echo('<title>'.$message.'</title>
</head>
<body>'
.$message.'<br>
15秒後にHomeに戻ります。<br>
サーバーがシャットダウンしてる場合、接続がリセットされます。
');
#ログ書き出し
$fp = fopen($log, "a"); #a=追記モード
fwrite($fp, $message);
fclose($fp);
}
php?>

</body>
</html>


まぁ、phpファイルを入れ替えるだけです。

何やってるかは、phpファイルを見てください。(ぉぃ

PageTop
CentOSサーバーが何故か立て続けにクラッシュして、しかもバックアップHDDのデータがダメなスクリプトのせいで綺麗さっぱり消えてしまったので、とりあえずデータだけでも救出しておかないと、と思い、CentOSのシステムとデータを入れたHDDをUbuntu機でマウントしようとしたらマウントできない。

どうやらLVMは簡単にはマウントしてくれないみたいです。

ということで、LVMをUbuntu11でマウントするです。
参考にしたHPは
『しょうこりもなくブログる』さんの『KnoppixでLVMをマウントする
『赤虎wiki』さんの『linux:ubuntu:lvmのマウント
『turbolinux』さんの『LVM(論理ボリュームマネージャ)を設定する

linux@Ubuntu-DT:~$ sudo apt-get install lvm2
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
autofs5
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
watershed
以下のパッケージが新たにインストールされます:
lvm2 watershed
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。
406 kB のアーカイブを取得する必要があります。
この操作後に追加で 1,262 kB のディスク容量が消費されます。
続行しますか [Y/n]? y
取得:1 http://jp.archive.ubuntu.com/ubuntu/ natty/main watershed i386 5 [10.7 kB]
取得:2 http://jp.archive.ubuntu.com/ubuntu/ natty/main lvm2 i386 2.02.66-4ubuntu2 [395 kB]
406 kB を 1秒 で取得しました (333 kB/s)
未選択パッケージ watershed を選択しています。
(データベースを読み込んでいます ... 現在 224420 個のファイルとディレクトリがインストールされています。)
(.../archives/watershed_5_i386.deb から) watershed を展開しています...
未選択パッケージ lvm2 を選択しています。
(.../lvm2_2.02.66-4ubuntu2_i386.deb から) lvm2 を展開しています...
man-db のトリガを処理しています ...
watershed (5) を設定しています ...
update-initramfs: deferring update (trigger activated)
lvm2 (2.02.66-4ubuntu2) を設定しています ...
update-initramfs: deferring update (trigger activated)
initramfs-tools のトリガを処理しています ...
update-initramfs: Generating /boot/initrd.img-2.6.38-13-generic
linux@Ubuntu-DT:~$ sudo lvm vgscan
Reading all physical volumes. This may take a while...
Found volume group "vg_nas" using metadata type lvm2
linux@Ubuntu-DT:~$ sudo lvm vgchange -a y  ←試験的に使うコマンドらしい
3 logical volume(s) in volume group "vg_nas" now active
linux@Ubuntu-DT:~$


と、ここまでターミナルでやったら、
右上にHDDのマークがあることに気が付いたので(パネルをカスタマイズしてディスクマウンタというアプレットを置いてます)、そこからマウントすると
lvm_mount.png

マウントできました。LVなんてマークがついちゃってます。
lvm_mount2.png

ということで、もしかしたら以前XP機に『Ext2Fsd』を入れてマウントしようとしたときも出来なかったのは、LVMだったからかもしれないですねぇ。
CentOSをインストールした時はLVMの意味も解らずに、ただそのまんまインストールしたので次はInitNGも試したいしプライマリでインストールします。

PageTop
前回でほぼ問題の無い動作なのですが、ローカルでファイルをコピーしたり何か作業をするときに、そのままだと電源が切れてしまうので、ローカルでログインしたときは電源を切らないようにしました。

whoコマンドを使うと、ローカルでログインすると端末がttyになるので、それを使いました。

whoコマンドはこんな感じ。
[root@NAS ~]# who
NAS  pts/0   2011-12-10 00:31 (192.168.0.4)   ←puttyのssh接続
root  pts/1   2011-12-10 00:33 (:1.0)   ←UltraVNC上のターミナル
NAS  tty1    2011-12-10 00:33 (:0)
    ←ローカルでのログイン

またまた、ファイルをアップ。
エンコードはUTF-8
→自動シャットダウンスクリプト autoshutdown.txt
 (.sh拡張子がアップできないので.txtになってます)


#!/bin/sh

#チェックするipの設定
declare ip_prefix="192.168.0."
declare -i ip_start=2
declare -i ip_end=98 #192.168.0.99 is PZ6112 #192.168.0.100 is airmac #192.168.0.101 is own

#Shutdownより優先すべきスクリプト
declare override_exec_file=backup.sh

#ログのディレクトリと ログファイル名(頭に/つけてね)
declare logdir=/home/share/log
declare log=/shutdown.log
##########################################
########## 設定するのはここまで ##########
##########################################

declare -i zombicount=0

mkdir $logdir >/dev/null 2>&1

echo "<<<<<<<<<< "$(date +"%Y/%m/%d %p %I:%M:%S")" >>>>>>>>>>" > $logdir$log

while [ $ip_start -le $ip_end ];
do
declare ping_res=$(ping -c3 $ip_prefix$ip_start)

echo "-----------"$ip_start"/"$ip_end"-----------"$(date +"%Y/%m/%d %p %I:%M:%S")"----------" >> $logdir$log
echo $ping_res >> $logdir$log

if echo $ping_res | grep -sq ", 0% packet loss"
then
echo "########### alive ############" >> $logdir$log
exit

elif echo $ping_res | grep -sq "100% packet loss"
then
echo "== dead ==" >> $logdir$log
let ++ip_start

else
if [ $zombicount -gt 2 ];
then
echo "-- zombi exit --"$zombicount >> $logdir$log
exit;

else
let ++zombicount
echo "-- zombi --"$zombicount >> $logdir$log
fi
fi
done

#全ユーザーのターミナルに通達 "$$"は自身のシェルスクリプトのpid
#あれ、クライアントからkillされたらそのことがログに残せないな‥どうやるんだ?
wall "
###########################
Shutdown after 1min !!
Cancel command [kill $$]
###########################"
sleep 30
wall "
###########################
Shutdown after 30sec !!
Cancel command [kill $$]
###########################"
sleep 20
wall "
###########################
Shutdown after 10sec !!
Cancel command [kill $$]
###########################"
sleep 10

#ローカルでログインしている場合
if /usr/bin/who | grep -sq "tty"
then
echo "/// tty user is logged on. Shutdown was suspended. ///" >>$logdir$log
wall "
###########################
tty user is logged on.
Shutdown was suspended.
###########################"
exit
fi

#優先すべきスクリプトが走っていない場合
if [ -z `/usr/bin/pgrep -f $override_exec_file` ]
then
#シャットダウン ログかけるかな?
/sbin/shutdown -h now
echo "<<<<<<<<<<<<<<< "$(date +"%Y/%m/%d %p %I:%M:%S")" Done Shutdown >>>>>>>>>>>>>>>" >> $logdir$log
#優先すべきスクリプトが走ってる場合
else
echo "/// Another script is running. Shutdown was suspended. ///" >>$logdir$log
wall "
###########################
Another script is running.
Shutdown was suspended.
###########################"
fi




クロン登録
[root@NAS ~]# crontab -e
4-59/5 * * * * /usr/local/bin/hddtemp.sh
*/10 * * * * /usr/local/bin/autoshutdown.sh



参考にしたHPは
『アイティメディア』さんの『ログイン中のユーザーを知るには
『いますぐ実践! Linuxシステム管理』さんの『ログイン情報を知る

PageTop
前回のスクリプトで重大な問題が発覚しました。
というか、Linuxとシェルスクリプトをまともに理解してないだけだったのですが・・・

LinuxはWinやMacとちがいデスクトップ上にドライブをマウントしてアクセスするのではなく、/以下のどこか(/mediaとか/mntとか)にマウントして使うので、
前回のスクリプトでは、
マウント先のディレクトリ(フォルダ)を作って、
そこにマウントして、
マウントの時にエラーがでたら(HDDがつながってないとか)、作ったフォルダを消していたのですが、
すでにマウントされている時も同様にエラーが出るので、そこでフォルダごと消してしまうとHDDの中身を丸ごと消してしまうことになります。 なんと・・想像力が足りなかった・・ orz

ということで、/media/以下のマウント先のフォルダは消さないようにしました。

でも、そうすると、ターミナルからmountコマンドでマウントする時はいいけれど、GUIの『場所』メニューからマウントすると、すでにあるディレクトリとは別の名前のディレクトリが作られてマウントされるんだよなぁ・・・
Linuxの管理方法に慣れてないので、いまいち勝手がわからないなぁ・・・


ということで、またファイルもアップしておきます。
エンコードはUTF-8
→個人的バックアップスクリプト backup.txt
 (.sh拡張子がアップできないので.txtになってます)


#!/bin/sh

##########################################
######### バックアップスクリプト #########
####### HDDのルートにバックアップ #######
##########################################
#rsyncのバックアップ元
declare src=/home/share/
#バックアップ先のHDDの名前(ファイルシステムのラベル)
declare backupHDDlabel=NTFS250GB
#ログファイル名(絶対パス)
declare log=/home/share/log/backup.log
##########################################
########## 設定するのはここまで ##########
##########################################
#文字化け対策
export LANG=ja_JP.UTF-8

declare datestr=`date +"%Y-%m-%d_%H%M%S"`
echo "########### BackUpStart "$datestr" ##########" >> $log

#マウントするディレクトリ
declare mountdir=/media/$backupHDDlabel

#backupHDDlabelでHDDを探してbackupHDD変数にデバイスラベル?を格納?
declare backupHDD=`findfs LABEL=$backupHDDlabel` >> $log

#backupHDDのマウント先のディレクトリを作成(エラー抑止)
mkdir $mountdir >/dev/null 2>&1

#既にマウントしてるとマウント時にエラーが出るのでその前にわざとアンマウント
umount $mountdir >/dev/null 2>&1

#backupHDDをマウント HDDが見つからない時はexit
mount $backupHDD $mountdir || { echo "バックアップ失敗。HDDが見つかりません。" >> $log ; exit 1; }


#必要ないけどこっちの方がわかりやすい
declare dest=$mountdir

#バックアップ
rsync -ab --suffix=.$datestr~ --stats --exclude=log/ --exclude=exclude/ $src $dest >> $log
echo "EndTime "$(date +"%Y/%m/%d %p %I:%M:%S") >> $log
#ログ見やすいように改行挿入
echo "" >> $log

#ログは同期(ログのログは残さない)
rsync -a $src/log/ $dest/log/ >/dev/null 2>&1

#backupHDDをアンマウント(エラー抑止)
umount $backupHDD >/dev/null 2>&1



ちなみに、マウントする時に
mount LABEL=なんてろ /media/なんとか でもラベルでマウントできるみたいです。
mountコマンドを調べた時にはそのような記述は見られなかったですが・・・
何でできるんでしょう?よく解りませんけど・・・・まぁ、めんどくさいんで変えてません・・・・

足りないところは、前回前々回のエントリを読んでください。斜めにでも・・・(駄文が多いので・・・)

PageTop
Win2kではフォルダを開いたウィンドウのツールバーにつねに階層の文字列が表示されている。
というか、カスタマイズしてそうしてたのか、デフォルトでそうだったか忘れたけれど、階層を文字列でコピペしたりするのに、Ubuntuのデフォルトのボタンでの表示よりも使いやすいので、表示方法を変えるメモ。

linux@Ubuntu-DT:~$ gconftool -s /apps/nautilus/preferences/always_use_location_entry --type bool true

これだけ。

trueの代わりにfalseを入れれば元に戻る。

なんで、『編集』>『設定』に設定項目がないのか解らないけど、変更できたからまっいいか。


まともにLinuxのデスクトップを最初に触ったのがサーバーに入れたCentOSで左下にメニューのように出てくる階層表示に斬新さを覚え、Ubuntuを入れてツールバーのところにボタンで並ぶ階層表示におもしれ~と、おもったものの、やはり慣れとスタイルというのがあるので、色々カスタマイズしていくうちにこっちの方が使いやすい。

できれば、サイドペインもツールバー上のボタンでOn/Offができるといいのだけれど、今のところ解らない。
まぁ、常時ツリー表示で今のところそれほど不満がないので、まいっか。

参考にしたHP
『ガットポンポコ』さんの『[Ubuntu]Nautilusの場所バーを常時テキスト入力に戻す

PageTop
WINEで起動するDreamWeaver4の起動時に文句を言われるので何とかする。
文句はこんな感じ。
DW4startup.png

で、調べると、

/home/だれだれ/.wine/drive_c/Program Files/Macromedia/Dreamweaver4J/Configuration/Startup

のなかに、『PasteFireworksHTML.htm』というファイルがあって、

内容はこんな感じ。
~~~~~~~~~~~~~~

<head>

<script language="JavaScript">
// Copyright 1999 Macromedia, Inc. All rights reserved.



function initialize() {

MM.event.registerFnCall('dw.clipPaste()', 'PasteFireworksHTML.htm');

}



</script>
</head>

<body onLoad="initialize()">
</body>


~~~~~~~~~~~~~~
要するに、起動時にこれが呼ばれて、bodyのonLoadでinitialize()関数を呼んで、その中で使われているMM.event に registerFnCallってプロパティなんてないよ?と言ってると勝手に解釈。
面倒くさいんで、bodyタグのonLoadをコメントアウトしちゃいました。
(さすがにファイルを削除する勇気はないです。)

どうせ、エラーって読み込めてないんで、根本解決しない限り毎回OK押してるのも同じなので、これでしばらく様子を見ます。

なんせDW4なんて古くて検索しても情報が少ないですなぁ・・・
HTMLのビルドは本気の時はテキストエディタ使いますが、たまーにDWみたいなGUIツールが使いたくなるんですよねぇ・・

PageTop
gEditで正規表現も扱えるようになったのですが、キーボードショートカットで正規表現での文字置換のウィンドウを表示できません。

で、キーボードショートカットをカスタマイズする方法を探しました。

参考にしたのは
『乙女系プロレスリング』さんの『[Ubuntu]geditのキーバインド(キーボード・ショートカット)を変更する方法
前回同様そのまんまですが・・・

正規表現の時と同様、プラグインで実現します。
『empty solution - {}』さんの『EditShortcuts - gedit plugin』から、『editshortcuts-plugin-0.9.1.tar.bz2』をダウンロードします。

これを解凍し、
/home/だれだれ/.gnome2/gedit/に『plugins』フォルダを(なければ)作り、この中に解凍した、
editshortcut』フォルダと
editshortcut.gedit-plugin』ファイル を入れます。

gEditを再起動し、
編集』>『設定』>『プラグイン』で
Edit Shortcuts』にチェックを入れればOKです。

これで、『ツール』に『Edit Shortcuts』の項目が加わりました。

が、プラグインで機能追加した正規表現にはキーボードショートカットが割り当てられないようです。
なんてこったい。

まぁ、仕方ないので、次を検索、前を検索 を それぞれ、F4、F3に割り当てました。(関係ないですが・・)

PageTop
Ubuntuの標準のテキストエディタgEditですが、意外と便利なのでそのまま使ってます。(Winodwsのときは散々色々使いましたが・・・)
が、デフォルトだと文字置換で正規表現が使えないので使えるようにします。

参考にしたのは
『omnioo lab.』さんの『geditで正規表現を使う
まぁ、そのまんまですけど・・・

対応プラグインで実現するらしいので、プラグインをダウンロードします。
『Half Hour Hacks』さんの『gedit Regular Expression Plugin』から、『Download』の文字をクリックしてダウンロードします。

これを解凍し、
/home/だれだれ/.gnome2/gedit/に『plugins』フォルダを(なければ)作り、この中に解凍した、
regex_replace』フォルダと
regex_replace.gedit-plugin』ファイル を入れます。

gEditを再起動し、
編集』>『設定』>『プラグイン』で
Regex Search and Replace』にチェックを入れればOKです。

これで、『検索』に『Regular Expression』の項目が加わりました。

PageTop
小さな発見をしたのでメモ

Nautilusっていうの?ファイルブラウザっていうの?
設定で『各フォルダをそれぞれ別のウィンドウで開く』にチェックを入れていない(デフォルト)の場合、
フォルダを開いたウィンドウで、階層を深く進んだとき、マウスの戻るボタンで階層を戻れる時と戻れない時があるなぁ~とおもっていたら、カーソルがフォルダやファイルの上にある時は戻れないということに気づきました。

なるほどーとはおもったものの、戻れてもいいのにとも・・・
寒い秋?冬?に小さな発見。結構どうでもいいですね・・・

PageTop
結局ThunderBirdを導入したので、OS起動時に一緒に立ち上がるようにした訳ですが、出来れば最小化した状態(タスクトレイにだけ収まった状態)で立ち上がってもらいたい。(というか、Winでもそうしてたし)
ので、そうします。

参考にしたのは
『なんでもかんでもコンピュータ』さんの『【Ubuntu】DevilsPie : アプリケーションを起動した時に、ウインドウの状態(最小化状態、最大化状態、位置など)を設定出来るツール』と『【Ubuntu 11.04】Thunderbird 5.0 b1 をPPAからインストール (Devilspieでログイン時最小化起動)

専用ツールがあるということなので、インストールです。

linux@Ubuntu-DT:~$ sudo apt-get install devilspie
[sudo] password for linux:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
devilspie
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
29.5 kB のアーカイブを取得する必要があります。
この操作後に追加で 131 kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ natty/universe devilspie i386 0.22-1 [29.5 kB]
29.5 kB を 0秒 で取得しました (75.4 kB/s)
未選択パッケージ devilspie を選択しています。
(データベースを読み込んでいます ... 現在 194388 個のファイルとディレクトリがインストールされています。)
(.../devilspie_0.22-1_i386.deb から) devilspie を展開しています...
man-db のトリガを処理しています ...
devilspie (0.22-1) を設定しています ...

GUIツールをインストールします。
linux@Ubuntu-DT:~$ sudo apt-get install gdevilspie
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
gdevilspie
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
21.8 kB のアーカイブを取得する必要があります。
この操作後に追加で 209 kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ natty/universe gdevilspie all 1:0.5-1 [21.8 kB]
21.8 kB を 0秒 で取得しました (68.1 kB/s)
未選択パッケージ gdevilspie を選択しています。
(データベースを読み込んでいます ... 現在 219633 個のファイルとディレクトリがインストールされています。)
(.../gdevilspie_1%3a0.5-1_all.deb から) gdevilspie を展開しています...
bamfdaemon のトリガを処理しています ...
Rebuilding /usr/share/applications/bamf.index...
desktop-file-utils のトリガを処理しています ...
python-gmenu のトリガを処理しています ...
Rebuilding /usr/share/applications/desktop.ja_JP.utf8.cache...
man-db のトリガを処理しています ...
python-support のトリガを処理しています ...
gdevilspie (1:0.5-1) を設定しています ...
python-support のトリガを処理しています ...

起動します。メインメニュー?アプリメニューには登録されませんので、コマンドからです。
『アプリケーションメニュー』>『アクセサリ』の中にあります。

linux@Ubuntu-DT:~$ gdevilspie


『Start devilspie ~~』にはチェックを入れて
『追加』で(後から撮ったので既にありますが…)
ssgDevilspie1.png

まぁ、名前はThunderBirdあたりで・・・
window_name』 を 『Mozilla Thunderbird』とかにします。
この辺はウィンドウを補足して何か操作をする系のソフトでお馴染みの感じです。UWSCとか
ssRuleEditor1.png

geometry』はウィンドウのサイズです。決まった場所に決まったサイズで表示したいとき使います。
minimize』で最小化されます。
ssRuleEditor2.png

で、出来上がった構文が
( if
( begin
( contains ( window_name ) "Mozilla Thunderbird" )
)
( begin
( geometry "900x1014+0+162" )
( minimize )
( println "match" )
)
)

こんな感じです。

S-expressionって文法?らしいです。始めて聞きましたけど、まぁ、書き方解らないのでGUIでやればいいかな。

Ubuntuにも、UWSCみたいなAutoKeyってソフトがあるみたいです。インストールしましたけどまだ使ってないのでよく解りませんが、そっちでやってもいいんでしょうけど、何か簡単そうなのがあったのでこれでやっちゃいました。
問題なく動いてます。

PageTop
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。