この記事にはいろいろご意見があるかもしれませんね。


openSUSE でスクリーンショットを取って ntfs パーティションに保存したときに気がついたのですが、Windows では「使ってはいけない文字」を NTFSフォーマットは受け付けて書き込むことができるわけです。

たとえば、スクリーンショットを取って、":" なんかが入っているファイルを ntfs-3g は平気で書き込んでくれます。これを Windows に切り替えて Gimp2 で開くとこんな感じになります。

a0056607_19551123.jpg


もちろんフォトビューワでも読めないし、 Explorer から削除も受け付けません。

つまり NTFS は「ほとんどどんな条件のファイルでも受け付ける」のですが Windows はそれを許さないということです。

よくある話ですが NTFS は256「文字」までという制限がありますが、この数字が「バイト」なのか「2バイト」なのかはよくわかりません。ただ、Windows 2000 ころまでは Bytes だったような気がします。

やったことないので確信は持てないのですが

C:\1\2\3\...............\250(位)までディレクトリを掘って、 ...\250 に1万個くらいファイルをぎりぎりの長さで作ります。その後 C:\1 を "C:\すんご長いフォルダ名だよーxxxxxxxxxxxxxx--wwww"みたいにリネームしたとき、どういう動きをするんでしょうね。

怖くてやっていませんけど。

--
こういった問題はいつもファイルサーバのマイグレーション作業にはつき物です。私の得意な Novell NSS のマイグレーションではたまに 「256 文字」の制限に引っかかるファイルがあるのですが、いったいこのようなファイルはどのように作られたのでしょう。

(たいていIEの「全部保存」では許されるみたいです。素敵な長いファイル名を作ってくれます)

おそらく、 Linux から ntfs-3g を使えば 「256 文字」以上の素敵なディレクトリも作ってくれるかもしれません。 Novell NSS ではこういったファイル名の長さに制限がないため、 Windows のエクスプローラーからファイルをバックアップすると「アクセスできない」ファイルが山のように生まれます。もっともそれが Windows で作られたファイルだからクセが悪い。

それから、数万のファイルがあるフォルダの属性を変えたとき、「ほとんど固まる」状況も何とかしてほしい。

あと、いろいろ調べたんだけど、 NTFS だけは「デフラグ」という業務が必須らしいですね。初めて知った私は馬鹿です。そういた Novell NSS もデフラグの機能ないしなあ。

デフラグの必要がある NTFS 上でデフラグが必要な Hyper-V の仮想イメージを動かしている皆様のご努力には頭が上がりません。これ毎日の管理者の仕事ですからね。C:ドライブなら、システムの再起動が必要だし。

一番いいのは Windows が EXT3 とか ZFS なんかを動かしてくれることなんですけど。

夢ですかね。


islandcenter.jp
[PR]
by islandcenter | 2012-07-24 20:39 | Windows | Trackback | Comments(0)

Translate English this page

-現象-

OES11 で iManagerを開くと 役割とタスク( Role and Tasks) に何も表示されない。

"No roles and tasks to display"

a0056607_1730537.jpg


-対策-

iManager を全て削除し、インストールしなおした。

YaST > Software Management > search > "imanager"
a0056607_17345888.jpg


右クリック(Right Click) > 削除(Delete)
a0056607_1737342.jpg


パッケージの依存関係を壊して全て削除します。
時間がかかる非常に面倒な作業です。

-再インストール-

YaST > Software Management > pattern > OES より必要なソフトウェアをもう一度インストールします。
a0056607_17401858.jpg


ブラウザをリスタートさせてキャッシュをクリアして、もう一度 http://myserver/nps へアクセスします。
a0056607_17462899.jpg



※ 私は iManager が動作するサーバではどのようなサービス、ファイル、プリントなどを動作させるべきではないと思います。iManager が動作するサーバーは専用とすべきだと思います。また、全てのOESサーバはパフォーマンスに問題ないのであれば XEN on SLES で仮想化すべきです。設定を変更する前の仮想マシンイメージをバックアップすれば、このようなトラブルに陥ることは決してなかったでしょう。

-keyword-

Novell OES Open Enterprise Server iManager desapear "Task And Role" 役割とタスクが消える。

islandcenter.jp
[PR]
by islandcenter | 2012-07-19 17:55 | OES2 Linux/NetWare | Trackback | Comments(0)

「うまく動かないなぁ」という時、パケットトレースが以外な状態を教えてくれる場合があります。現代は開放バス型のネットワークではないため、HUBにアナライザをつないで...という技が利きませんので、対象のPCのパケットを直接トレースして原因を調べることになります。

ここでお勧めしたいのが Ether Real の後継でオーブン化された WireShark です。

ダウンロードはこちら
Get Wireshark

ダウンロードしたファイルを実行します。

インストール > Yes

Welcome > Next

License Agree > Agree

インストール先 > 特に問題がなければデフォルト

インストールするコンポーネント
a0056607_1734743.jpg

特に問題なければ全てチェック

アイコンの位置
a0056607_173665.jpg

お好みでチェック

インストール先 > デフォルトで問題なければ OK

WinCap のインストール > 必ずチェック
a0056607_17385128.jpg


Install

あとは Finish が出るまでOK

-インストールしたら-

インターフェースの選択 - この作業は必ず起動後に行ってください。

メニュー、もしくはボタンから
a0056607_17444367.jpg


必ず I/F にチェックを入れます。ここでは LAN 用アダプタにチェックを入れました。
a0056607_17474966.jpg


特定のアドレスをモニタしたい場合
a0056607_17515484.jpg


Filter 欄に ip.adder == xx.xx.xx.xx を入れて必ず[Apply] <-- よく忘れます。

スタートボタンを押します。
a0056607_17544263.jpg


Ping しただけですが、このように表示されます。
a0056607_180036.jpg


いつまでもキャプチャを続けているとバッファオーバーフローしますから Stop ボタンを押します。
a0056607_1823636.jpg


もう一度キャプチャをはじめようとすると ”保存しなくていいの?”というダイアログが出ます。決定的な証拠が見つかったら保存します。決定的でなければ Save しないで次のキャプチャをします。

a0056607_1835925.jpg


簡単な例ですが、自分自身が正しくDNSに問い合わせをしているか確認します。
Filter 欄に "DNS and ip.adder==xx.xx.xx.xx(自分のIP)" をセットしてキャプチャしました。必ず条件( Fileter ) を設定した後 Apply を押してください。
a0056607_1817215.jpg


もう少しフィルタの高度な使い方を調べたい場合はこちらのサイトをご参考ください。

Wiresharkで特定の相手との通信だけを表示させる @markIT

Wiresharkで特定のプロトコルだけを表示させる@markIT

WIRESHARK(ワイアシャーク) 個人のサイトですが非常に詳しいです。

-よくやるドジ-

- I/Fを選んでいない
- Filter を変更して Apply を押していない。

以上2点です。

--
一応 Linux 版もリリースされていますし、ソースもあるのですが、依存関係があるので、あまりお勧めできません。 Linux には通常 tcpdump というコマンドがあるので、こちらをつかうのが良いでしょう。

islandcenter.jp
[PR]
by islandcenter | 2012-07-12 17:56 | プライベートクラウド | Trackback | Comments(0)

タイトルずばりのビデオがありましたのでご紹介します。openSUSE 11 > YaST で GUI そのままなので、このビデオで理解できる方は読まない方がよいかもしれません。

Dynamic-DNS with openSUSE 11.2

また SLES10 時代に書いた記事も合わせてご参考ください。 イントラネット用DNSを SLES10でインストールから、設定まで、一応記述したものです。それほどやり方は変わりません。
SUSE Linux 10 : YaST で イントラネットDNS サーバを設定

-DDNS の設定-

YaST > DNS server > TSIG Keys を選び、Key ID 値に任意の名前(ここでは intra) を付け /etc/name.d/ に intra.key と名前をつけて Generate ボタンを押します。
a0056607_15525945.jpg


次に "File Name" 横の Browse ボタンを押して先ほど generate した intra.key を選び Add ボタンを押します。TSIGキーリストに表示されます。

次に DNS ゾーンを選びリストから edit ボタンを押します。
a0056607_15585463.jpg


Allow Dynamic Update と Automatically generate from のチェックボックスをチェックします。
a0056607_1604784.jpg


これをゾーンリストすべてに繰り返します。なお 逆引きゾーンは編集できないよう Records タブは開けません。

※はまりどころ - このチェックをした状態ではゾーンファイルはアップデートされません。もし固定IPのデバイスを追加したい場合は、この Allow Dynamic update の check をはずして一応 named を再起動します。、次に追加したいデバイスを Zone Filre Record の Add/Edit で行います。いったん SAVE & Restart した上で、 Allow Dynamic DNS をチェックして再起動する必要があるようです。おそらく、DDNS と固定 IP とを混在させないための Safty 対策なんでしょうが、ちょっと面倒です。

Alloow Dynamic DNS をチェックして YaST を終了すると /var/lib/named/master/MYZONE が /var/lib/named/dyn に移動します。 YaST を使う上でのハマリどころです。

Finish で終了します。

DNSの設定はここまでです。

-DHCP-

YaST > DHCP を検索して開きます。
Configure Declarations から DHCP リストを選び Advanced ボタンを押して TSIG Key Management を開きます。
a0056607_1682175.jpg


File Name 横の Browse ボタンから 先ほど Generate した intra.key を選びます。
a0056607_16113355.jpg


これでリストアップされます。
a0056607_1614767.jpg



もとの画面に戻ったら subnet を選び Edit します。
a0056607_16164596.jpg


Allow Dynamic DNS をチェックします。
a0056607_16212338.jpg



元の画面から Dynamic DNS のボタンを押します。
a0056607_16223620.jpg



Enable Dynamic DNS subnet, Use Update Dynamic DNS をチェックして、それぞれのゾーンを保持するゾーン名、DNSサーバを設定します。
a0056607_1625716.jpg


※ここで逆引きゾーンを指定しないとエラーになります。ということで事前に逆引きゾーンを作る必要があります。

SUSE で 作る DNS サーバ(逆引きゾーン)


これで、設定は終了します。 OK > Finish で完了します。

設定内容は /var/lib/named/dyn に保管されます。

dns2:/var/lib/named/dyn # ls -al
total 20
drwxr-xr-x 2 named named 4096 Jul 6 16:03 .
drwxr-xr-x 10 root root 4096 Jul 5 16:10 ..
-rw-r--r-- 1 named named 331 Jul 6 16:03 1.1.168.192.in-addr.arpa
-rw-r--r-- 1 named named 702 Jul 6 16:02 1.1.168.192.in-addr.arpa.jnl
-rw-r--r-- 1 root root 657 Jul 6 04:52 intra

dns2:/var/lib/named/dyn #
dns2:/var/lib/named/dyn # cat 1.1.168.192.in-addr.arpa
$ORIGIN .
$TTL 172800 ; 2 days
1.1.168.192.in-addr.arpa IN SOA dns2.intra. root.dns2.intra. (
2012070601 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS dns2.1.1.168.192.in-addr.arpa.
NS dns3.1.1.168.192.in-addr.arpa.
dns2:/var/lib/named/dyn #

このような感じです。

/etc/named.conf はこのようになりました。(コメントは削除しています)

dns2:/etc # cat named.conf
options {
directory "/var/lib/named";
dump-file "/var/log/named_dump.db";
statistics-file "/var/log/named.stats";
listen-on-v6 { any; };
notify yes;
include "/etc/named.d/forwarders.conf";
};
zone "." in {
type hint;
file "root.hint";
};

zone "localhost" in {
type master;
file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" in {
type master;
file "127.0.0.zone";
};

include "/etc/named.conf.include";
logging {
category default { log_syslog; };
channel log_syslog { syslog; };
};
zone "intra" in {
allow-transfer { any; };
file "dyn/intra";
type master;
allow-update { key intra; };
};
zone "1.1.168.192.in-addr.arpa" in {
allow-update { key intra; };
allow-transfer { any; };
file "dyn/1.1.168.192.in-addr.arpa";
type master;
};
dns2:/etc #


DHCP の設定ファイルは /var/lib/dhcp に作成されます。

dns2:/var/lib/dhcp # ls -al
total 28
drwxr-xr-x 8 root root 4096 May 3 14:19 .
drwxr-xr-x 46 root root 4096 May 3 14:15 ..
drwxr-xr-x 2 dhcpd root 4096 Jul 6 16:39 db
drwxr-xr-x 2 root root 4096 Jul 6 16:39 dev
drwxr-xr-x 5 root root 4096 Jul 6 03:57 etc
drwxr-xr-x 2 root root 4096 Jul 6 16:39 lib64
dr-xr-xr-x 104 root root 0 Jul 6 07:37 proc
drwxr-xr-x 3 root root 4096 May 3 13:49 var
dns2:/var/lib/dhcp # ls db -l
total 16
-rw-r--r-- 1 root root 5783 Jul 6 16:39 dhcpd.leases
-rw-r--r-- 1 root root 5783 Jul 6 16:27 dhcpd.leases~
dns2:/var/lib/dhcp #
dns2:/var/lib/dhcp # ls etc -l
total 40
-rw-r--r-- 1 root root 570 Jul 6 16:27 dhcpd.conf
-rw-r--r-- 1 root root 3045 Jan 14 00:52 gai.conf
-rw-r--r-- 1 root root 370 Jan 14 02:30 host.conf
-rw-r--r-- 1 root root 744 Jul 5 20:13 hosts
-rw-r--r-- 1 root root 331 Oct 26 2011 localtime
drwxr-xr-x 2 root root 4096 Jul 6 03:42 named.d
-rw-r--r-- 1 root root 1192 Jan 14 00:52 nsswitch.conf
drwxr-xr-x 2 root root 4096 May 3 14:19 openldap
-rw-r--r-- 1 root root 871 Jul 6 03:39 resolv.conf
drwxr-xr-x 3 root root 4096 May 3 14:19 ssl

dns2:/var/lib/dhcp # cat dhcp/dhcpd.conf
cat: dhcp/dhcpd.conf: No such file or directory
dns2:/var/lib/dhcp # cat etc/dhcpd.conf
option domain-name "intra";
option domain-name-servers 192.168.1.2, 192.168.1.3;
option routers 192.168.1.1;
option ntp-servers 192.168.1.239;
default-lease-time 14400;
include "/etc/named.d/intra.key";
include "/etc/named.d/intra.key";
ddns-update-style interim;
ignore client-updates;
ddns-updates on;
subnet 192.168.1.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.1.30 192.168.1.49;
default-lease-time 14400;
max-lease-time 172800;
zone intra. { primary 192.168.1.2; key intra; }
zone 1.1.168.192.in-addr.arpa. { primary 192.168.1.2; key intra; }
}
dns2:/var/lib/dhcp #

db/dhcpd.leases に最新のマシン名、MAC アドレス、IP アドレスが記録されます。

dns2:/var/lib/dhcp/db # cat dhcpd.leases | grep lease | sort
# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.2.3-P2
lease 192.168.1.30 {
lease 192.168.1.31 {
lease 192.168.1.32 {
lease 192.168.1.33 {

|
中略
|

lease 192.168.1.48 {
lease 192.168.1.49 {
lease 192.168.1.49 {
dns2:/var/lib/dhcp/db #


一応、再起動してみましょう。

dns2:~ # /etc/init.d/named restart
Shutting down name server BIND waiting for named to shut down (28s) done
Starting name server BIND done
dns2:~ # /etc/init.d/dhcpd restart
Shutting down ISC DHCPv4 4.x Server done
Starting ISC DHCPv4 4.x Server [chroot] done

DNS と DHCP は同じシステムで作った方が楽です。ただし、DHCP は基本的にサブネットに1台しか設定できない(冗長化するのはかなり特殊な方法があるそうですが)ので、仮想化して、定期的に cron でシャットダウン、バックアップ、あるいは、実際に構築している最中にイメージをスナップショットコピーを行っておくことをお勧めします。

どれだけ DNS で苦労したか.....

-Keyword-

SUSE Linux SLES11 DNS DHCP Dynamic DNS DDNS ダイナミックDNS

islandcenter.jp
[PR]
by islandcenter | 2012-07-06 16:54 | SUSE | Trackback | Comments(0)

逆引きゾーンは、普段、あまりイントラでは使わないのですが Dynamic DNS (DDNS) を構築する上で必要なので作ってみました。

この記事を参考にする前にイントラネットで作るDNSを参考に DNS をインストールしておいてください。古い記事ですが基本は同じです。
SUSE Linux 10 : YaST で イントラネットDNS サーバを設定

-参考-
逆引きの設定方法とは @markit


YaST2 > Network Service DNS を選びます。あるいは search から "DN...." を入れるとメニューが出てきます。
a0056607_15134617.jpg


DNSゾーンを選び、新しいゾーン名を作ります。逆引き用なので 192.168.1.x を逆に "1.1.168.192.in-addr.arpa 間違え""1.168.192.in-addr.arpa", master とします。Add ボタンでリストができます。
a0056607_151715100.jpg


逆引きゾーン1.1.168.192.in-addr.arpa "1.168.192.in-addr.arpa"を選び
a0056607_1522229.jpg

ここでは既に出来上がっているので TSIG キーが入っていますが

NSタブを開いて DNS の名前(ここでは dns2.intra) をセットします。Add ボタンでリストに追加します。
a0056607_15245453.jpg


一応 named をリスタートさせます。

# /etc/init.d named restart

それでは、次に Dynamic DNS (DDNS)を作ってみます。

SUSE Linux で Dynamic DNS(DDNS) を作る

islandcenter.jp
[PR]
by islandcenter | 2012-07-06 15:33 | SUSE | Trackback | Comments(0)

よくある話で、サーバのM/Bを交換したら、ディスクを追加したら、ハードウェアの構成が変わったら、システムの設定をいじったら、などさまざまな理由で SUSE Linux を「新規インストール」してしまいたいが「ディスクはフォーマットしたくない」という場合のテクニックです。

-DVDから通常のようにインストールを開始-

BIOS の設定を DVD ブートにして Instratall を選び、普通にインストールを開始します。

普通に New Installation を選びます
a0056607_18272186.jpg


問題はこのインストールサマリです。expart タブを開きます。
a0056607_1826104.jpg


通常では、空きパーティションか、空きがなければ既にあるパーティションをフォーマットするしか選択できないのですが
a0056607_1829584.jpg

Expart タブを開き Partition リンクを開きます。

Custom Partition Setup を選び
a0056607_18302674.jpg


おそらく、このような画面が出てくるでしょう。ここでは「うまく行った後」なので sdb1 に ( / ) ルートのマウントポイントがついますが、新規インストールでは、 / のマウントポイントが出ていません。この画面でどのディスク、パーティションにインストールするかを慎重に選びましょう。事前にハードディスクのタイプやフォーマットタイプなどを十分チェックしておきます。

インストールしたいパーティションを選び Edit ボタンを押します。
a0056607_18334968.jpg


このダイアログで format partition のチェックをはずし、今のパーティション(ここでは ext3) マウントポイントが指定されていない場合、マウントポイントとして / (ルート)を指定します。
a0056607_18371213.jpg


これで今のパーティションをフォーマットせずフレッシュインストールできます。
a0056607_18422416.jpg


ただし、既存のユーザがいるため、最初のユーザを作るシーケンスでダミーのユーザを追加します。このユーザは後で削除します。
a0056607_18434266.jpg


あとは通常にインストールすれば、パッケージを全て新規に追加してくれます。設定ファイルなどはほとんど書き換わりませんし、ユーザデータなどは上書きされませんでした。

--
例えば openSUSE を SLES にしたい、他のディストリビューションから乗り換えたい、CPUやマルチブートに失敗してブートローダーが壊れた、アップデートに失敗した、などの場合に覚えておいてよいテクニックです。

※ただし openSUSE は ext4 をサポートしていますが SLES11 は ext3 です。この場合は(おそらく)できないかも知れません。sles10 では raiserFS がデフォルトだったので一応警告が出ます。

ただ、他のディストリビューションから乗り換えの場合、 /var /opt などのディレクトリが異なるので、その後は残骸から再構築する必要があります。


--
SUSE SLES openSUSE 起動できない 再インストール フォーマットしない 上書きインストール

islandcenter.jp
[PR]
by islandcenter | 2012-07-02 18:53 | SUSE | Trackback | Comments(0)

シンクライアントを sysprep などで仮想サーバ上に配置すると、それぞれ仮想マシンにはキーボードがつながっていないため、自動的に 101 キーボードをデフォルトとしてインストールしてしまいます。
リモートデスクトップでつないでいる場合は特に問題なくクライアントの106日本語キーボードが使えますが、管理者が Virt-Manager から使う場合は非常に面倒なことになります。

そこで、Windows の基本に立ち返り、キーボードの変更方法をメモしておきましょう。

デバイスマネージャを確認すると「とりあえず 101 キーボード」が入っています。
a0056607_10151668.jpg


プロパティからドライバの更新を選びます。ここからは「推奨」の真逆の操作を行います。
a0056607_10183898.jpg


手動で検索して」
a0056607_10204445.jpg


コンピュータ上のデバイスドライバの一覧から」
a0056607_1025115.jpg


「互換性のあるハードウェア」のチェックをはずし「日本語 106 キー」を選びます。
a0056607_10281074.jpg


再起動が要求されるので、再起動します。

※ちなみに SUSE Linux を仮想化すると、インストールの際にキーボードレイアウトが選べますが、もし誤って English(US) のままインストールしてしまった場合は、 # yast (テキストコンソール), (or X 環境のGUIであれば yast2) > Hardware > Keyboard LayoutTAB. Enter で辿って、キーボードレイアウト"Japanese" を選びます。”Test” フィールドに特殊キーを打って正しいかどうかを確認して Tab "OK" Enter します。再起動は必要ありません

a0056607_12134663.jpg

-Key-
SUSE SLES XEN 英語キーボード 日本語キーボード 101 106 変更

お問い合わせ
slandcenter.jp






[PR]
by islandcenter | 2012-07-01 10:29 | プライベートクラウド | Trackback | Comments(0)