05月20日
Cannot Allocate Memory!? TimeMachine保存先をWindows共有後、新たな問題発生です
突然、バックアップで問題があると警告が発生し、TimeMachieのバックアップ失敗しました。
less /var/log/system.logを確認すると以下のようなエラーがわんさか吐き出されています。
mds[53]: (/Volumes/MyMacBackup/.Spotlight-V100/Store-V2/975E6C7A-AEEA-438C-804C-7FE8A6D6BF33)(Error) IndexGeneral in ssize_t fd_pread(fd_ptr, void *, size_t, off_t):pread(113 /Volumes/MyMacBackup/.Spotlight-V100/Store-V2/975E6C7A-AEEA-438C-804C-7FE8A6D6BF33/live.2.indexPostings, o:406000, s:65536) err:5
うぉぉぉなんだこれは!?
初期の状態 ー 意味不明なエラー、まずはFinderでアクセス
・smb接続先としているf$、およびMyMacBackup(タイムマシンイメージ)アイコンは
ディスクトップに存在しています。
→ Finderからf$をクリックして、アクセスしたら、f$のアイコンが消え去りました。
・ネットワークがきれたのか!?
→ PING確認、生きています。また、RDP接続済みの操作に問題発生していません。
症状がなんか怖い・・・
マウント済みアイコンが消え去った後の状態
・ネットワークは生きていることから、もう一度smb接続をしてみる
Finderから移動→サーバーへ接続からhomepc.local/f$へ接続します
mac-win-timemachine-problem-FinderError posted by (C)macyarounanoka
system.logを確認します。
→ なにも出力されていません。orz・・・
さっきまで、正常に接続されていたはずなのになぜだ!??
システム管理者って俺だよね・・・そのエラー画面だけじゃわけ、わからんでしょ・・
・こうなったら、手動でsmb接続して確認するしかありません。
ターミナルを開いて、
$ mkdir /tmp/hoge
$ mount_smbfs //homepc.local/f$ /tmp/hoge
smb_mount: mount failed to homepc.local/f$, syserr = File exists
エラーがでました。File exists???ファイルがある??
dfコマンドでマウントされているか確認してみます。
$ df
・・・
//user@homepc.local/f$ on /Volumes/f$ (smbfs, nodev, nosuid, mounted by user)
すでに/Volumes/f$はアクセスできないのに、マウントされているって表示されています。
・・・(遠い目)
$ umount /Volumes/f$
正常にアンマウントできました。
もう一度、手動でWindows共有をマウントします。
$ mount_smbfs //homepc.local/f$ /tmp/hoge
mount_smbfs: server connection failed: Cannot allocate memory
ようやく、それっぽいエラーが出てきました。
が、Cannot allocate memory??
macのメモリを確認すると2G以上空いているんです。
どんだけメモリ使うつもりなんだ!?
Cannot allocate memoryが意味不明エラーなので、接続先のWindowsマシンを確認します
・Windows7 のイベントログを確認します。
えっ!
管理イベントの概要で過去1時間、3,400件を超えるエラーが発生しています。
エラーは特定のイベントID 2017、ソース srvに集中しています。
「非ページ プール割り当ての制限に達したため、サーバーはシステムの非ページ プールから割り当てることができませんでした。」
mount_smbfsのCannot allocate memoryと内容が一致してきました。
どうやら、smbfsのエラーは、Win7のエラー内容を出力しているものと想定できそうです。
解決策
googlingします。
エラーの解説 Microsoft Community
Vistaの話ですが、レジストリで変更可能だが、ServerOS使えと回答がありますね・・
修正方法(Windows7) Windows7 Networking Forum(US)
regeditで2カ所修正します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache
0 → 1に編集
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size
1 → 3に編集
Windows7を再起動します。ついでに久方ぶりにMacも再起動します。
処置後の確認
・smb接続できることをFinderから確認します。
→接続できました。
・ディスクユーティリティでMyMacBackupイメージを検証しておきます。
(LaunchPad → その他 → ディスクユーティリティ )
mac-win-timemachine-problem-diskcheckError posted by (C)macyarounanoka
わんさかエラーが出てきました。><
真っ赤な文字でエクステントアロケーションが重複しています。多すぎです。
・ディスクを修復するを実行します。
こんなエラーいっぱい発生していて、直るんでしょうか・・心配。
約10分ぐらいかかりました・・
mac-win-TimeMachine-Problem-RepairDiskDone posted by (C)macyarounanoka
無事修復できたようです。
TimeMachineも正常に動作しはじめました。
mac-win-TimeMachie-Problem-TimeMachineStartedGood posted by (C)macyarounanoka
・Windows7側でイベントログを確認します。
直近でEvent ID 2017エラーが発生していないことを確認できました。
しばらく様子見ですね。
最後まで読んでくれた方、お疲れさまでした。
参考になれば幸いです〜
関連:
macからWindows管理用のC$共有へアクセスする
TimeMachine保存先をWindows共有フォルダへ。快適!
DNSサーバー不要で名前解決。さらにTimeMachineバックアップが快適になりました。
TimeMachine保存先をWindows共有フォルダとした場合の課題
Windows共有、いくつか問題が発生しています。
以下のことから外付け・内蔵SSDのバックアップ先+Windows共有フォルダ、
2つをバックアップ先として常に設定したほうがよいです
Windows共有フォルダ先、1つのみでは
まさかのための復元用に使えない可能性
が高いです
1.Windows共有フォルダのみのバックアップ先の場合、MacのSSDが壊れた場合の復元方法が不明
Mac OSがブートしなくなった際、OS起動前のディスク選択でWindows共有フォルダを
指定する方法が分かっていません。
2. ネットワークが不安定だとバックアップファイル破損の恐れがある
Windows − ルーター − WiFi − Mac
集合住宅系では、無線通信が混雑状態で、不安定となることがあるようです。
この不安定な状態でバックアップが起動すると、バックアップファイルが破損してしまう
恐れがあります。(修復できないことがありました)
3. Windows側のレジストリは変更すると不安定になる可能性がある
Cannot Allocate Memory!? TimeMachine保存先をWindows共有後、新たな問題発生です
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache
0 → 1に編集
としましたが、暫く経って、Remote Desktop Connection(RDC)の接続が切れる、
反応がすごい遅くなるといった現象が出てきました。
HLM\SYSTEM\CurrentControlSet\
Session Manager\Memory Management\LargeSystemCacheを0とすると
RDCの不具合が発生しなくなりました。
このレジストリは0のままにしたほうがよい。
→Cannnot Allocate Memoryが発生する可能性がある
コメントシステムを利用したくない方はお問い合わせからお願いします。
2013.8.19 DISQUS(外部コメントサービス)の利用を開始しました。
Facebook, google, Twitter等のアカウントで投稿可能です。