2 Intern
•
356 メッセージ
0
47
PowerScaleの共有上でハードリンクは作成する方法はありますか?
PowerScaleに、SMB共有を作成し、その共有上に、クライアント(Windows PC)から
ハードリンクを作成する方法はありますか?
Web検索すると、
mklink /H ハードリンクのファイル名 元データのファイル名
でWindowsOSのハードリンクは作成できると書かれて例ますが、
これはクライアントのローカルドライブのみで、SMB共有のドライブでは
使えないようです。
他のコマンドや、方法はありますでしょうか?
クライアントから出来ない場合は、PowerScaleにrootアカウントなどでログインして、ハードリンクを作成するしかないのでしょうか?
Go.Y
2 Intern
2 Intern
•
295 メッセージ
0
2024年6月20日 03:15
まず大前提としてハードリンクは同一ボリューム内の1つのファイルを複数のパスから参照するものです。
Windows上ではローカルドライブのみが対象となります。
https://learn.microsoft.com/ja-jp/windows/win32/fileio/hard-links-and-junctions
クライアントから共有パスに対してハードリンクを作りたい理由は何でしょうか。
Powerscale上でroot権限で、共有を設定しているパスにハードリンクをPowerscale内で作成することは可能と考えられますが、windowsのクライアント上のローカルパスに対して作ることはできません。
Powerscaleの場合、別名で同一パスに対して共有を作成することは可能ですので、同一パスに対して異なる共有名でアクセスしたいということであれば、該当パスに対して新たな共有を追加作成するのはいかがでしょうか。
ご参考まで。
uchiy
2 Intern
2 Intern
•
356 メッセージ
0
2024年6月20日 04:21
@Go.Y さん
クライアントからハードリンクを作成したい理由は、クラスタを利用しているユーザ自身が作成できるようにしたいためです。
以下の2点の条件を同時に満たす方法は無いか探しており、この条件にあう機能がハードリンクの機能でした。
1.別のディレクトリに同じファイルをコピーしたい場合、ハードリンクを作成すると、実データをコピーしない分早くコピーが完了すること。
※1つのファイル容量が大きく、すぐにコピーが完了する方法が欲しい。
2.元のファイル名を削除しても、ハードリンク側のファイル名を削除しない限り実データがそのまま利用できること。
管理者(root)権限を使えば、確かにハードリンクは作成できますが、ユーザにroot権限は開放できないので。
ハードリンクを作成するためだけのローカルユーザを作成するというのもありかもしれませんが。。
Go.Y
2 Intern
2 Intern
•
295 メッセージ
0
2024年6月20日 05:57
OneFSv9.3以降かつSnapshotIQのライセンスがないと利用できませんが、WriteableSnapshotの機能の利用で1と2の条件はある程度満たせるような気がします。細かい説明は省略しますが以下が参考になるかと。
https://www.dell.com/community/ja/conversations/%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8-wiki/%E3%82%B9%E3%83%8A%E3%83%83%E3%83%97%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%E6%9B%B8%E3%81%91%E3%82%8B%E6%9B%B8%E3%81%91%E3%81%AA%E3%81%84%E5%95%8F%E9%A1%8C%E7%B5%82%E7%B5%90/647f98e9f4ccf8a8dec17819
uchiy
2 Intern
2 Intern
•
356 メッセージ
0
2024年6月20日 06:25
@Go.Y さん
今回実施したいことは、
/directoryA/directory/
の直下にあるfileを
/directoryB/directory/
の直下にコピーしたいというもの。
ファイルは100GB以上の容量のものであるため、普通にコピーすると、
時間がかかるが、出来るだけ短時間でコピーしたい。
最終的には、/directoryA/directory/直下にあるファイルを削除しても、
/directoryB/directory/直下にコピーしたファイルは利用可能なままにしたい。
ここで重要な条件は、短時間でコピーしたいという点。
この条件をライタブルスナップショットでどうやって実現できるのか、イメージがつきません。
ちなみに、/directoryA/directory/も/directoryB/directory/も事前に準備作成されているディレクトリです。
Go.Y
2 Intern
2 Intern
•
295 メッセージ
0
2024年6月20日 07:33
事前に準備されているディレクトリでなければいけないということであればちょっと違うのかもしれませんね。私が使えるかなと思ったのは以下の図の部分です。
「Writable Snapshotは、ベースとなるスナップショットが必要となります。例えば、本番環境で/ifs/prodというディレクトリがあり、そのディレクトリのWritable Snapshotを作成したい場合は、まず/ifs/prodのスナップショット(図中のSnap_prod_1)を取得します。そのスナップショットをベースにWritable Snapshotを作成するのですが、その際に指定した任意のディレクトリ(図中の/ifs/wsnap)に紐付けます。Writable Snapshotは通常のディレクトリと同じようにアクセスして利用でき、利用ユーザがアクセスする分には、通常のディレクトリとWritable Snapshotの区別は付きません。」
Writeable snapshot以外ですと、コピーを短時間でするには以下のような案もありかと思われます。
1)SMB領域であればrobocopy(win2019以降推奨)+server side copyの機能の活用
注意 server side copyの機能を利用するにはContiuousAvailability機能がoffになっている必要があります。
また、同一SMBセッションである必要がありますので、ソースターゲット共に同一IPを指定する必要がある 点にご注意ください。
2)NFSであればNFSv4.1を活用
ご参考まで。
(編集済)