2008年12月27日土曜日

SambaのUSERSHARE機能

$ net usershare add
を実行すると、smb.confのusershare pathに指定したディレクトリに
# cat sharename

#VERSION 2
path=/home/yasuma
comment=
usershare_acl=S-1-1-0:R
guest_ok=n

のような設定ファイルが作成され、共有が利用可能になる。

2008年12月26日金曜日

Samba 3.2.6 + Quotaの続き3

結局、少し修正されたパッチが3.x系のブランチに適用された。
このパッチが有効になるのはstrict allocate = yesのときのみ。

http://gitweb.samba.org/?p=samba.git;a=commit;h=5184baa9591640c7fac4574bad6c15f5c7302a87



2008年12月25日木曜日

2008年12月22日月曜日

Samba 3.2 + Quotaの続き

strict allocate = yes
を設定すれば解決した。
パケット見比べてパッチまで作成したのに...。

まあパッチを作ったから気づいたという噂もあるので仕方ない。


2008年12月20日土曜日

Samba 3.2にXPから容量越えのファイルをコピー

Windows XPからSambaにQuota上限 or ディスクの空き容量を越えたサイズのファイルをコピーすると、コピーが開始されて、実際にディスクの空きがなくなった時点でエラーになる。

これは昔のSambaからの仕様らしいが、Vistaからコピーすると、コピー前にエラーとなってくれるので、不要なコピー処理が発生しない。
しかも、Windowsサーバー相手だと、XPからのコピーでもきちんと拒否してくれるので、どうもSambaのバグっぽい。

ということで、またもやwiresharkでパケットをダンプして比較調査中だけれども、どうやらSMB Trans2のSETPATHINFO(Level FILE_END_OF_FILE_INFORMATION)に対して、ディスクFULLのエラーを返せずに、コピーが始まってしまうっぽい。

ここまでくると、後は正しい実装を調べるべく、またもやMSDNのドキュメントを。
http://download.microsoft.com/download/a/e/6/ae6e4142-aa58-45c6-8dcf-a657e5900cd3/[MS-FSCC].pdf
これの2.4.13が該当のパケットの処理っぽいので、忘れないように備忘録として記録しておく。


2008年12月18日木曜日

Ubuntu 8.04で印刷

最近、OpenOfficeで社内のレーザープリンターに印刷をすると、どうもフォントがかっこ悪い??
ということで原因は特定できなかったけど、とりあえずIPAフォントをインストールしたら直った。
以前はそんなことなかった気がするんだけどなぁ。


http://archive.ubuntulinux.jp/ubuntu-ja/intrepid-non-free/ttf-ipafont_00203-1ubuntu0ja1_all.deb


# dpkg -i ttf-ipafont_00203-1ubuntu0ja1_all.deb



2008年12月9日火曜日

PHPでsuidビットの状態を知る

PHPだとIS_SUIDのようなマクロも無いようので、suidビットの調べ方を探したところ、ここがわかりやすかった。
http://www.askapache.com/security/chmod-stat.html

単純化するとこんな感じ。

$statbuf = stat($filename);
$w=$statbuf['mode'];
if ($w&0x0800){
suidビットON
} else {
suidビット OFF
}



samba 3.2.4 + socket address

smb.confに"socket address = "という設定を指定しているとnmbdが起動しない問題に遭遇。

https://bugzilla.samba.org/show_bug.cgi?id=5944
samba 3.2/3.3ともパッチが適用されたので、3.2.6/3.3.0からは修正済みとなる予定。


2008年12月3日水曜日

OpenLDAP 2.4.13 + Samba4

OpenLDAP 2.4.13でdereference control機能というのがサポートされた。

これは、
https://www.redhat.com/archives/fedora-directory-devel/2008-October/msg00003.html
での議論が元になっているようだけど、LDAPからエントリを取り出すときに、必要な属性をまとめて扱えるようにするための機能みたいだ。
OpenLDAPのmemberOfモジュールでも同じような機能はあるけど、DNの形式のエントリしか扱えないようなので、Sambaで利用するSIDなどもまとめて扱うことができる機能として実装されたみたい。


2008年11月20日木曜日

Gmailのテーマ 「忍者」

Gmailにテーマ機能がついたらしい。

http://internet.watch.impress.co.jp/cda/news/2008/11/20/21595.html

ということで、早速目についた「忍者」を選択してみたところ、「地域」を入れてくださいとのこと。
地域によって違いがでるらしいけど、違いが分からない....。


Samba + DFS + Vista

ここしばらく調査していたSambaのDFSの問題をようやく修正した。
結局、修正としては1行パッチだったが、たどり着くまで非常に苦労した。

https://bugzilla.samba.org/show_bug.cgi?id=5909


問題発生の条件としては次のとおり
1. MS-DFS用のリンクとして、日本語を含むリンク名を作成する。
# ln -s msdfs:192.168.1.10\share DFSリンク

2. Vistaでドメインログオンしたユーザーで、SambaのDFSルート共有を
ネットワークドライブに割り当てる(Z:など)

3. ユーザーでドメインログオンし、スタートメニューの右クリックから、エクスプローラーを起動
ネットワークドライブから、DFSリンクをクリックすると、「ネットワークパスが見つかりません。」の
エラーが発生。

不思議なことに、XPでは発生せず、VistaでもマイネットワークからDFSリンクにアクセスすると問題が発生しないという...。

原因としては、SambaがDFSリンク名を格納したパケット内で、DFSリンクのパス名の数値を格納する箇所に、UCS-2のバイト数ではなく、UTF-8(unix charset) * 2のバイト数を格納していたことが原因だった。
そのために、ASCIIだけのDFSリンクでは、バイト数は文字数 * 2なので、問題が発生しない。

パケットキャプチャを見比べても、一見、ASCIIだけのリンクも日本語を含むリンクも、パケットの内容として間違っているように見えなかったので、問題箇所の特定に時間がかかった。

MicrosoftのオープンプロトコルドキュメントのDFSプロトコルを参照しながら、いろいろ比較をしていって、ようやく格納されているバイト数がおかしいことに気がついた。
このドキュメントが無かったら、正しい値の確証が持てなかっただろうから、挫折していたかも。
これからは、もう少し参考にしてみよう。

今回参考にしたDFSのプロトコルドキュメントは下記から。
http://msdn.microsoft.com/ja-jp/library/cc202172(en-us).aspx


Microsoftのオープンプロトコルのドキュメント


http://msdn.microsoft.com/ja-jp/library/cc197979(en-us).aspx


2008年11月7日金曜日

samba 3.2のschemaにsambaTrustedDomainPasswordを追加

OpenLDAP用のshema以外にはsambaTrustedDomainPassowrdオブジェクトクラスが追加されていないので、Sun JDS用のsamba.schemaをつけてバグ登録。

https://bugzilla.samba.org/show_bug.cgi?id=5879


2008年11月6日木曜日

Samba 3.2 + ZFS の NFSv4形式ACLマッピング

NFSv4 ACLとWindows ACLの関係

Windowsで設定すると、以下の属性がNFSv4 ACLに設定される。
各属性の見方はSunのドキュメントを参照。
http://docs.sun.com/app/docs/doc/819-6260/6n89n6cgh?a=view#gbbhr

ファイル所有者の権限
書き込み

owner@:-w-p---A-W----:------:allow


読み取り

owner@:r-----a-R-c---:------:allow


読み取りと実行

owner@:--x-----------:------:allow


変更

owner@:rwxpd-aARWcC-s:------:allow


フルコントロール

owner@:rwxpdDaARWcCos:------:allow


拒否エントリの場合は、allowの代わりにそれぞれdenyのエントリとして設定される。

詳細なアクセス許可エントリ
所有権の取得

owner@:------------o-:------:allow


アクセス許可の変更

owner@:-----------C--:------:allow


アクセス許可の読み取り

owner@:----------c---:------:allow


削除

owner@:----d---------:------:allow


拡張属性の書き込み

owner@::---------W----:------:allow


属性の書き込み

owner@:-------A------:------:allow


フォルダの作成・データの追加

owner@:---p----------:------:allow


ファイルの作成・データの書き込み

owner@:-w------------:------:allow


拡張属性の読み取り

owner@:--------R-----:------:allow


属性の読み取り

owner@:------a-------:------:allow


フォルダの一覧・データの読み取り

owner@:r-------------:------:allow


フォルダのスキャン・ファイルの実行

owner@:--x-----------:------:allow


フルコントロール

owner@:rwxpdDaARWcCos:------:allow


Posix ACL
Posix ACLの場合、1つのビットに複数の属性の機能がまとめられているため、個別に属性を設定できない。

read

  • フォルダの一覧・読み取り

  • 属性の読み取り

  • 拡張属性の読み取り

  • アクセス許可の読み取り



write

  • ファイルの作成・データの書き込み

  • フォルダの作成・データの追加

  • 属性の書き込み

  • 拡張属性の書き込み



execute

  • フォルダのスキャン・ファイルの実行

  • 削除

  • アクセス許可の変更

  • 所有権の取得




2008年11月5日水曜日

Ubuntu 8.04にOpenOffice 3.0をインストール

長文を書く予定があるので、参照機能が改善されているらしいOpenOffice3.0にアップデート。

Ubuntu日本語フォーラムを参考に。
http://forum.ubuntulinux.jp/viewtopic.php?id=3095

debパッケージはこちらから。
ftp://ftp.jaist.ac.jp/pub/openoffice/localized/ja/3.0.0/

私の環境だとこんな感じでした。
$ cd OOO300_m9_native_packed-1_ja.9358/DEBS
$ sudo apt-get remove openoffice.org-core
$ sudo apt-get remove openoffice.org-base-core
$ sudo apt-get remove openoffice.org-l10n-ja
$ sudo apt-get remove openoffice.org-hyphenation openoffice.org-ure

OOo3.0のインストール
$ sudo dpkg -i ooobasis*deb
$ sudo dpkg -i openoffice*deb

$ sudo apt-get install ubuntu-desktop-ja
$ sudo apt-get install language-support-en

デスクトップメニュー用のパッケージインストール
$ cd desktop-integration/
$ sudo dpkg -i openoffice.org3.0-debian-menus_3.0-9354_all.deb

結果からみるとopenoffice.org-l10n-jaとかは削除しなくても良かったのかも。


2008年10月28日火曜日

Samba 3.2.4のACL設定を解析

source/smbd/posix_acl.cより

create_canon_ace_lists()でACLを設定

ここで、NT4形式のACLをPOSIX形式のACLにマッピングしている様子。

if (nt4_compatible_acls()) {
/*
* The security mask may be UNIX_ACCESS_NONE which should map into
* no permissions (we overload the WRITE_OWNER bit for this) or it
* should be one of the ALL/EXECUTE/READ/WRITE bits. Arrange for this
* to be so. Any other bits override the UNIX_ACCESS_NONE bit.
*/

/*
* Convert GENERIC bits to specific bits.
*/

se_map_generic(&psa->access_mask, &file_generic_mapping);

psa->access_mask &= (UNIX_ACCESS_NONE|FILE_ALL_ACCESS);

if(psa->access_mask != UNIX_ACCESS_NONE)
psa->access_mask &= ~UNIX_ACCESS_NONE;
}

se_map_generic()は後で調査してみよう。

次のこの部分では、Windowsの継承ACLを、PosixのDefault ACLに変換。

/*
* Deal with the fact that NT 4.x re-writes the canonical format
* that we return for default ACLs. If a directory ACE is identical
* to a inherited directory ACE then NT changes the bits so that the
* first ACE is set to OI|IO and the second ACE for this SID is set
* to CI. We need to repair this. JRA.
*/

for(i = 0; i < dacl->num_aces; i++) {
SEC_ACE *psa1 = &dacl->aces[i];

for (j = i + 1; j < dacl->num_aces; j++) {
SEC_ACE *psa2 = &dacl->aces[j];

if (psa1->access_mask != psa2->access_mask)
continue;

if (!sid_equal(&psa1->trustee, &psa2->trustee))
continue;

/*
* Ok - permission bits and SIDs are equal.
* Check if flags were re-written.
*/

if (psa1->flags & SEC_ACE_FLAG_INHERIT_ONLY) {

psa1->flags |= (psa2->flags & (SEC_ACE_FLAG_CONTAINER_INHERIT|SEC_ACE_FLAG_OBJECT_INHERIT));
psa2->flags &= ~(SEC_ACE_FLAG_CONTAINER_INHERIT|SEC_ACE_FLAG_OBJECT_INHERIT);

} else if (psa2->flags & SEC_ACE_FLAG_INHERIT_ONLY) {

psa2->flags |= (psa1->flags & (SEC_ACE_FLAG_CONTAINER_INHERIT|SEC_ACE_FLAG_OBJECT_INHERIT));
psa1->flags &= ~(SEC_ACE_FLAG_CONTAINER_INHERIT|SEC_ACE_FLAG_OBJECT_INHERIT);

}
}
}


最後に個々のACLを、Posix ACLに変換

1. Everyoneは、Posixのotherに変換。

if( sid_equal(¤t_ace->trustee, &global_sid_World)) {
current_ace->owner_type = WORLD_ACE;
current_ace->unix_ug.world = -1;
current_ace->type = SMB_ACL_OTHER;


2. ファイル所有者は、Posixのownerに設定

} else if (sid_equal(¤t_ace->trustee, &global_sid_Creator_Owner)) {
current_ace->owner_type = UID_ACE;
current_ace->unix_ug.uid = pst->st_uid;
current_ace->type = SMB_ACL_USER_OBJ;


3. ファイル所有グループは、Posixのgroupに設定

} else if (sid_equal(¤t_ace->trustee, &global_sid_Creator_Group)) {
current_ace->owner_type = GID_ACE;
current_ace->unix_ug.gid = pst->st_gid;
current_ace->type = SMB_ACL_GROUP_OBJ;


4. ACLが操作中のユーザーと同じならownerに設定。それ以外なら、拡張ACLとして設定。

} else if (sid_to_uid( ¤t_ace->trustee, ¤t_ace->unix_ug.uid)) {
current_ace->owner_type = UID_ACE;
/* If it's the owning user, this is a user_obj, not
* a user. */
if (current_ace->unix_ug.uid == pst->st_uid) {
current_ace->type = SMB_ACL_USER_OBJ;
} else {
current_ace->type = SMB_ACL_USER;
}


5. ACLが操作中のユーザーのプライマリグループなら、Posixのgroupに設定。それ以外なら、拡張ACLとして設定。

} else if (sid_to_gid( ¤t_ace->trustee, ¤t_ace->unix_ug.gid)) {
current_ace->owner_type = GID_ACE;
/* If it's the primary group, this is a group_obj, not
* a group. */
if (current_ace->unix_ug.gid == pst->st_gid) {
current_ace->type = SMB_ACL_GROUP_OBJ;
} else {
current_ace->type = SMB_ACL_GROUP;
}

こんな感じかな。


Samba 3.2.4 + Solarisでmake test nss_modulesがエラー

ずいぶん前にパッチを登録していたのがcommitされた。忘れてた。

http://gitweb.samba.org/?p=samba.git;a=commit;h=1c6aa01e1f2f5e7ec1a55aace9392622d91b04c5


そんな組み合わせを実行する人はものすごく少ないと思われるけど。


samba 3.0.32でnet rpc oldjoinが失敗

いつの頃からか、net rpc oldjoinが失敗することが判明。
パッチを登録しておいた。


https://bugzilla.samba.org/show_bug.cgi?id=5855


2008年10月23日木曜日

Ubuntu 8.04のslapdのapparmorを無効に設定

$ sudo touch /etc/apparmor.d/disable/usr.sbin.slapd
$ sudo /etc/init.d/apparmor reload


Ubuntu 8.04のOpenLDAP

1000万件のデーターを投入しようとしたら、BDBのトランザクションログで
/パーティションが一杯になってしまったので、
dbconfig set_flags DB_LOG_AUTOREMOVE
を追加し、/var/lib/ldapから、空きのある別パーティションにBDBの保存場所を変更してみた。

ところが、
invalid path: Permission denied
ということで、slapdが起動しない。

調べてみたところ、Ubuntu 8.04からはデフォルトでAppArmorによって、/var/lib/ldap以外に
OpenLDAPのデーターを書き込むのが禁止されているらしい。

http://www.openldap.org/lists/openldap-software/200808/msg00203.html



2008年10月22日水曜日

Google Apps Email Settings API

Google Appsでユーザー作成時に、POPやIMAPを一括で有効にするための
Email Settings APIが利用可能になった。

http://code.google.com/apis/apps/email_settings/developers_guide_protocol.html

ライブラリも対応済み。


サーバー移転

このブログを運用していたサーバーを移転したので、テストの投稿。


2008年10月2日木曜日

Ubuntu 8.04 + emobile H11HWでBluetoothモデム接続

H11HWの「設定」-「接続設定」-「Bluetoothオン/オフ」で「オン」に。
同じく、「設定」-「接続設定」-「モデム」で「Bluetooth」に。

$ hcitool scan
Scanning ...
00:1E:10:11:33:D4 H11HW

$ sdptool browse 00:1E:10:11:33:D4

ここで、H11HW側に「承諾」の画面が表示されるので、PINコードを入力。

H11HW側にPINコードを入力すると、Ubuntu側にPINコードの入力要求が表示されるので、
PINコードを入力。

ターミナルに次のような表示が行われるので、「Dialup Networking」のエントリのチャンネルを確認。
$ sdptool browse 00:1E:10:11:33:D4
Browsing 00:1E:10:11:33:D4 ...
Service Name: Voice Gateway
Service RecHandle: 0x10000
Service Class ID List:
"Headset Audio Gateway" (0x1112)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Headset" (0x1108)
Version: 0x0100

Service Name: Voice Gateway
Service RecHandle: 0x10001
Service Class ID List:
"Handfree Audio Gateway" (0x111f)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 4
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Handsfree" (0x111e)
Version: 0x0105

Service Name: A2DP Source
Service RecHandle: 0x10002
Service Class ID List:
"Audio Source" (0x110a)
Protocol Descriptor List:
"L2CAP" (0x0100)
PSM: 25
"AVDTP" (0x0019)
uint16: 0x100
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Advanced Audio" (0x110d)
Version: 0x0100

Service Name: AVRCP Target
Service RecHandle: 0x10003
Service Class ID List:
"AV Remote Target" (0x110c)
Protocol Descriptor List:
"L2CAP" (0x0100)
PSM: 23
"AVCTP" (0x0017)
uint16: 0x100
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"AV Remote" (0x110e)
Version: 0x0100

Service Name: Serial Port
Service RecHandle: 0x10004
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 16
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Serial Port" (0x1101)
Version: 0x0100

Service Name: Information Synchronization
Service RecHandle: 0x10005
Service Class ID List:
"IrMC Sync" (0x1104)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 17
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"IrMC Sync" (0x1104)
Version: 0x0100

Service Name: Object Push
Service RecHandle: 0x10006
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 18
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100

Service Name: File Transfer
Service RecHandle: 0x10007
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 19
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100

Service Name: Dial-up Networking
Service RecHandle: 0x10008
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 8
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100

以上の結果をもとに、/etc/bluetooth/rfcomm.confに以下を設定
rfcomm0 {
bind yes;
device 00:1E:10:11:33:D4;
channel 8;
comment "H11HW Bluetooth device";
}

Bluetoothサービスを再起動して、設定内容を反映。
$ sudo /etc/init.d/bluetooth restart

/dev/rfcomm0が作成されていることを確認する。

あとはpppconfigでemobileの設定を行えば、利用可能。



2008年9月13日土曜日

CentOS5のpython-ldap

CentOS5に含まれているpython-ldapのLDIF parserを利用したところ、
dnが正常にハンドリングされないことが判明。
Fedora 9のpython-ldapにアップデートしたら直った。
明らかにpython-ldapのバグなので、利用時には注意。


2008年9月11日木曜日

NDSのパスワード変更

Netware上のNDSのユーザーのパスワードをLDAP経由で変更する機能を調査。

NDSのユーザーのパスワードはuserPassword属性に格納されているが、LDAPの
modifyで変更したいときは、現在のパスワードを削除してから、新しいパスワードを追加する必要がある。
MOD_REPLACEで置き換えようとするとINSUFFICIENT ACCESSとなる。

これにははまったけど、おかげでこれでActive Directory、OpenLDAP、NDSと、いろいろなディレクトリサービスのユーザーのパスワードのLDAP経由の変更方法が理解できた。


2008年8月12日火曜日

Linux Application Checker

Linux Foundationが公開したLinux Application Checkerを使って、Sambaパッケージをチェックしてみた。
http://ldn.linuxfoundation.org/lsb/check-your-app
ダウンロードにLDNの登録が必要だったけど、スクリプトなので展開するだけで利用可能だった。

$ tar xfz Linux-app-checker-local-2.0-3.i486.tar.gz
$ cd /linux-app-checker/bin
$ ./app-checker-start.pl

あとはWebブラウザで8889番ポートにアクセスすれば、チェックツールの画面にアクセスできる。

実際にCentOS5.1でビルドしたRHEL5/CentOS5用のsambaのrpmパッケージ一式をチェックしてみると、こんな結果だった。
fig1.png

肝心のRHEL5でFailedになっているけど、これはRHEL5.1でKerberosライブラリがアップデートされたときに追加された新しいインターフェースをsambaがリンクしているための様子。
つまり、OS側のアップデート情報がこのチェックツールに正しく反映されていないと、効果半減ということ。
ただチェックは非常にお手軽だったので、便利なのは便利。


2008年8月1日金曜日

structuralObjectClassが足りない

# ldapadd -x -W -D "cn=Manager,dc=osstech,dc=co,dc=jp" -f /home/yasuma/mod1.ldif
Enter LDAP Password:
adding new entry "cn=group6,ou=Groups,dc=osstech,dc=co,dc=jp"
ldap_add: Internal (implementation specific) error (80)
additional info: no structuralObjectClass operational attribute


こんなエラーが出たときはStructuralObjectClassとして定義されているObjectClassが足りないので、/etc/openldap/schema/xxxx.schemaなどにある以下のようなobjectclassを

objectclass ( 1.3.6.1.1.1.2.2 NAME 'posixGroup'
DESC 'Abstraction of a group of accounts'
SUP top STRUCTURAL
MUST ( cn $ gidNumber )
MAY ( userPassword $ memberUid $ description ) )

structuralObjectClass: posixGroup

として追加。

structuralObjectClassは、1つのDNに対して1つだけ。それ以外のobjectClassを追加したいときは、

objectclass ( 1.3.6.1.4.1.7165.2.2.4 NAME 'sambaGroupMapping' SUP top AUXILIARY
DESC 'Samba Group Mapping'
MUST ( gidNumber $ sambaSID $ sambaGroupType )
MAY ( displayName $ description $ sambaSIDList ))

のようにAUXILIARYとして定義されているobjectClassを追加。

結果としてこんなLDIFに。

dn: cn=group6,ou=Groups,dc=osstech,dc=co,dc=jp
objectClass: top
objectClass: posixGroup
objectClass: sambaGroupMapping
cn: group6
gidNumber: 1005
structuralObjectClass: posixGroup



OpenSSOとLiferayの統合

備忘録
http://blogs.sun.com/pdblog/entry/opensso_and_liferay_integration


2008年7月26日土曜日

MTOS-4.12にアップデート

アップデートしたので、テスト。
ブログ記事を書くときに、本文が入力できない問題も直った。

CentOS5にImage/Graphをインストール

# yum install php-pear
# pear install --alldeps Image_Graph-alpha


2008年7月11日金曜日

Google Apps Reporting API Update

http://groups.google.co.jp/group/google-apps-apis/browse_thread/thread/95891186ebe76c1f?hl=ja

RHEL4でnamed.confが消える...?

CIOSからのお知らせによるとcaching-nameserverをアップデートするとnamed.confが消えてしまうらしい。

┏━━━━━━━━━━━━━━━━━━━━━━┓
┃【重要】RHBA-2008:0560 適用に関する注意事項 ┃━━━━━━━━━━━■
┗━━━━━━━━━━━━━━━━━━━━━━┛

2008年 6月18日にリリースされているエラータ RHBA-2008:0560 を適用すると、動作中の DNS サーバーに重大な問題(named.conf ファイルの消失)を引き起こす恐れがございます。RHEL4 において up2date を行われる際には、十分にご注意下さい。

アップデートの際に注意するべきエラータ
RHBA-2008:0560
https://info.sios.com/c?c=93&m=22826&v=8a785bee

■詳細:
エラータ RHBA-2008:0560 にて caching-nameserver パッケージがアップデートされております。caching-nameserver パッケージには named.conf ファイルが含まれており、パッケージのアップデートを行うとユーザがカスタマイズした既存の named.conf ファイルを上書きします。

caching-nameserver パッケージは、本来キャッシュネームサーバーを構成するために使用するパッケージでございます。このパッケージがインストールされている環境において named.conf を編集し、権威がある名前解決の DNS サーバーを構成されていると、named.conf の上書きにより名前解決ができなくなります。

bashの補完機能

Ubuntu 8.04でbashを使っていて、今更気づいたけど、bashの補完機能がなにげにすごくて便利。

例えば、ディレクトリにtest.pdfとtest.odtがあるときに、
$ acroread [TAB]
とすると、拡張子が.pdfのファイルが補完される。

$ oowriter [TAB]
とすると、拡張子が.odtのファイルが補完される。

どこで設定しているのかと思ったら、/etc/bash_completionらしい。
コマンドと拡張子のマッピングが次のように定義されていた。
complete -f -X '!*.@(pdf|PDF)' acroread gpdf xpdf
complete -f -X '!*.@(sxw|stw|sxg|sgl|doc|dot|rtf|txt|htm|html|odt|ott|odm)' oowriter

って、/etc/bash_completionファイルの中身、ものすごく多い...。

2008年6月8日日曜日

Ubuntu 8.04 + CF-Y7Dで液晶の輝度調整

ここを参考にしたらできた。素晴らしい〜。

$ sudo apt-get install xbacklight
$ sudo xrandr --output LVDS --set BACKLIGHT_CONTROL native
$ xbacklight -set 80

ちょこっと設定したらFnキーと組み合わせることができそうだ。



gnome-randr-applet

xrandrをいろいろ使うらしいので、
$ sudo apt-get install gnome-randr-applet
解像度とか簡単に変えることが可能になるアプレットみたい。

libc6-devインストール

configureを実行するとのきなみ失敗するので、何故かと思ったらstdio.hが無い。。。
$ sudo apt-get install libc6-dev


Let's Note + Ubuntu 8.04 pcc-acpiモジュール

以下から、pcc-acpi-0.9-4.src.rpmをダウンロード


$ sudo apt-get install rpm
$ sudo apt-get install patch
$ mkdir tmp1
$ cd tmp1
$ rpm2cpio ~/pcc-acpi-0.9-4.src.rpm | cpio -id
$ tar xfj pcc-acpi-0.9.tar.bz2
$ cd pcc-acpi-0.9
$ patch < ../pcc-acpi-0.9-add-missing-input-unregister-device.diff
$ patch < ../pcc-acpi-0.9-2.6.23-acpievent-fix.diff
$ patch < ../fseidel_fix_newacpidevmanagement.patch
$ make
$ sudo make install
$ modprobe pcc-acpi
dmesgをすると次のメッセージが表示される。
[ 8964.350486] input: PCC Extra Driver as /devices/virtual/input/input10


$ tar xfz hotkey-handler-1.4.tar.gz
$ sudo cp -r hotkey-handler-1.4/* /etc/acpi/
$ cd /etc/acpi
$ sudo tar xfz /tmp/ac-power-handler-1.0.tar.gz

$ sudo apt-get install hotkeys

$ cd
$ mkdir .hotkeys
$ cp pcc.def .hotkeys/





Ubuntu 8.04 CTRLとCAPSを入れ替え

XkbOptions ctrl:swapcapsを追加するだけではダメだった。xorg.confを次のように設定したら切り替わった。

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "jp106"
Option "XkbLayout" "jp,jp"
# Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
Option "XkbOptions" "ctrl:swapcaps"
# Option "XkbVariant" "106,"
EndSection


sensors-appletを追加

ファンを管理したいので、とりあえずそれらしいものをインストールしてみる。
$ sudo apt-get install sensors-applet

アプレットでHardware Sensor Monitorを追加。
CPU温度 65〜67度。ちょっと熱いな。これが普通なんだろうか....?



Let's Note CF-Y7D のUbuntu 8.04のcpuinfo、lspciなど

参考までに。
他に知りたい情報があればリクエストください。

$ lspci
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 03)
00:04.0 Signal processing controller: Intel Corporation Unknown device 2a08 (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 03)
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)
03:00.0 Network controller: Intel Corporation PRO/Wireless 4965 AG or AGN Network Connection (rev 61)
05:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8055 PCI-E Gigabit Ethernet Controller (rev 13)
06:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ba)
06:00.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 21)

$ lspci -vn
00:00.0 0600: 8086:2a00 (rev 03)
Subsystem: 10f7:8338
Flags: bus master, fast devsel, latency 0
Capabilities:

00:02.0 0300: 8086:2a02 (rev 03) (prog-if 00 [VGA controller])
Subsystem: 10f7:8338
Flags: bus master, fast devsel, latency 0, IRQ 20
Memory at fc000000 (64-bit, non-prefetchable) [size=1M]
Memory at 90000000 (64-bit, prefetchable) [size=256M]
I/O ports at 1800 [size=8]
Capabilities:

00:02.1 0380: 8086:2a03 (rev 03)
Subsystem: 10f7:8338
Flags: bus master, fast devsel, latency 0
Memory at fc100000 (64-bit, non-prefetchable) [size=1M]
Capabilities:

00:04.0 1180: 8086:2a08 (rev 03)
Subsystem: 10f7:8338
Flags: fast devsel, IRQ 7
Memory at fc600000 (64-bit, non-prefetchable) [size=16K]
Capabilities:

00:1a.0 0c03: 8086:2834 (rev 03) (prog-if 00 [UHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 20
I/O ports at 1820 [size=32]

00:1a.1 0c03: 8086:2835 (rev 03) (prog-if 00 [UHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 21
I/O ports at 1840 [size=32]

00:1a.7 0c03: 8086:283a (rev 03) (prog-if 20 [EHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 17
Memory at fc608800 (32-bit, non-prefetchable) [size=1K]
Capabilities:

00:1b.0 0403: 8086:284b (rev 03)
Subsystem: 10f7:8338
Flags: bus master, fast devsel, latency 0, IRQ 19
Memory at fc604000 (64-bit, non-prefetchable) [size=16K]
Capabilities:

00:1c.0 0604: 8086:283f (rev 03) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
Capabilities:

00:1c.2 0604: 8086:2843 (rev 03) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
Memory behind bridge: fc300000-fc3fffff
Capabilities:

00:1c.3 0604: 8086:2845 (rev 03) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
Capabilities:

00:1c.4 0604: 8086:2847 (rev 03) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=05, subordinate=05, sec-latency=0
I/O behind bridge: 00002000-00002fff
Memory behind bridge: fc200000-fc2fffff
Prefetchable memory behind bridge: 0000000088000000-00000000880fffff
Capabilities:

00:1d.0 0c03: 8086:2830 (rev 03) (prog-if 00 [UHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 22
I/O ports at 1860 [size=32]

00:1d.1 0c03: 8086:2831 (rev 03) (prog-if 00 [UHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 18
I/O ports at 1880 [size=32]

00:1d.2 0c03: 8086:2832 (rev 03) (prog-if 00 [UHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 17
I/O ports at 18a0 [size=32]

00:1d.7 0c03: 8086:2836 (rev 03) (prog-if 20 [EHCI])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 22
Memory at fc608c00 (32-bit, non-prefetchable) [size=1K]
Capabilities:

00:1e.0 0604: 8086:2448 (rev f3) (prog-if 01 [Subtractive decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=06, subordinate=0a, sec-latency=32
I/O behind bridge: 00003000-00003fff
Memory behind bridge: dbf00000-e1ffffff
Capabilities:

00:1f.0 0601: 8086:2815 (rev 03)
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0
Capabilities:

00:1f.1 0101: 8086:2850 (rev 03) (prog-if 8a [Master SecP PriP])
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 0, IRQ 18
I/O ports at 01f0 [size=8]
I/O ports at 03f4 [size=1]
I/O ports at 0170 [size=8]
I/O ports at 0374 [size=1]
I/O ports at 1810 [size=16]

00:1f.2 0106: 8086:2829 (rev 03) (prog-if 01 [AHCI 1.0])
Subsystem: 10f7:8338
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 219
I/O ports at 18d8 [size=8]
I/O ports at 18d0 [size=4]
I/O ports at 18c8 [size=8]
I/O ports at 180c [size=4]
I/O ports at 18e0 [size=32]
Memory at fc608000 (32-bit, non-prefetchable) [size=2K]
Capabilities:

00:1f.3 0c05: 8086:283e (rev 03)
Subsystem: 10f7:8338
Flags: medium devsel, IRQ 11
Memory at 88100000 (32-bit, non-prefetchable) [size=256]
I/O ports at 1100 [size=32]

03:00.0 0280: 8086:4229 (rev 61)
Subsystem: 8086:1003
Flags: bus master, fast devsel, latency 0, IRQ 217
Memory at fc300000 (64-bit, non-prefetchable) [size=8K]
Capabilities:

05:00.0 0200: 11ab:4363 (rev 13)
Subsystem: 10f7:8338
Flags: bus master, fast devsel, latency 0, IRQ 218
Memory at fc200000 (64-bit, non-prefetchable) [size=16K]
I/O ports at 2000 [size=256]
[virtual] Expansion ROM at 88000000 [disabled] [size=128K]
Capabilities:

06:00.0 0607: 1180:0476 (rev ba)
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 168, IRQ 19
Memory at dbfff000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=06, secondary=07, subordinate=0a, sec-latency=176
Memory window 0: dc000000-dffff000 (prefetchable)
Memory window 1: 8c000000-8ffff000
I/O window 0: 00003000-000030ff
I/O window 1: 00003400-000034ff
16-bit legacy interface ports at 0001

06:00.1 0805: 1180:0822 (rev 21) (prog-if 01)
Subsystem: 10f7:8338
Flags: bus master, medium devsel, latency 32, IRQ 22
Memory at dbffec00 (32-bit, non-prefetchable) [size=256]
Capabilities:

$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Duo CPU L7800 @ 2.00GHz
stepping : 11
cpu MHz : 2001.000
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
bogomips : 3994.40
clflush size : 64

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Duo CPU L7800 @ 2.00GHz
stepping : 11
cpu MHz : 2001.000
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
bogomips : 3990.04
clflush size : 64

$ xdpyinfo
name of display: :0.0
version number: 11.0
vendor string: The X.Org Foundation
vendor release number: 10400090
X.Org version: 1.4.0.90
maximum request size: 16777212 bytes
motion buffer size: 256
bitmap unit, bit order, padding: 32, LSBFirst, 32
image byte order: LSBFirst
number of supported pixmap formats: 7
supported pixmap formats:
depth 1, bits_per_pixel 1, scanline_pad 32
depth 4, bits_per_pixel 8, scanline_pad 32
depth 8, bits_per_pixel 8, scanline_pad 32
depth 15, bits_per_pixel 16, scanline_pad 32
depth 16, bits_per_pixel 16, scanline_pad 32
depth 24, bits_per_pixel 32, scanline_pad 32
depth 32, bits_per_pixel 32, scanline_pad 32
keycode range: minimum 8, maximum 255
focus: window 0x28003aa, revert to Parent
number of extensions: 33
BIG-REQUESTS
Composite
DAMAGE
DOUBLE-BUFFER
DPMS
Extended-Visual-Information
GLX
MIT-SCREEN-SAVER
MIT-SHM
MIT-SUNDRY-NONSTANDARD
RANDR
RECORD
RENDER
SECURITY
SGI-GLX
SHAPE
SYNC
TOG-CUP
X-Resource
XAccessControlExtension
XC-APPGROUP
XC-MISC
XFIXES
XFree86-Bigfont
XFree86-DGA
XFree86-DRI
XFree86-Misc
XFree86-VidModeExtension
XINERAMA
XInputExtension
XKEYBOARD
XTEST
XVideo
default screen number: 0
number of screens: 1

screen #0:
dimensions: 1400x1050 pixels (370x277 millimeters)
resolution: 96x96 dots per inch
depths (7): 24, 1, 4, 8, 15, 16, 32
root window id: 0x72
depth of root window: 24 planes
number of colormaps: minimum 1, maximum 1
default colormap: 0x20
default number of colormap cells: 256
preallocated pixels: black 0, white 16777215
options: backing-store NO, save-unders NO
largest cursor: 64x64
current input event mask: 0x7aa03f
KeyPressMask KeyReleaseMask ButtonPressMask
ButtonReleaseMask EnterWindowMask LeaveWindowMask
ButtonMotionMask ExposureMask StructureNotifyMask
SubstructureNotifyMask SubstructureRedirectMask FocusChangeMask
PropertyChangeMask
number of visuals: 17
default visual id: 0x23
visual:
visual id: 0x23
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x24
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x25
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x26
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x27
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x28
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x29
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x2a
class: TrueColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x2b
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x2c
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x2d
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x2e
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x2f
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x30
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x31
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x32
class: DirectColor
depth: 24 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
visual:
visual id: 0x70
class: TrueColor
depth: 32 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits





Let's Note CF-Y7DにUbuntu 8.04日本語デスクトップ版をインストール

仕事用PCをこれまでのVAIO type Tから、Let's Note CF-Y7Dに交換開始。

CF-Y7Dと増設メモリ 1G(Buffalo D2/P533-1G)、ディスクに320GB(7200rpm)のTravelstar 7K320を購入。

開梱して電源を入れるまもなく、メモリ増設とディスク交換を実施。プラスドライバー一本で楽々完了。

Ubuntu 8.04日本語デスクトップ版のインストールCDを入れて...って、入れ方が分からない。
電源を入れてから、ドライブのイジェクトボタンを操作しても開かない。ちょっとはまった。
で、仕方ないので説明書を読むと、電源入れない場合は底のスイッチで開けろとのこと。
で、ようやく入れて、再度電源を入れてみたけど、ディスクを読みにいかない。

BIOSで調べたら、初期設定ではDVDドライブの電源はOFFになっていたので、ONに変更。
これで無事にインストールが開始できた。

で、インストールが終わったところで、とりあえず機能的に確認。
- 画面
- 問題なく1400x1050が表示されている
- Fnキーでの輝度調節が効かない
- サウンド
- 問題なし
- Fnキーでのボリューム変更も可能
- ネットワーク
- 有線、無線とも問題なし
- アプレットで切り替えもできる

気になっているのはファンがずーっとまわり続けていること。ちょっと調べてみよう。



2008年6月6日金曜日

ThinkpadのVT対応

http://www.thinkwiki.org/wiki/Intel_Core_2_Duo_%28Merom%29

X300はVT対応してるっぽいなぁ。
Let's Note Y7DではなくてX300にしようかなあ。

2008年5月21日水曜日

空の書庫作成はご容赦願います

Ubuntuのtarコマンドで空のtarファイルをつくろうとすると、

tar: 空の書庫作成はご容赦願います
より詳しい情報は `tar --help' または `tar --usage' で.

コマンドのメッセージと思えない...。

2008年4月29日火曜日

MovableTypeをアップデート

これまで使っていたMovableType3.3をGPL版のMTOS4.1-jaにアップデートしてみた。
アップデート作業は30分ぐらいで簡単だった。

が、なぜかFirefoxで記事を書こうとすると本文を入力できない...
Safariだと大丈夫だった。

あと、クイックポストのリンクからでも大丈夫。何故だろう。


2008年4月25日金曜日

OpenSSOをインストール

TomcatにOpenSSOをインストールしたら、OpenDSもついてきた。
サイズが大きいわけだ。


2008年4月24日木曜日

やっとできた...

Eclipse 3.3.2 on Solaris10(x86)。

結局3weekぐらいかかってしまった。
スクリプト一つでビルドできるようになった〜。30分ぐらいかかるけど。

2008年4月23日水曜日

gem2rpm

ruby on railsのrpmパッケージをつくろうと思って、いろいろ調べた結果、
gem2rpmを使うと簡単そうだったので、試してみた。
http://www.fooplanet.com/projects/gem2rpm/

確かにrpm作るの簡単かも。
まあ、普通はgemでインストールするんだろうけど。

2008年4月19日土曜日

andLinux

WindowsにandLinuxを入れてみた。
Ubuntuベースということでなかなかいい感じかも。

インストール直後にネットワークインターフェースが192.168.11.1(Windows側) - 192.168.11.150(andLinux側)で割り当てられるが、すでに192.168.11.1を使っていたので、IPアドレスを変更。
OS上の変更は、通常のWindowsとUbuntuの設定なので問題なかったが、ターミナル接続用のIPアドレスの指定方法に悩んだ。

http://www.andlinux.org/faq.phpの一番下にあるように、レジストリキーを作成すると、andLinuxへ接続するためのIPアドレスを変更してくれるということで、無事変更完了。

ubuntu-jaのレポジトリを追加して、
# apt-get install ubuntu-desktop-ja
でお手軽インストール中。


Solaris10(x86)用 Eclipseのビルド

おお、これが近い。だいぶ試行錯誤したので、だいたい何をしているか分かるようになった。
たぶんこれベースでEclipse 3.3.1をビルドできるかな。
http://timezra.blogspot.com/2008/01/eclipse-34m4-solaris-gtk-x86-build.html

2008年4月11日金曜日

eclipse v3.3.2をSolaris10(x86)で実行するチャレンジ

諸事情によりEclipseをSolaris10(x86)で動作させることにチャレンジ。

何故か、Solaris8(SPARC)用のバイナリしかないので、これをもとに動作させてみることに。

とりあえずeclipseコマンドは、
http://cropcrusher.web.infoseek.co.jp/shufujava/nickie/nickie.html

を参考にして、ちょこちょこコマンドを変えたらすぐビルドできた。

が、v3.0であったと思われるswt関係のライブラリが無い。けれどもeclipseコマンドはshared libraryのエラーで起動できない。

ということで、findでsparc用バイナリを探索。

# find . -type f -exec file {} \; -print |grep SPARC
./plugins/org.eclipse.equinox.launcher.gtk.solaris.sparc_1.0.3.R33x_v20080118/eclipse_1023.so: ELF 32-bit MSB dynamic lib SPARC Version 1, dynamically linked, not stripped
./eclipse.sparc: ELF 32-bit MSB executable SPARC Version 1, dynamically linked, not stripped

eclipse.sparcは、もともとのeclipseコマンドなので、上のやつが問題らしい。

で良く調べたらeclipseコマンドと一緒にeclipse_1023.soとして作成されていた。
なので、できあがったやつをコピー。

ところが「The Eclipse executable launcher was unable to locate its companion shared library.」というエラーで起動しない。

しかたないので、gdbでデバッグ。

sparc版でそのまま動かそうとすると、ファイル名やディレクトリ名にsparcが入っているので、適切なライブラリが見つけられないことが判明。

さらに、plugins/org.eclipse.swt.gtk.solaris.sparc_3.3.2.v3349.jarの中にsparcバイナリのライブラリがまだ残っていた。
で、EclipseをSolaris10で再ビルドするとできそう。

http://www.azureuswiki.com/index.php/AzureusForSolarisX86

とりあえずここまで。

2008年4月10日木曜日

Ubuntu 7.10にJava 6(JDK)をインストール

$ sudo apt-get install sun-java6-jdk

環境変数 JAVA_HOMEを設定。
export JAVA_HOME=/usr/lib/jvm/java-6-sun/

以上。




2008年4月8日火曜日

Ruby flush

Googleで「Ruby flush」で検索すると、「Ruby flash」が引っかかる件について...
ちょ、ちょい違うんですけど。

2008年4月4日金曜日

Xming

CygwinでXDMCP時にSPARC Solaris10のJava Desktop Systemで画面がフリーズする問題は、Xmingに変更すると解決した。
Cygwinの問題だった様子。
http://www.straightrunning.com/XmingNotes/

それにしてもいつの間にこんなよいソフトがフリーになっていたんだろう。
Astec-Xを使っていたころが懐かしい。

Dell T105が15500円~

デュアルコアOpeteron搭載とか素晴らしい。
あとは、non-ECCメモリが使えて、うるさくなければML115を置き換えるには十分だなぁ。
ちょい魅力的なんですけど。。。調べてみるか。
http://configure.apj.dell.com/dellstore/config.aspx?c=jp&cs=jpbsd1&l=ja&oc=6285B0502&s=bsd


2008年3月28日金曜日

setquota

CentOS5.1にはsetquotaとかあるのか~。今頃知った。
バッチ処理だとこっちだな。

2008年3月4日火曜日

2008年2月26日火曜日

2008年2月15日金曜日

OpenLDAPのsecurity fix(CVE-2008-0658)


http://nvd.nist.gov/nvd.cfm?cvename=CVE-2008-0658

パッチはこれ。
http://www.openldap.org/devel/cvsweb.cgi/servers/slapd/back-bdb/modrdn.c.diff?r1=1.185.2.9&r2=1.185.2.10&hideattic=1&sortbydate=0&f=h

LDAP Account Managerでホームディレクトリの自動作成 on CentOS5

LAMで、ホームディレクトリの自動作成機能を使おうとしたら、/var/log/secureに次のエラーメッセージが。

sudo: Manager : sorry, you must have a tty to run sudo ; TTY=unknown ; PWD=/home/Manager ; USER=root ; COMMAND=/var/www/html/lam/lib/lamdaemon.pl

調べたところ、visudoで、下記のrequirettyをコメントアウトすれば良いらしい。

# Disable "ssh hostname sudo ", because it will show the password in clear.
# You have to run "ssh -t hostname sudo ".
#
Defaults requiretty

OK。問題なく動作した。


今日ヒットしたバグ

たぶんこれ。
http://bugs.php.net/bug.php?id=34879

とりあえずパッチ作ってみたので、rpmbuild中。phpパッケージのビルドは時間がかかるからなぁ。


Sun Ray ServerのWeb管理画面

Sun Ray Software 3.1をインストール直後に何故か、Web管理画面にログインできない。

ということでいろいろぐぐった結果、
# chgrp utadmin /etc/opt/SUNWut/utadmin.conf
で、ログインできるようになるらしい...ということで試してみたら本当にできた。

な、何故だ...。

2008年2月14日木曜日

FirefoxのDownload Statusbarを入れてみた

ダウンロードのたびにダウンロードマネージャーのウィンドウが開くのが邪魔なので、Download Statusbarを入れてみた。

https://addons.mozilla.org/ja/firefox/addon/26

2008年2月13日水曜日

Sambaとnetatalkの組み合わせの情報


http://www003.upp.so-net.ne.jp/hat/netatalk/andsamba.html

Solaris10 + Cygwin

CygwinをWindows XPに入れて、XDMCP経由でSolaris10(U4)のJava Desktop Systemにログインしてみた。
Solaris側は、/etc/X11/gdm/gdm.confで[xdmcp]をEnableにすることと、/usr/openwin/lib/fonserver.cfgに日本語フォントのパスを追加した。

Windows XP側では、cygwinを起動して、
$ XWin :0 -query [SolarisのIP] &
で普通にSolarisのログイン画面が表示された。

ログインすると、「半角・全角」キーでATOKも有効になるので、簡単便利。
想像していたよりもほとんど設定いらずだった。


2008年2月7日木曜日

Sun Ray Software3.1を設定

プライベートネットワークに、SunRay環境を構築。
# cd /opt/SUNWut/sbin
# ./utadm -A 192.168.10.0
デフォルトでは、「no IP address offered」ということで、DHCPサーバーが設定されないようなので、最初の質問に「no」と答える。

次に初期設定
# ./utconfig
基本的にはデフォルト値で設定してみた。

Sun Ray DTU Firmwareを同期。
# cd /opt/SUNWut/sbin
# ./utfwsync

OSを再起動。

http://[sunray serverのIP]:1660/ でSun Ray AdministrationのWeb管理画面へアクセスできる。
admin、utconfigで設定したパスワードで、管理画面へログイン。

ってここまでやって、管理画面の「オンラインマニュアル」を参照すると、日本語インストレーションガイドが表示された...。遅いって。

Webブラウザの要件
「Mozilla、またはNetscape CommunicatorなどのWebブラウザ...」、さすがSun。IEを記載しないところがしびれる。

次に、トークンリーダーを設定。
管理GUIから、「デスクトップ」、DTUを選択して、「属性の編集」で、トークンリーダを有効に変更する。

設定を反映するために、「管理」から「サービスの再起動」で「コールドリスタート」を実行。反映後、トークンリーダーが設定されていることを確認。

ユーザーを登録するために、DTUにカードを差し込んで、ユーザー登録を実施。

ここまで設定すれば、とりあえずSun Rayを利用可能。
ただし、Sun RayサーバーでXが起動していないと、Sun RayのDTU側に画面が表示されないので、
# /usr/dt/bin/dtlogin
で、Xを起動しておく(ちょっとはまった。)

これでDTU側にSolarisのログイン画面が表示される。

Solaris側で既存のLDAPサーバーなどを参照して、ユーザーアカウントを用意すれば、DTUで作業が可能になる。
で実際にログインしてみると、なぜかパスワード認証に成功したあとに、またログイン画面に戻ってしまう...??
いろいろ調べた結果、単にホームディレクトリが無かっただけだった。Sun Rayだから、何か特別な設定が必要~??とか考えてしまった。深読みしすぎ。

それにしても、物理的なネットワークなどを用意しさえすれば、とりあえず動かすまでに半日もあれば十分で、設定も簡単ということが分かった。
今度は、Sun Ray Software 4.0とSun Ray Connectorを使って、Windows Terminal Serverとの連携もやってみようかな。






2008年2月2日土曜日

Solaris10で起動時にネットワークが立ち上がらない...

Solaris10で、DHCPから固定IPに設定を変更した後に、再起動すると、

network/physical:default misconfigured:

のようなメッセージが表示されて、ネットワークインターフェースが立ち上がらなくなった。
調べたところ、手で作成した/etc/hostname.[ethname]のファイルに書いたホスト名の後に、改行が1行多かった模様。
無駄な改行を消したら、エラーが出なくなった。き、厳しい。


2008年2月1日金曜日

Solaris10 U4のSamba

Sun提供のSambaなんだけど、/usr/lib/security/pam_winbind.so.1が入るようになった。
邪魔なので、SUNWsmbauを消そうとしたら、SUNWgnome-vfsが依存しているらしい...。
Gnomeデスクトップを使わなければいいけど、そうじゃないばあいは面倒だなぁ。



おぉ。超期待!!

VA Linuxのダンプ解析講座
http://www.valinux.co.jp/contents/tech/techlib/eos/dump/dump_001.html

コメントとか、質問とかつけられるともっと良いのに~。

showrev -p

Solaris10でシステムに適用済みのパッチ情報を表示するコマンド

# showrev -p

コマンド名が思い出せなくて、探し出すのに苦労した...。historyを探したらまだあって助かった。メモメモ。

ついでにここも参考になりそう。
http://docs.sun.com/app/docs/doc/816-3964/6ma77alqm?l=ja&a=view

PHPのjpgraphで使える色一覧

http://www.asial.co.jp/jpgraph/manual/jpgraph_manual/482Availablenamedcolors.html

smpatch update

Solaris10でパッチを適用するために
# smpatch update
をすると、/var/sadm/spoolにパッチのファイルがダウンロードされる。

忘れないうちにメモ。


2008年1月25日金曜日

【Solaris10】zoneを削除

VMwareのテスト環境でゾーンが不要になったので、削除の手順を調べてみた。

http://docs.sun.com/app/docs/doc/819-0385/6n2qkbk49?l=ja&a=view#z.inst.task-50

# zoneadm -z zone-name halt
# zoneadm -z zone-name uninstall -F
# zonecfg -z zone-name delete -F

これで綺麗さっぱり無くなるらしい。


64bit kernelが動作した...Solaris10 on VMware

開発評価環境に利用しているCore 2 DuoのホワイトBOXマシン。
ずーっと、VMware上でSolaris10の64bitカーネルが起動できずに、いろいろ辛かった。
現象的にはこれ。
http://pubs.vmware.com/guestnotes/wwhelp/wwhimpl/common/html/wwhelp.htm?context=guestnotes&file=guestos_solaris10.html

64-Bit Solaris 10 1/06 (Update 1) and Solaris 10 6/06 (Update 2) Fail with Triple Fault on Intel Pentium M-Based Systems Merom, Woodcrest, and Conroe
ということで、Solarisカーネルがtriple faultするらしい。ということまでは分かっていた。

Solaris10(U1)、(U2)の問題らしいので、Solaris10(U4)をインストールしようとしても、何故か途中で失敗。これまで何度か挫折していた。
しかも何故かインストール済みのU3でも64bitカーネルが起動できず。

えーい、っということで、BIOSのアップデートを試みてみた。
治った..............。ぉい。

こんなことならさっさと試しておけばよかった。
マザーボードはASUSのP5VD2-MXというやつで、BIOSバージョンが0601(2006/08/07)だったのを、1017(2007/06/15)にアップデートした。

次はML115のBIOSをアップデートだな。

2008年1月24日木曜日

Vistaでスリープから復帰時にバッチファイルを実行

タスクスケジューラーでスリープから復帰時のイベントにタスクを登録すればよいらしい。
http://bbs.kakaku.com/bbs/keyword/ranking.aspx?kw=%83o%83b%83%60%83t%83%40%83C%83%8B&cw=%83%5E%83X%83N&span=1w

このタスクの登録をバッチ化できれば、ドメインログオンスクリプトみたいなことができそうなんだけど、schtasksコマンドでは出来なさそう...。
http://support.microsoft.com/kb/814596/ja

何かいい方法は無いかなぁ...。

2008年1月18日金曜日

aspellでスペルチェック

ソースコードのtypoを指摘されてしまったので、aspellでスペルチェックしてみた。

$ aspell -l en_US -c sample.c

こんな感じでお手軽だった。

2008年1月16日水曜日

gitを使ってみた

My Samba改造作業用にgitを使い始めてみた。
自分の作業用のレポジトリを作成して、使い始めてみたけど、Sambaのソースぐらいなら余裕で軽快に動作する。
ブランチの切り替えがすごい軽快なので、面白い。
最初はブランチの切り替えという概念がよくわからなかったので、ちょっと使い方間違えたりしたけど、自分の作業用だから気にしない~。

[備忘録]
0. configの初期化
$ git config --global user.name "MY NAME"
$ git config --global user.email myname@example.com

1. マスターとしてupstreamのsambaのソースコードを登録。
$ tar xfz samba-3.2.0pre1.tar.gz (例です... まだリリースされてません)
$ cd samba-3.2.0pre1
$ git init
$ git add .
たぶん、Samba Teamのレポジトリを元にcloneしても良いはず。まだ試してないけど。

2. upstreamをベースにブランチを作成
$ git branch testbranch

3. ブランチに切り替え
$ git checkout testbranch
この操作で、カレントディレクトリのソース一式が指定したブランチのものに置き換えられる。

4. ブランチにcommit
$ git add sample.c # 新しく作成したファイルなどは追加する。
$ git commit -a

5. diffを取って、patchを作成してみる。
$ git diff -r master > samba-3.2.0pre1-sample.diff
6. マスターにcommit
ここはまだやってない...。

かな。


2008年1月15日火曜日

tortoisesvn

Windows XPにtortoisesvnをインストールしてみた。日本語パックもインストール。
http://tortoisesvn.tigris.org/
右クリックメニューでSVNが扱えるらしい。

2008年1月12日土曜日

Windows Server 2008の基礎知識

... なんか設定がより複雑怪奇になっているような気が。
http://www.atmarkit.co.jp/fwin2k/winsv2008/index/index.html
RODCって、Samba LDAPでいうところのスレーブと実質的には変わらん気がするなぁ。
RODCが盗まれたときの、パスワードの強制クリアはちょっと面白い機能かな。
でも実際問題、どのぐらいの利用者がこの機能を設定するんだろう...。RODCは使うと思うけど、ユーザーごとにパスワードの送信だけを設定したりするんだろうか...。相当面倒だと思うんだけど。

まあ、これとか使うと本当にあっという間にLMハッシュが解析されちゃうしなぁ。
http://gigazine.net/index.php?/news/comments/20070816_ophcrack/


対策としてはこういう感じらしい。
http://support.microsoft.com/kb/299656/ja




2008年1月9日水曜日

Windows XPにVisual Studio 2008を入れてメイリオ

http://itpro.nikkeibp.co.jp/article/NEWS/20071225/290160/

ということらしいので、
http://www.microsoft.com/japan/msdn/vstudio/
から、Visual C# 2008 Express Editionをインストール。

650MBほどディスクを消費して、メイリオフォントが利用可能になった。
慣れないから、みづらい...。