More from: samba

昔の私に助けられた(笑)

新しいPCをユーザーの業務に使えるようにセットアップしていて躓いた。
どうやってもsambaサーバーに接続できず、「システムエラー86」が発生してしまう(汗)。
ググってみると昔書いた記事「WindowsVISTAからsambaサーバーに接続出来ない場合は」が出て来た。
この記事はWindowsVISTAに関してだけど、Windows10でも同じようにすればOKだった(ローカルセキュリティポリシーを変更するには”secpol.msc”を起動すればOK)。
日記として書いているこのブログがたまにこういうところで役に立つんだよねぇ(汗)。

←クリックしてくれると嬉しいです。

sambaサーバーへのファイルコピーが失敗する

Windows10PCからlinux(Red Hat系)で動作しているsambaサーバーへのファイル(フォルダ)のコピーが途中でエラーになってしまう。
大量にコピーしていたので個数の問題だと思い調べてみるとext3ファイルシステムで扱える1ディレクトリ当たりのファイルの個数はデフォルトで32,000らしい。
件のサーバーのシステムヘッダファイル”/usr/include/linux/ext3_fs.h”を見ると
—————————————–
/*
* Maximal count of links to a file
*/
#define EXT3_LINK_MAX 32000
—————————————–
と定義されていたのでやはり32,000(実際にはディレクトリそのもの”.”と上位ディレクトリ”..”を含むので31,998)個になっていた。
うーん、しかたないから分割して処理するかぁ、、、

←クリックしてくれると嬉しいです。

”ファイルを消しちゃった”って泣き付かれた・・・

ユーザーから”共有フォルダ(サーバー)内のファイルを間違って消してしまったけどどうにかならないか?”とSOSが来た。
いやね、そんな時のためにとsambaにゴミ箱機能を持たせてはあるんだけど、この人は以前にもサーバー内のフォルダを消してくれた”前科”があり、その時は私が保存していたファイルも数十個まとめて消してくれたんだよなぁ。
しかもその時はサルベージ出来ずファイルは永久に復活できなかったという嫌な記憶が甦って来た。
今回は消してしまったファイルは1個だけで、幸いにもゴミ箱内から復旧させることが出来たけど、”2度あることは3度ある”んだろうなぁ、、、

←クリックしてくれると嬉しいです。

Windows10でsambaサーバーに接続出来ない?

ユーザーのPCを入れ替えたので、ファイルサーバーに接続して欲しいという依頼が来た。
PCの入れ替えに関しては私のほうで行うのが通例なのだがこの入れ替えは寝耳に水だった。
とにかく一度見に行くと接続に必要なバッチファイルすら元のPCからコピーされていなかったので先ずは旧PCを立ち上げて必要なファイルをUSBメモリにコピー。
それを新PCに入れて実行してみるもエラーになって接続出来ない。
元々新規購入したPCはそのままでは使え無いので初期セットアップを行うのだが、今回は他部署の人間が行ったので通り一遍のセットアップしかしていない。
なので、ネットワークの設定も最低限のIPアドレス等しか設定されていない。
本来は他にも設定する項目があるのだけど、それらは全くの手つかず。
その中にLANマネージャーの認証レベルの設定もあって、見てみるとやはり”未定義”になっていた。
これを”LMとNTLM応答のみのを送信する”に変更して接続用バッチファイルを動作させてみるとあっさりと接続出来た。
このPCをセットアップした部署にも初期セットアップ用のマニュアルを渡してあるんだけど、その存在すら覚えていなかったのだろうなぁ・・・

←クリックしてくれると嬉しいです。

ディスクフル・・・

現場のFAXで受信したFAXが紙で出てくるとの連絡があった。
調べてみると受信データを保存しているファイルサーバーのディスクが一杯になっている(汗)。
先日チェックした際は余裕があったのだけど、このパーティションにはsambaの.recycleディレクトリも置いてあって、その中に大量の削除済みデータが残っていた。
以前にこのディレクトリの中身が増えた際に削除後一定期間が経過したファイルを消すスクリプトを作ってcronで動作するようにしていたが、想定以上のファイルが削除されていたらしい。
中にはオフィスソフト(WORDやExcel)で作られたテンポラリーファイルも大量に残っている。
なので、取り敢えず毎日動作させているスクリプトを修正して削除済みファイルの保存期間を半分(2年->1年)にして動作させると、大量のファイルが削除されている。
さらにテンポラリーファイルに関しては保存期間を1-2日程度にするようにスクリプトを変更する予定。
で、気になるのはそのテンポラリーファイルのファイル名で、~$で始まるファイルが他にもなければ大丈夫なんだけど(汗)。

←クリックしてくれると嬉しいです。

”ゴミ箱”機能を追加した

昨日ファイルサーバ内で大量のファイルを移動されて見えなくなった対策の一部として、ファイルサーバにゴミ箱機能を追加した。
ファイルサーバではsambaを使っているので、次のページ
「Sambaでごみ箱を使うには(Red Hat Linux編)」(@IT)
を参考に、/etc/samba/smb.confに記述を追加してユーザーが削除したファイルは実際に削除されずに指定したディレクトリに移動するようにした。
移動する際に同じ共有ドライブに移動されるとディスクスペースを圧迫してしまうので、容量に余裕のあるパーティションにゴミ箱用のディレクトリを作り、各共有ディレクトリのルートにはそこへのシンボリックリンクを張った。
試しにファイルを削除してみると無事にそのディレクトリにファイルが移動したので、ゴミ箱ディレクトリは同じファイルシステム上に無くても良いみたい。
後は削除してから一定以上の日数が経過したファイルの自動削除の仕掛けを作ればOKかな?

←クリックしてくれると嬉しいです。

sambaサーバーに接続出来ない???

職場のPCの一台をファイルサーバーに接続して欲しいとの依頼があったので、接続用のユーザーアカウントを作ってクライアントPCの設定を行った。
ところがパスワードが違うということでサーバーに接続を拒否されてしまう。
パスワードの設定を間違ったかと思い、サーバー側で再度パスワードの設定をやり直し、念のため自分が普段使っているPCから新しいユーザーで接続を試すと接続出来た。
これで大丈夫と思って再度目的のPCの設定を行ったが、やはりパスワードエラーではじかれる。
サーバー側のログを見ても認証失敗のメッセージが出ているので、接続には行っているのは確かでネットワークの問題では無さそう。
さて、一体どういう理由で認証に失敗しているんだろうな???

←クリックしてくれると嬉しいです。

WindowsVISTAからsambaサーバーに接続出来ない場合は

先日WindowsVISTAのPCからLinuxのファイルサーバに接続しようとして
「 システム エラー 86 が発生しました。 ネットワークパスワードが間違っています」
というエラーが出た。
もちろんユーザー名もパスワードも正しいものを使っているにもかかわらずだ。
調べてみるとWindowsVISTA以降は認証方法がXpまでと変更され、「net use」コマンドを使って接続する時はデフォルトでNTLMv2認証を使おうとするが、バージョン2.2以前のsambaはLAN Manager認証レベルのみにしか対応しておらず結果的に認証に失敗してしまう(なのでパスワードが間違っていると解釈される)ことが判った。
これに対する対処方法はWindowsOS側で使用する認証方法をNTLMv2からNTLMかLAN Manager認証レベルに変更することとなり、具体的にはレジストリエディタで認証レベルを変更するか、VISTAのBusiness/Ultimate/Enterpriseや7のPro/Ultimate/Enterpriseではローカルセキュリティポリシーを変更することで対応可能だ。

レジストリエディタで変更する場合は「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa」にある「LmCompatibilityLevel」の値(デフォルトは”3″:NTLMv2 応答のみを送信し、サーバーが対応している場合はNTLMv2セッションを使用する)を変更する。

レジストリエディタで変更するキーはLmCompatibilityLevel(この画像で選択中)

レジストリエディタで変更するキーはLmCompatibilityLevel(この画像で選択中)

ローカルセキュリティポリシーを変更するには。
「コントロールパネル」の「管理ツール」にある「ローカルセキュリティポリシー」を開き、「セキュリティオプション」の「ネットワークセキュリティ:LAN Manager 認証レベル」という項目をダブルクリックして認証レベルを変更する。

Windows7Proのローカルセキュリティポリシーの変更画面

Windows7Proのローカルセキュリティポリシーの変更画面

この画面で認証レベルを「NTLM 応答のみを送信する」に変更する。

この画面で認証レベルを「NTLM 応答のみを送信する」に変更する。

こうなればOK

こうなればOK

今回調べていて記事によっては認証レベルを”0″(サーバーが対応していてもNTLMv2は使用しない)にすると書いているのもあったが、これだとセキュリティ的に問題があるので、出来れば”2″(NTLM応答のみ送信し、サーバーが対応している場合はNTLMv2セッションを使用する)が望ましいと思う。
“2”でも接続できない場合は”1″(LM及びNTML応答を送信し、サーバーが対応している場合はNTLMv2セッションを使用する)にすれば良いと思う
よほど古いsambaサーバーでない限り”0″にしてLM認証のみにする必要はない筈で、実際私の環境でも”2″で問題無く接続出来た。

←クリックしてくれると嬉しいです。

やはりftpは速かった

先日FAX機の試験を実施した際に公衆回線を利用してVPN接続したサーバにsambaで接続してファイルをアップロードする試験は出来たが、ftp接続の試験は出来なかった。
その後ルーターの設定を変更して貰いftpでのアップロードが可能になったので、あらためて試験を実施した。
前回とは送る原稿が異なった状態での試験となったので、sambaでの接続試験も再度行った。

A4の現行10枚をモノクロでスキャンしたデータを送った時の所要時間は、sambaの時が17秒少々でftpでは13秒程度だった。
現在使用中のFAX機でローカルネットワーク内にあるWindowsサーバーに送った時が13秒弱なので、ftpではそれと殆ど同じということで、これなら現在と同程度のパフォーマンスと言えるかと。
ということで事前に予想していたようにftp接続で送信するほうが速かったので、実際に導入したら基本はftp接続となりそうだ。

←クリックしてくれると嬉しいです。

sambaで繋がらなくて焦った

現場のPCからファイルサーバにsambaでアクセスしようとしてサーバー側に設定を追加しておいた。
今日になって実際に現場に試験用のPCを持って行って接続を試したら何故か繋がらない・・・
sambaのlogを見ると試験用PCからのアクセスを拒否していると出ている(あれ?)。
smb.confを見ても接続させたいセクションのhosts.allowにはちゃんと現場のネットワークアドレスの記述が追加してある。
ここでしばらく悩んでしまったが、原因は[global]セクションのhosts.allowに繋ぎたいIPアドレス(今回は現場のネットワークアドレス)の記述が無かったため。
ここにネットワークアドレスを追加してsmbdをrestartしたらすんなりと接続できた。
今回は試験的な接続だったので大きな問題にはならなかったけど、今後は実運用で必要になるので忘れずに書いておかないとなぁ(汗)。

←クリックしてくれると嬉しいです。