- blogs:
- cles::blog
OmniOS/ZFS サーバに wbadmin でイメージバックアップが取れない時に確認すべきこと
omnios windows以前、SMB 2.0 以降を使う Samba サーバの共有フォルダを対象にして Windows のイメージバックアップを取ろうとすると Sparse File の関係でバックアップが取れたり取れなかったりするという問題がありました。
同じような問題が OmniOS(illumos) でも発生していたので困っていました。
OmniOS は Open Solaris の系譜なので、ファイル共有は Samba ではなく Kernel 内蔵の smb です。
というわけで、Linux のSamba と同じテクニックは使えず、原因も Sparse File ではありません。
† まず、結論から
いつも通り、解決するための結論から書いて置きます。
以下のようなコマンドで zfs 共有の nbmand
(Non Blocking mandatory locks)*1*2 プロパティを on
にしてやります。
どうもこの nbmand
というプロパティが off
だとクライアントがファイルをうまくロックすることができず、これが原因になっていたようです。
nbmand
のデフォルトは off
ですし、おそらくパフォーマンス等に対するペナルティもあると思われるので、今回はバックアップに使う共有でだけ on
にしています。Open Solaris の時から nbmand
は cross-protocol locking (例えば NFS と SMB を同時に使う)が必要な時だけ on
にする必要がある*3という認識だったのですが、どうやらちょっと僕の認識が間違っていたようです。これまで off
でもファイルサーバとしては特に問題になる挙動に当たったことがなかったのですが、このあたり近日中に詳しく調べてみたいと思います。
† 実際に発生するエラー
実際にバックアップを取ろうとすると発生するエラーは以下のような感じです。
- *1: illumos: manual page: zfs.8
- *2: illumos: manual page: mount.8
- *3: Managing CIFS Shares (Task Map) (Solaris CIFS Administration Guide)
File Locksmith でファイルをロックしているプロセスを探す
windows windows11以前、Windows でファイルをロックしているプロセスを調べることができる LockHunterというアプリについてのエントリを書きましたが、これと同じことをすることができる MS 謹製の File Locksmith というユーティリティをみつけました。PowerToys というユーティリティ群のひとつとして搭載されています。
導入する場合、以下の GitHub のリリースから PowerToys としてダウンロードすることになります。
使い方はファイルを右クリックして「このファイルは何で利用していますか?
」という項目を選択するだけです。PowerToys は File Locksmith に限らず便利なツールがいろいろ揃っているので、導入しておくと良いと思います。
PowerToysWindows 用の File Locksmith ユーティリティ | Microsoft Learn
エクスプローラー内の 1 つ以上のファイルまたはディレクトリを選択します。 ディレクトリが選択されている場合、そのすべてのサブファイルとサブディレクトリもスキャンされます。 がアクティブ化されると File Locksmith 、アクセスできる実行中のすべてのプロセスがスキャンされ、使用しているファイルが確認されます。
AI Suite III の代わりに使える「Fan Control」
windows asusASUS の AI Suite 3 の代わりに使えるファンコントロールユーティリティを見つけたのでメモ。
† AI Suite 3 は一旦インストールしてしまうと微妙なので・・・
ASUS のマザーボードには専用のユーティリティとして AI Suite 3 というものがあるのですが、これがちょっと曲者で、アンインストールしてもファイルやサービスが残ってしまったり、一旦構成が壊れると再インストールしても動かなかったりでどうしようもありません。
もちろんファンスピードは UEFI から調整できるのですが、いちいち UEFI を起動するのも面倒なので Windows 上からファンコントロールできるサードパーティ製のアプリがないかと思って探してみたら、なんとか見つけることができました。今後は AI Suite 3 ではなく、こっちだけを使っていこうと思います。
Windows 上で .pfx/.p12 の中身を確認するには
ssl windowsWindows 上で .pfx の中身をチェックするためには certutil -dump (cert.pfx)
のようにコマンドを使えば確認できますが、面倒なのでドラッグアンドドロップで確認できるスクリプトを書いてみました。
show_pfx.bat
† 実行例
以下のような感じで証明書の中身が表示できます。
ちなみに PFX のパスワード入力はエコーバック(画面表示)されないので注意しましょう。
全角スペースが入りのファイルを bat にドラッグアンドドロップする
bat windows昔、作ったドラッグアンドドロップでファイル名に日付を追加する .bat ファイルですが、全角スペースが含まれたファイルが上手く扱えないので、使えるように改良してみました。
bat ファイルでの全角スペースの扱いは、半角スペースの扱いと違うのでみんな苦労しているようです。
今回は一度違う文字(___
)に置換してから、ループ内で逆に置換するようにしました。
作成時の注意点は文字コードを Shift-JIS にして保存する必要があるということだけです。
こんな感じで、全角スペース入りの複数のファイルをドラッグアンドドロップしても大丈夫になりました。
bat でコマンドを途中で改行するには
bat windowsLinux でシェルスクリプトを書くときに長いコマンドを途中改行するためには改行の直前に \
を書きますが、Windows の bat ファイルでは同様のやり方を知らなかったので調べてみました。
† これはどこにドキュメンテーションされているのか
ネットを検索すると ^
を使えば良いというのはすぐに見つかりました。
書いて見ると実際に問題なく動きましたが、公式のドキュメントで仕様を確認しておきたかったのでどこに記載があるのかちょっと調べてみました。
エスケープに関する記述は set コマンドの解説の以下でしょうか。明確に escape character が ^
である と書いてありますが、これが bat 全体で使えるという記述は見つけることができませんでした。この仕様はおそらく DOS の時から変わっていないと思われるのですが、DOS に関するドキュメントは今や MS のサイトにはないですからしょうがないですね。
The characters <, >, |, &, and ^ are special command shell characters, and they must be preceded by the escape character (^) or enclosed in quotation marks when used in
(for example, "StringContaining&Symbol").
ドラッグアンドドロップでフォルダ毎に zip アーカイブを作る bat
bat windowsフォルダをドラッグ&ドロップすると、zip にアーカイブしてくれるという bat ファイルを書いてみました。
複数のフォルダを一度にドラッグ&ドロップすると、フォルダ毎にアーカイブされるようになっています。
圧縮に 7-zip を使っているので、予めインストールしておいてください。
完成してみれば非常に簡単な bat ですが、パスにスペースが入っている場合を考慮するのが大変でした。
zip.bat
† 参考
アイコンを見るだけで NTFS が破損する問題については MS が修正へ
windowsパス名に $i30 が含まれているフォルダにアクセスするだけで NTFS が破損する脆弱性*1については、少し前から結構話題になっていましたが、近日中に修正されることになったようです。
問題の再現方法については調べれば簡単にわかりますが、本当にディスクが飛びますので、ちょっと試してみるみたいなことはやめておいた方が無難です。
アイコンを見るだけでディスクが破損するNTFSの脆弱性が修正へ - PC Watch
この脆弱性は、Windows 10 1803以降のバージョンにおいて文字列“$i30”を含んだコードがWindowsショートカットに含まれる場合に、そのショートカットを実行しなくてもドライブが破損するというもの。コマンドプロンプトのcdコマンドなどでコードを実行した場合はもちろん、Windows上でアイコンが見えた時点で、そのショートカットがZIPファイルの中に存在するだけでも発生する。
Windows 95 から 25 年
windows microsoftWindows 95 発売から 25 周年を迎えたことが MS のブログに取り上げられていたのでメモ。
当時はとにかくお祭り騒ぎ*1という感じでしたが、今考えてもやっぱりあれは異常でしたね。。。。
Looking back—The 25th Anniversary of Windows 95 | Windows Insider Blog
Windows 95 was launched on August 24, 1995, introducing us to many of the experiences our customers still use to interact with their PCs today such as the Start menu and Taskbar. Over the past 25 years, we have evolved these experiences, building on this rich history of innovation.
Sizer でウィンドウを特定のサイズぴったりに調整する
windows distancelearningSizer というウィンドウを特定サイズぴったりに調整するだけのユーリティを見つけたのでメモ。
Sizer 4.0 is latest version of the popular utility used to accurately resize and reposition windows.
このアプリが何の役に立つのかということなのですが、遠隔授業の配信用のコンテンツ作成に役立ちます。
例えば画面の操作をキャプチャしたものを、後でリサイズすると文字が読みづらくなってしまうという問題があるのですが、このユーティリティを使って、特定のアプリのウィンドウサイズを 720p とか 1080p のサイズにぴったり合わせておくとそういう悩みもなくなります。
2 . 年次の人間ドックへ(93798)
3 . 福岡銀がデマの投稿者への刑事告訴を検討中(93749)
4 . 三菱鉛筆がラミーを買収(93612)
5 . 2023 年分の確定申告完了!(1つめ)(93591)
- Academic[574]
- Book[155]
- Diary[522]
- Disaster[101]
- Foodlogue[1425]
- Game[284]
- Goods[805]
- Healthcare[341]
- Hobby[32]
- IT[1195]
- Military[343]
- misc.[1570]
- Mobile[510]
- Music[38]
- Neta[106]
- News[95]
- Photo[391]
- RealEstate[120]
- Security[1178]
- SEO Contest[36]
- Software[634]
- Tips[1886]
- Travelogue[1238]
- Web[675]
- Work[193]