トップ 追記

ORCA愉快日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|
Linux | PC | Ubuntu | kde | orca | scribus | その他 | りなざう | デジカメ | ネタ | 音楽 | 航空 | 鉄道 | 旅行 | 料理

2009-06-30 mount.cifsでLinuxからWindowsのファイル共有にアクセスする際のメモ

_ [Linux] 共有プロトコル SMBとCIFSの違いメモ

□ 共有プロトコル SMBとCIFSの違い
プロトコル名トランスポート層プロトコル使用ポート備考
CIFSTCP/IP445現在主流のプロトコル
SMBNBT(NetBIOS over TCP/IP)
またはNetBEUI等
137-139過去のプロトコル
詳細は、下記のURLを参照。 @IT - 第20回 ファイル共有プロトコルSMB/CIFS(その1〜3) http://www.atmarkit.co.jp/fwin2k/network/baswinlan020/baswinlan020_01.html http://www.atmarkit.co.jp/fwin2k/network/baswinlan020/baswinlan021_01.html http://www.atmarkit.co.jp/fwin2k/network/baswinlan020/baswinlan022_01.html Windowsネットワークに関する全体を知りたいのなら、こちらを参照。 http://www.atmarkit.co.jp/fwin2k/serial/index/index.html @IT - ポート445(ダイレクト・ホスティングSMBサービス)に注意 http://www.atmarkit.co.jp/fwin2k/win2ktips/088directhostedsmb/088directhostedsmb.html

_ [Linux] mount.cifsでLinuxからWindowsのファイル共有にアクセスする際のメモ

最近は、LinuxからWindowsのファイル共有にアクセスする際に、smbmount・mount.smbfs・mount -t smbfsではなく、mount.cifs・mount -t cifsなどのコマンドでマウントするのが主流になっています。最近のカーネルではsmbfsがサポートされなくなっているため、smbmountコマンド等が削除されており、mount.cifsコマンド等を利用するのが推奨されているようです。これらの件について調べてみたのでそのメモ。

□ mount.cifsでLinuxからWindowsのファイル共有にアクセスする
LinuxからWindowsのファイル共有にアクセスする場合、最近では
mount.cifsかmount -t cifsコマンドを実行することが多くなってます。
  
これらのコマンドは、Debian系ではsmbfsパッケージに入っており
Redhat系ではsamba-clientパッケージに入っているようです。
  
Debian系では、Synapticを利用するか下記のコマンドでインストール。
# aptitude install smbfs
  
Ubuntu 8.04の場合、下記のようなコマンドがインストールされます。
---------------------------------
$ dpkg -L smbfs | grep bin
/sbin/mount.smbfs
/sbin/mount.cifs
/sbin/umount.cifs
/usr/sbin/cifs.upcall
/usr/bin/smbumount
/usr/bin/smbmount
(一部略)
---------------------------------
詳細なオプションは、man mount.cifsなどを実行して確認のこと。
  
Samba 3.2 日本語ドキュメント mount.cifs / umount.cifs
http://www.samba.gr.jp/project/translation/3.2/htmldocs/manpages-3/mount.cifs.8.html
http://www.samba.gr.jp/project/translation/3.2/htmldocs/manpages-3/umount.cifs.8.html
  
mount.cifsコマンドは、Linuxでしか動作せず、kernelでcifsのサポートが必要です。
通常のカーネルであれば、/lib/modules/(カーネルバージョン)/kernel/fs/cifs/cifs.ko
などとしてインストールされているはずです。
-----------------------------------------------------
$ ls -l /lib/modules/`uname -r`/kernel/fs/cifs/
合計 292
-rw-r--r-- 1 root root 293380 2009-04-16 05:11 cifs.ko
-----------------------------------------------------
  
  
□ mount.cifsでのマウント例
-----------------------------------------------------------------------------------------
$ mount.cifs //(Windows側IPアドレス)/(共有フォルダ名) (Linux側マウントパス) -o (オプション)
$ mount.cifs //192.168.0.2/share ~/hogehoge/ -o user=smbuser,password=smbpass,iocharset=utf8
-----------------------------------------------------------------------------------------
正常にマウントされた場合は、エラー等が表示されずに終了します。
  
Linux側のマウントパスは、任意のフォルダを事前に作成しておく必要があります。
また、mount.cifsを実行するユーザが利用できるよう、適切なアクセス権限が必要です。
(mount.cifsを実行するユーザと、フォルダの所有者を同一にしておく等)
  
上記の例でいえば、ホームフォルダ上にhogehogeフォルダを作成して
共有にアクセスするためのユーザ名とパスワードを指定し
日本語フォルダが文字化けするのを防ぐためにiocharset=utf8を指定しています。
  
マウントされていることを確認するには、mountコマンドを使用します。
-------------------------------------------------------------
$ mount
(略)
//192.168.0.2/share on /home/user/hogehoge type cifs (rw,mand,nosuid,nodev,user=smbuser)
-------------------------------------------------------------
  
アンマウントする場合は、下記のようにしてアンマウントできます。
-------------------------------------------------------------
$ umount.cifs (マウントパス)
$ umount.cifs ~/hogehoge/
-------------------------------------------------------------
  
@IT - Windows上のファイルにLinuxからアクセスするには(mount.cifs編)
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/a004mountcifs.html
  
ネットで検索すると、mount.smbfsの時代に使われていたcodepageオプションを
指定しているケースもあるけど、man mount.cifsにはこのオプションは
記載されていないので、無効なオプションのはずです..?
  
  
□ mount.cifsとmount -t cifsで必要なアクセス権限の違い
また、mount -t cifs形式のコマンドでマウントする場合は、root権限で実行する必要があります。
-----------------------------------------------------------------------------------------
# mount -t cifs //(Windows側IPアドレス)/(共有フォルダ名) (Linux側マウントパス) -o (オプション)
-----------------------------------------------------------------------------------------
しかしながら、mount.cifsではsetuid rootされているため、一般ユーザでも
書き込み権限のある共有をマウントすることが可能になっています。
  
---------------------------------------------------------
$ ls -l /sbin/*mount.cifs
-rwsr-xr-x 1 root root 23340 2008-10-11 01:56 /sbin/mount.cifs
-rwsr-xr-x 1 root root  9260 2008-10-11 01:56 /sbin/umount.cifs
---------------------------------------------------------
確かに、この2つのコマンドはsetuidされています。

_ [Linux] mount.cifsでのマウント時によくある失敗パターン

mount.cifsなどのコマンドを実行時に、うまく接続できなかったり共有にアクセスできなかったりする場合のパターンメモ。もちろん、Windows側の共有がちゃんと作成されているかどうか、共有フォルダへのアクセス権/ユーザが設定されているかどうか、アクセス権のあるユーザのパスワードが設定されているかどうか、セキュリティソフトやファイヤウォール等によって通信が阻害されていないかどうか等、Windows側でもしっかりと確認してください。

また、下記のエラーパターンと同じだからといって原因も同じものとは限りません。"原因の一つかもしれない"という程度に考えて、色々原因を探るのが良いでしょう。

□ パスワードを間違えている場合、共有フォルダへのアクセス権がないなどの場合
$ mount.cifs //192.168.0.2/share ~/hogehoge/ -o user=smbuser,password=user,iocharset=utf8
mount error 13 = Permission denied
Refer to the mount.cifs(8) manual page (e.g.man mount.cifs)
  
□ Windowsで共有フォルダのユーザにパスワードが設定されていないなどの場合
「コントロールパネル」→「ユーザアカウント」などでパスワードを設定してください。
$ mount.cifs //192.168.0.2/share ~/hogehoge/ -o user=smbuser,password=,iocharset=utf8
mount error 5 = Input/output error
Refer to the mount.cifs(8) manual page (e.g.man mount.cifs)
  
□ 共有フォルダ名の後に間違えて/をつけている場合
$ mount.cifs //192.168.0.2/share/ ~/hogehoge/ -o user=smbuser,password=,iocharset=utf8
retrying with upper case share name
mount error 6 = No such device or address
Refer to the mount.cifs(8) manual page (e.g.man mount.cifs)
  
□ IPアドレスを間違えている場合
またはセキュリティソフト/ファイヤウォールで通信を遮断していないか確認してください。
$ mount.cifs //192.168.0.222/share ~/hogehoge/ -o user=smbuser,password=,iocharset=utf8
mount error 113 = No route to host
Refer to the mount.cifs(8) manual page (e.g.man mount.cifs)
  
□ 共有名を\\から始めた場合
$ mount.cifs \\192.168.0.2/share ~/hogehoge/ -o user=smbuser,password=,iocharset=utf8
mount error : improperly formatted UNC name. \192.168.0.2/share does not begin with \\ or //
No ip address specified and hostname not found
  
この場合は、バックスラッシュ\\がエスケープされて\として扱われて
しまっているのが原因なので
$ mount.cifs \\\\192.168.0.2/share ~/hogehoge/ -o user=smbuser,password=,iocharset=utf8
という形式で指定すればマウントできます。

2009-06-26 FirefoxでImage Zoomが有効だと右クリックメニュー位置がずれる

_ [Linux] FirefoxでImage Zoomが有効だと右クリックメニュー位置がずれる

Ubuntu 8.04環境に移行した際に、Image Zoomをインストールしていると、画像の上で右クリックして表示されるメニューの描画位置が大きく左斜め上にずれます。動作検証環境はUbuntu 8.04/Firefox 3.0.11/Image Zoom 0.3.1です。

原因を調べてみると、どうやらImage Zoomの設定で「マウスジェスチャーを使用する」にチェックを入れてると問題が発生するらしい。設定は、メニューから「ツール」→「アドオン」→「拡張機能」タブを選び、Image Zoomの項目を選択して「設定」を押すして開く。「マウスジェスチャーを使用する」のチェックを外して「OK」を押すことで対処できます。


2009-06-14 Ubuntuでタイトルバー付きのスクリーンショットを撮る方法

_ [Ubuntu] Ubuntuでタイトルバー付きのスクリーンショットを撮る方法

Ubuntu 9.04でスクリーンショットを撮ろうとしたところ、Compiz Fusionが有効になっている場合は、スクリーンショットにタイトルバー(ウィンドウの装飾)が含まれていなかったので調べた際のメモ。

□ Ubuntuでスクリーンショットを撮る方法
UbuntuのGnome環境でスクリーンショットを撮る場合は、gnome-screenshotで行う。
Gnomeのショートカットキーに割り当てられているので、下記の操作でキャプチャが行える。
---------------------------------------------------------------
PrintScreenキー        :画面全体をキャプチャ
Alt + PrintScreenキー  :フォーカスのあるウィンドウをキャプチャ
---------------------------------------------------------------
  
または、メニューから「アプリケーション」→「アクセサリ」→「スクリーンショットの取得」
でもgnome-screenshotを起動してキャプチャすることができる。
  

  
  
その他、下記のアプリやコマンドでもスクリーンショットを撮ることができます。
---------------------------------------------------------------
gnome-screenshot  (gnome-utilsパッケージ)
ksnapshot  (ksnapshotパッケージ) ※
gimp  (gimpパッケージ)
importコマンド  (imagemagickパッケージ) ※
xwdコマンド  (x11-appsパッケージ)
---------------------------------------------------------------
(※ = 追加でインストールが必要と思われるもの)  
  
詳細は、下記参照のこと。
http://hitaki.net/diary/20080220.html#p03
□ Ubuntuでタイトルバー付きのスクリーンショットを撮る方法
Compiz Fusionが有効になっているデフォルトの状態で、gnome-screenshotで
ウィンドウのみのスクリーンショットを撮ろうとすると、下記の画像のように
タイトルバー(ウィンドウ装飾)が取り込まれていません。
  

  
これは、Compiz Fusionが有効になっている場合は、ウィンドウ装飾の描画は
Compiz Fusionのdecorationプラグインによって描画されるため
gnome-screenshotから取り込めないようです。
  
この問題の対処方法としては2通りあります。後者の方がおすすめです。
---------------------------------------------------------------
1. Compiz Fusionを無効にしてスクリーンショットを撮る
「システム」→「設定」→「外観の設定」→視覚効果タブで「効果なし」を選択して
Compiz Fusionを無効にした上でスクリーンショットを撮ります。
  
これであれば、問題なくタイトルバーもキャプチャできます。ただし
Compiz Fusionの有効/無効を切り替えるのに、少し手間がかかるのが難点でしょうか。
  

  
---------------------------------------------------------------  
2. ksnapshotやgimpなどの他のアプリケーションでスクリーンショットを撮る
こちらの方法は、Compiz Fusionを有効にしたままでも利用できます。
  
ksnapshotは、synapticなどを利用してインストールしてください。
kde-i18n-jaも一緒に入れておくと日本語化できます。
  
ksnapshotからスクリーンショットを撮る場合は、1-2秒程度の
遅延を設定した上で、スクリーンショットを撮りたいウィンドウの
タイトルバー部分をクリックしてフォーカスを当てて撮影してください。
  
gimpの場合は、「ファイル」→「画像の生成」→「スクリーンショット」を選んで
ksnapshotと同様の方法で、スクリーンショットを撮ってください。
  


2009-05-30 Etchのインストールが途中で止まってしまう場合の対処法

_ [orca] Etchのインストールが途中で止まってしまう場合の対処法

Debianアーカイブの署名鍵が更新されているため、4.0r7以前のisoイメージからインストールしようとしたときに、「ソフトウェアの選択とインストール」の箇所でエラーで止まったままになります。対処法としては、4.0r8以降のisoイメージを利用してインストールを行えばOKです。

Etchの4.0r7以前のバージョンのisoイメージからインストールしようとすると
鍵の照合に失敗して下記の状態で止まってしまい、インストールできません。
対策として、下記のリンクにある4.0r8以降のisoイメージを利用してください。

  
参考URL
debian.org - Debian Archive Signing Key to be changed
http://www.jp.debian.org/News/2009/20090523 
Debian GNU/Linux 4.0 のアップデート (2009/4/8)
http://www.debian.org/News/2009/20090408 
Etch 4.0r8 CDイメージ ダウンロード
http://cdimage.debian.org/cdimage/archive/4.0_r8/i386/iso-cd/ 

_ [料理] ためしてガッテンの中でも美味しそうなワザの回メモ

ためしてガッテンのレシピは、実際作ってみると美味しいモノが多いのでとても役に立ちます。ということで、美味しそうな味の回をメモ

麻婆豆腐の回のレシピは、油がちょっと多いので少し少なめに作れば美味しい麻婆豆腐ができます。あとは豆鼓醤とか刻んだ豆鼓を加えるとより風味がupして美味しいかと思います。

ハンバーグの回はおいしそうでした。まだこのレシピで作ってないのですが、蒸しを入れることで肉汁を閉じこめてしまうのはワザですね。番組の映像でもあふれ出る肉汁が本当に美味しそうでした。

カレーの回は、ニンニク/バター/トウガラシ/砂糖といった食材で香りと辛みと脂肪分と甘みを増してやるというのが、コツです。これ、人の好む味覚の条件にぴったり当てはまっているので、恐るべしデス。実際にニンニクと砂糖を増やしてみたら、それだけでも美味しいカレーができましたよ。

NHK - ためしてガッテン 大発見!マーボー豆腐 激うま調理術
http://cgi2.nhk.or.jp/gatten/archive/program.cgi?p_id=P20060913
NHK - ためしてガッテン シェフが本気で脱帽!ハンバーグ極上化作戦
http://cgi2.nhk.or.jp/gatten/archive/program.cgi?p_id=P20090422
NHK - ためしてガッテン うまさ別次元! カレー大革命
http://cgi2.nhk.or.jp/gatten/archive/program.cgi?p_id=P20070131

2009-05-22 VBScriptでVistaのUACの権限昇格を行う方法

_ [PC] VBScriptでVistaのUACの権限昇格を行う方法

WSHでVBScriptなスクリプトを書いたときに、Vista環境ではUACの影響で管理者権限での操作が行えなかったので調べた際のメモ。他人のVista環境で実行してもらうので、インストールの関係上PowerShellではなくWSHで書く必要があったのです。また、UACを無効にするのはダメですし、アプリケーションを追加でインストールしてもらえるとは限らないでしょうし。ま、今さら感も強いのですが、システムのデフォルト環境で動かす必要がある場合には、レガシーなものが役に立ちますからねー。

Vista環境では、通常アプリケーションを管理者権限で実行したい場合は
右クリック→「管理者として実行」で実行したり、ファイルのプロパティの
互換性タブで管理者として実行するよう設定できる。
参考: @IT - Windows Vistaでプログラムを管理者モードで実行する
  
しかしながら、悪意のあるスクリプトが安易に実行されるのを防ぐためか
WSHスクリプトには、そのようなメニューやタブは存在しない。
  
そのため、下記のような方法を取る必要がある。
----------------------------------------------------------------
1.バッチファイルを介して、管理者権限で実行する
管理者権限で実行する際には、C:\Windows\System32などのパスで実行されるので
WSHスクリプトのフルパスを記述したバッチファイルを作成する。
(テキストファイルの内容を修正し、拡張子を.batにする)
バッチファイルを右クリック→「管理者として実行」で実行。
  
2.コマンドプロンプトを管理者権限で実行し、スクリプトを実行する
スタートメニューから「すべてのプログラム」→「アクセサリ」を開き
「コマンドプロンプト」の項目の上で右クリック→「管理者として実行」
で実行する。コマンドプロンプトが管理者権限で実行されるので
コマンドのフルパスを入力するなどして実行する。
  
面倒なようなら、スタートメニューを開き、下部にある検索エリアに
「cmd」と入力して、Ctrl+Shift+Enterキーを押して管理者として起動させる。
管理者として開いた場合は、タイトルバーに「管理者: ****」のように表示される。
  

  
3.PowerToysに含まれるelevateコマンドなどを利用し管理者権限に昇格して実行する
VistaのUACはrunasコマンドでの権限の昇格ができないようなので
下記のサイトを参考にし、権限昇格のためのelevateコマンドをインストールし
それを介して実行する。
http://technet.microsoft.com/ja-jp/magazine/cc510320.aspx
  
  
上記の方法はどれも、操作などの手間がかかるので
下記の権限昇格のためのコードを、WSHスクリプト自体に組み込むのが楽。
  
4.WSHスクリプトに組み込む方法
Vista環境かどうかチェック(WSHのバージョンが5.7/OSバージョンが6.0以上)して、
ShellExecuteをrunasで再実行させることで、管理者権限への昇格を試みます。
(下記のスクリプトで下から3,4行目)
  
これなら、ダブルクリックしてもらい権限の昇格の確認ダイアログで
「続行」を押すだけなので、簡単です。
  
下のスクリプトでは、Vista環境かどうかのチェックを行っているので
組み込んだスクリプトを、XPなどの環境で実行しても影響はありません。
Chr(34)はダブルクォート「"」を表しています。
=========================================================
Dim objWMI, objShell, osInfo, os 
  
' Vistaかどうかチェックし管理者権限に昇格させる
do while WScript.Arguments.Count = 0 and WScript.Version >= 5.7
    Set objWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
    Set osInfo = objWMI.ExecQuery("SELECT * FROM Win32_OperatingSystem")
  
    For Each os in osInfo
        If left(os.Version, 3) < 6.0 Then exit do
    Next
    
    ' 引数付きでwscriptを管理者権限で再実行
    Set objShell=CreateObject("Shell.Application")  
    objShell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName & Chr(34) & " uac","","runas",1
    WScript.Quit
loop
=========================================================
  

  
参考URL
Jeans & Development - Vistaにおいて、VBScriptスクリプト中で管理者権限に移行する方法
http://kandk.cafe.coocan.jp/nucleus/index.php?itemid=639
Winhelponline.com - VBScripts and UAC elevation
http://www.winhelponline.com/articles/185/1/VBScripts-and-UAC-elevation.html
Microsoft TechNet - Tales from the Script (WSHのバージョンやOS判別の記事あり)
http://www.microsoft.com/japan/technet/community/columns/scripts/sg0903.mspx
@IT- 第7回 管理者権限での実行を制限するユーザー・アカウント制御UAC(前編)(UACをわかりやすく解説)
http://www.atmarkit.co.jp/fwin2k/vista_feature/07uac01/07uac01_01.html
Microsoft TechNet - Windows Vista でのユーザー アカウント制御の理解と設定 (UACの深い理解向け)
http://www.microsoft.com/japan/technet/windowsvista/evaluate/feat/uaprot.mspx

2009-05-18 UbuntuやWindows 7向けの美麗な壁紙のリンク

_ [Linux] UbuntuやWindows 7向けの美麗な壁紙のリンク

はてブで話題になってた壁紙のリンク。Ubuntu向けだけでなくWindows 7やMac OS X、変わったところではマルチモニタ向けの横長壁紙や、美しい自然の壁紙なども数多くあります。うちの環境はWUXGA(1920x1200)モニタを使っているので、この解像度に合うサイズの壁紙が限られるのが残念ですが、どれかお気に入りの壁紙に差し替えてみるかな。

hongkiat.com -  60 Beautiful Ubuntu Desktop Wallpapers
http://www.hongkiat.com/blog/60-most-execellent-ubuntu-wallpapers/
hongkiat.com -   Windows 7 Wallpapers, The Finest So Far
http://www.hongkiat.com/blog/windows-7-wallpapers-the-finest-so-far/
hongkiat.com -   60 Most Beautiful Apple (Mac OS X Leopard) Wallpapers
http://www.hongkiat.com/blog/60-most-beautiful-apple-mac-os-x-leopard-wallpapers/
hongkiat.com -   70+ Beautiful Dual Monitors Desktop Wallpapers
http://www.hongkiat.com/blog/70-beautiful-dual-monitors-desktop-wallpapers/
hongkiat.com -   100+ Absolutely Beautiful Nature Wallpapers For Your Desktop
http://www.hongkiat.com/blog/100-absolutely-beautiful-nature-wallpapers-for-your-desktop/

2009-05-05 iPod nanoでフォントサイズがたまに変になるのが笑える

_ [音楽] iPod nanoでフォントサイズがたまに変になるのが笑える

ふだんは第4世代のiPod nanoを使っていますが、たまにフォントの表示サイズがばらばらで変になります。まるで海外製品のパッケージに書かれているぁやしげな日本語みたいで笑えますね。

この現象は、中央のボタンと上ボタン(menu)をしばらく長押ししてリセットしたり、iTunesに接続して同期をし直せば直ります。下記に機種ごとのiPodのリセット方法のリンクを載せておきます。

ま、リセットすれば直るということであれば、iPod内部のOSでフォントキャッシュがよく破損するとか、フォントサイズに関する情報とか、レンダリング等で何か問題があるのでしょうかね。


  
apple - iPodのリセット方法
http://support.apple.com/kb/HT1320?viewlocale=ja_JP

2009-05-03 GNOMEファウンデーションが寄付を求めているらしい

_ [Linux] GNOMEファウンデーションが寄付を求めているらしい

経済危機の影響で、GNOMEファウンデーションがプロジェクトを円滑に進めるための資金に困っているので、寄付を求めているらしい。また、GNOMEを成長させるためには企業の財源のみに依存した形にしたくないとのこと。寄付を行ったことがない人は始めてみたり、現在寄付を行っている人は毎月の寄付額をちょっぴり増額してみては。

日本でも、年収の3%といわないまでも年1万円くらいは寄付してみる動きが広がらないかなと思っています。年1万円といえば、平均年収500万として0.2%ほどにしかなりません。もちろん、明日食うに困る様な状態だったら無理でしょうが、無駄なデジタルガジェットを買うのをぐっと抑えて、寄付を行ってみるのも粋な行動なのではないでしょうか。

というか、GNOME本体の活動だけでなく日本のGNOMEコミュニティの活動をもっと広く知ってもらって参加者を増やさないと。各ディストリビューションのコミュニティに比べて、圧倒的にリソースが足りないので。

J5's Blog - The GNOME Foundation Needs Your Help
http://www.j5live.com/2009/04/30/the-gnome-foundation-needs-your-help/
gnome.org - Become a Friend of GNOME!
http://www.gnome.org/friends/
  
□ Friend of GNOME (Gnomeの友達)
Gnome 2.26の開発中に、GNOMEの活動を個々に寄付や貢献を通して
支援して行こうという、Friend of Gnomeというプロジェクトが立ち上がりました。
(参照:Gnome 2.26のリリースノート)
  
寄付にはいくつかの形態があって
  
* 月$10ずつ :ステッカーやお礼のハガキ、初年度はTシャツをもらえる
* $25-500 :GNOMEマウスパッドやステッカーをもらえる
* $500-1200 :マグカップやGNOME Tシャツをもらえる
* $1200以上 :取締役のサイン入りのGNOME足跡サインのフレームをもらえる
  
になっているらしい。支払いはPaypalなので、アカウントを持っていない場合は
作成する必要がありますが。
 

_ [Linux] PostgreSQLでSQLの実行時間を知ってチューニングするためのメモ

PostgreSQLでの基本的なSQL文のチューニングのやりかたのメモ。SQL文のチューニングでは、1.遅いSQL文をログに書き出して把握 2.SQL文の実行計画と計測結果を元にSQLの中で遅い箇所を特定 3.SQL文/DB構造の見直しと修正/確認 の順に繰り返します。

□ PostgreSQLでのSQL文チューニングメモ
* postgresql.confのlog_min_duration_statement項目の設定
  →指定された時間以上実行にかかったSQL文を、ログに出力します。
  
* psqlで\timingコマンドを使用
  →psqlのコンソール上で\timingコマンドを実行しておくと、SQL文を
  実行するたびに、実行結果と共に処理にかかった時間も表示されるので
  簡易的に実行速度を知りたい場合に便利。
  
* psqlでSQL文の実行時にEXPLAIN ANALYZE句を先頭に付けて実行
  →SQL文を実行する際の実行計画と、かかった時間を計測して表示します。
  インデックスを用いた検索がされているかどうか、検索条件の型の比較
  などといった詳細な実行計画を確認できます。
  
  EXPLAIN句はSQL92で定義されておらず、MySQLやOrcacleの
  EXPLAIN句とでは使い方が異なるようなので注意。
  
  また、INSERTやUPDATEやDELETE等のクエリを実行する場合は
  SQL文が実際に実行されてデータに影響が出るので、BEGIN/ROLLBACK句で
  トランザクションを定義し、影響がないようにして実行すること。
  
  
□ 参照URL  
日本PostgreSQLユーザ会 - SQLチューニング(1) 〜 実行時間の計測
http://www.postgresql.jp/blog/68
日本PostgreSQLユーザ会 - SQLチューニング(2) 〜 実行コスト(EXPLAIN / EXPLAIN ANALYZE)
http://www.postgresql.jp/blog/71
日本PostgreSQLユーザ会 - SQLチューニング(3) 〜 EXPLAINの実際
http://www.postgresql.jp/blog/78
@IT - Linuxトラブルシューティング 第3回 PostgreSQLを遅くしている犯人はどこだ?
http://www.atmarkit.co.jp/flinux/rensai/troubleshoot03/ts03a.html
PostgreSQL マニュアル - 第 14章性能に関するヒント
http://www.postgresql.jp/document/current/html/performance-tips.html
PostgreSQL マニュアル - EXPLAIN句
http://www.postgresql.jp/document/current/html/sql-explain.html
Postgresql Wiki - Using_EXPLAIN
http://wiki.postgresql.org/wiki/Using_EXPLAIN/ja

2009-04-24 Ubuntu 9.04 Jaunty Jackalope リリース

_ [Linux] Ubuntu 9.04 Jaunty Jackalope リリース

2009/4/23にUbuntu 9.04がリリースになりました。サポート期間は2010年10月までです。日本時間でも4/23のうちにリリースされてましたね。翻訳漏れの項目もいくつかありましたが、主要なアプリでの翻訳はだいたい問題ないレベルにまではなっていたと思います。とにもかくにも、リリース作業に参加した関係者の皆様お疲れさまでした。

VMwareにUbuntu 9.04をisoイメージから入れてみたら、簡易インストールが選択されるため、後でキーボード配列やロケール設定をやり直さなければならないのは面倒だなぁ。英語環境の場合はともかく、日本語環境なら簡易インストールでインストールしない方が後々楽かも。どっちもどっちか。

追記:4/24にUbuntu 9.04 日本語 Remix CDリリースされました。

Ubuntu Japanese Team - ニュース Ubuntu 9.04 リリース
http://www.ubuntulinux.jp/News/ubuntu904
Ubuntu Wiki - JauntyJackalope リリースノート
https://wiki.ubuntu.com/JauntyJackalope/ReleaseNotes/ja
Ubuntu Wiki - JauntyJackalope
https://wiki.ubuntu.com/JauntyJackalope
Ubuntu Japanese Team - ニュース Ubuntu 9.04 Desktop 日本語 Remix CD リリース
http://www.ubuntulinux.jp/News/ubuntu904-desktop-ja-remix

_ [Linux] GPLv3の逐条解説書リリースメモ

自分メモ。IPAからGPLv3に関する解説書がリリースされたので、読んでおくこと。前文含めると256ページある長めのドキュメントだけど、その分解説が丁寧で理解しやすい。

ITPro - GPLv3の条文解説書,IPAがクリエイティブ・コモンズで公開
http://itpro.nikkeibp.co.jp/article/NEWS/20090423/329016/
IPA - GNU GPL v3 解説書
http://ossipedia.ipa.go.jp/legalinfo/

_ [PC] Adobe Readerは狙われている、という意識を持った方がよい

Adobe Readerの脆弱性によって被害を受ける可能性があるというのは、コンピュータ関係に詳しい人にはよく知られてますが、一般的にはそうでないのがやっかいです。Adobe Readerは家庭やビジネスで利用する機会も多く、たいがいのコンピュータにはインストールされているかと思います。 しかしながら、いまだに(Adobeでのサポートの外れた)古いバージョンを利用しているケースもよく見かけられ、無意識のうちにリンクをクリックしてPDFを開きがちです。Adobe Readerも、Windows Updateのように必ずアップデートをするよう、会社内や家庭内で通知しセキュリティに対する意識を持っておくべきでしょう。

ITPro - 「Adobe Readerの脆弱性が狙われている」――シマンテックが警告
http://itpro.nikkeibp.co.jp/article/NEWS/20090416/328599/
ITPro - 2009年は「PDFウイルス」を使う標的型攻撃が最多、およそ半数に
http://itpro.nikkeibp.co.jp/article/NEWS/20090507/329641/
IPA - Adobe ReaderおよびAcrobatにおけるバッファオーバーフローの脆弱性 - CVE-2009-0658
http://www.ipa.go.jp/security/ciadr/vul/20090311-adobe.html

2009-04-21 Bashスクリプトでの好ましい書き方/役立ちサイトのメモ

_ [Linux] Bashスクリプトでの好ましい書き方/役立ちサイトのメモ

Linux環境かつBashがデフォルトな環境しか考えていないようなbashismなスクリプトではなく、移植性の高いスクリプトを書くためのサイトのリンクをメモしておきます。日本語で内容のまとまったサイトがなかなか見あたらないので、全て英語サイトへのリンクですが、その分有用なサイトが多いので大いにチカラになるかと思います。

* dabase - Testing for root in POSIX shell
http://dabase.com/e/13022/
root権限で実行されているか確認するためのスクリプトの例。
whoamiとid -uのどちらを使うか、testコマンドと[コマンドのどちらを使うか
また、セミコロンの使用などについて。
  
* Greg's wiki - Why is $(...) preferred over `...` (backticks)?
http://wooledge.org:8000/BashFAQ/082
スクリプト中でのコマンド実行の際に、$()でのコマンド置換のほうが
バックスラッシュ``での実行よりより良い理由。
  
* Greg's Wiki - What is the difference between test, [ and [[ ?
http://wooledge.org:8000/BashFAQ/031
条件判断の際に使用するtestコマンドと[と[[の違いについて。
  
  
* Bash FAQ
http://wooledge.org:8000/BashFAQ
BashのFAQがまとまっているサイト。日本語ではこういうサイトが
見あたらないので重宝する。
  
* Bash Pitfalls
http://wooledge.org:8000/BashPitfalls
日本語でいえば「Bashの落とし穴」。Bashのプログラミング時に
やってしまいがちなエラー例についてまとめられている。
  
* hacktux.com - 10 Tips for Writing Efficient Bash Scripts
http://hacktux.com/bash/script/efficient
Bashスクリプトを活用する上で効果的な10のTipsについて解説してある。
  
* Linux Documentation Project - Advanced Bash-Scripting Guide
http://tldp.org/LDP/abs/html/
中上級者向けに解説してあるBashスクリプト作成のためのガイド。
ボリュームが多く読み応えがある。ドキュメントの終わりの方にList of Examples
として数多くのサンプルがあるので、役に立ちます。
  
  
シェルスクリプト基本リファレンス(山森 丈範)
シェルスクリプト基本リファレンス(山森 丈範)
シェルスクリプトを書くなら、個人的には上記のリファレンス本がお薦めです。
簡単な入門書を終えた初心者以上むけの内容で、スクリプト作成に必要な
細かい解説やサンプル等が揃っており、密度の高い本です。
  
プログラミングの記法や組み込みコマンド等が、Linuxだけでなく
FreeBSDやSolaris環境でも使えるかどうか目印があるので
移植性の高いプログラムを書きたい場合にも役立ちます。

トップ 追記