DSEFSコマンドライン・ツール
DSEファイル・システム(DSEFS)のオプションとコマンド引数。
DSEFSの機能では、ファイルのアップロード、ダウンロード、移動、および削除、ディレクトリーの作成、DSEFSステータスの確認などの操作がサポートされています。
DSEFSコマンドは論理データ・センターでのみ使用できます。DSEFSではセキュアなクラスターとセキュアでないクラスターのどちらも使用できます。「DSEFS認証」を参照してください。
DSEFSファイル・システムとは、対話型コマンドライン・シェル、dseコマンドの一部、REST APIなど複数のモードで対話できます。
対話型DSEFSコマンドライン・シェル
アクション | コマンドライン |
---|---|
DSEFSシェルを起動する | $ dse fs dsefs / >DSEFSプロンプトに、DSEFS上の現在の作業ディレクトリーが表示されます。DSEFSを起動する現在のローカル作業ディレクトリーは、ローカル・ファイルを検索するために使用されるデフォルトのディレクトリーです。 |
指定したホストを優先してDSEFSシェルを起動する |
dse fs --prefer-contact-points -h 10.0.0.2,10.0.0.5 DSEFSコマンドを発行する際に、
|
DSEFSコマンド・リスト全体を表示する |
dsefs / > help |
DSEFSコマンドのヘルプを表示する |
dsefs / > help dsefs_command |
DSEFSシェル・コマンドにコメントを追加する | # 文字を使用します。# 文字の後ろのコメントはすべて無視されます。dsefs / > get archive.tgz local_archive.tgz #retrieve the archive |
DSEFSシェルを終了する | Ctrl+Dキーを押すか、「exit」と入力します。 |
DSEFSシェルのロギングの構成
DSEFSシェル・ログ・ファイル.dsefs-shell.logのデフォルトの場所は、ユーザーのホーム・ディレクトリーです。デフォルトのログ・レベルはINFOです。DSEFSシェルのロギングを構成するには、installation_location/resources/dse/conf/logback-dsefs-shell.xmlファイルを編集します。
dseコマンドラインでの使用
dse
を付けます。$ dse [dse_auth_credentials] fs dsefs_command [options]
$ dse -u user1 -p mypassword fs df -h
任意指定のコマンド引数は、角かっこで囲まれています。たとえば、[dse_auth_credentials]や[-R]などです。
変数値はイタリック体になっています。たとえば、directoryや[subcommand]などです。
DSEFSシェルでローカル・ファイル・システムを使用する
パスにfile:
というプレフィックスを付けることで、ローカル・ファイル・システム内のファイルを参照できます。たとえば、以下のコマンドを実行すると、システム・ルート・ディレクトリー内のファイルがリストされます。
dsefs dsefs://127.0.0.1:5598/ > ls file:/ bin cdrom dev home lib32 lost+found mnt proc run srv tmp var initrd.img.old vmlinuz.old boot data etc lib lib64 media opt root sbin sys usr initrd.img vmlinuz
ローカル・ファイル・システムで多くの後続の操作を実行する場合は、まず現在の作業ディレクトリーをfile:
または任意のローカル・ファイル・システム・パスに変更します。
dsefs dsefs://127.0.0.1:5598/ > cd file: dsefs file:/home/user1/path/to/local/files > ls conf src target build.sbt dsefs file:/home/user1/path/to/local/files > cd .. dsefs file:/home/user1/path/to/local >
DSEFSシェルは、各ファイル・システムの最後の作業ディレクトリーを個別に記憶します。前のDSEFSディレクトリーに戻るには、以下のように入力します。
dsefs file:/home/user1/path/to/local/files > cd dsefs: dsefs dsefs://127.0.0.1:5598/ >
前のローカル・ディレクトリーに戻るには、以下のように入力します。
dsefs dsefs://127.0.0.1:5598/ > cd file: dsefs file:/home/user1/path/to/local/files >
ファイル・システムの最後の作業ディレクトリーに対する相対パスを参照するには、相対パスにdsefs:
またはfile:
のプレフィックスを付けます。次のセッションで、ディレクトリー/home/user1
内にディレクトリーnew_directory
が作成されます。
dsefs dsefs://127.0.0.1:5598/ > cd file:/home/user1 dsefs file:/home/user1 > cd dsefs: dsefs dsefs://127.0.0.1:5598/ > mkdir file:new_directory dsefs dsefs://127.0.0.1:5598/ > realpath file:new_directory file:/home/user1/new_directory dsefs dsefs://127.0.0.1:5598/ > stat file:new_directory DIRECTORY file:/home/user1/new_directory: Owner user1 Group user1 Permission rwxr-xr-x Created 2017-01-15 13:10:06+0200 Modified 2017-01-15 13:10:06+0200 Accessed 2017-01-15 13:10:06+0200 Size 4096
2つの異なるファイル・システム間でファイルをコピーするには、パス内でファイル・システムのプレフィックスを明示的に指定してcp
コマンドを使用することもできます。
dsefs file:/home/user1/test > cp dsefs:archive.tgz another-archive-copy.tgz dsefs file:/home/user1/test > ls another-archive-copy.tgz archive-copy.tgz archive.tgz
認証
$ dse dse_auth_credentials
の場合、複数の方法でユーザー認証情報を指定できます。「認証対応クラスターへの接続」を参照してください。DSEFSを使用した認証については、「DSEFS認証」を参照してください。
複数のコマンドの実行
DSEFSは、1行で複数のコマンドを実行できます。コマンドと引数を引用符で囲みます。各コマンドがDSEFSによって個別に実行されます。
dse fs 'cat file1 file2 file3 file4' 'ls dir1'
DSEFSコマンドのオプション
DSEFSコマンド | 説明とコマンド引数 |
---|---|
append source destination |
ローカル・ファイルをリモート・ファイルに追加書き込みします。
|
cat file_or_files |
ファイルを連結して、標準出力で出力します。
|
cd directory |
DSEFSのリモート作業ディレクトリーを変更します。
|
chgrp group path |
ファイルまたはディレクトリーのグループの所有権を変更します。
|
chmod octal permission mode path |
ファイルまたはディレクトリーのパーミッションを変更します。
|
chown [options] path |
ファイルまたはディレクトリーの所有権やグループの所有権を変更します。
|
cp [options] source destination |
1つのファイル・システム内または2つのファイル・システム間でファイルをコピーします。コピー先のパスがDSEFSとは異なるファイル・システムを指している場合、ブロックのサイズと冗長性のオプションは無視されます。
|
df [options] |
DSEFSファイル・システムのステータスとディスク領域の使用量をリストします。
|
exit |
DSEFSシェル・クライアントを終了します。Ctrl+Dキーを押してシェルを終了することもできます。 |
fsck |
ファイル・システム整合性チェックを実行して、ファイル・システム・エラーをリペアします。 |
get source destination |
DSEFSリモート・ファイル・システムからファイルを取得し、そのファイルをローカル・ファイル・システムにコピーします。
|
ls [options] [file_system_entry_or_entries] |
現在の作業ディレクトリーのDSEFSファイル・システム・エントリー(ファイルまたはディレクトリー)をリストします。
|
mkdir [options] dir_or_dirs |
1つまたは複数の新しいディレクトリーを作成します。
|
mv source destination |
ファイルまたはディレクトリーを移動するか、名前を変更します。
|
put [options] source destination |
ローカル・ファイルをDSEFSにコピーします。
|
pwd [path] |
現在のファイル・システムまたは指定されたパスの作業ディレクトリーを出力します。
|
realpath [options] path |
指定されたファイルまたはディレクトリーの解決済みの絶対パスを出力します。
|
rename path name |
現在の場所にあるファイルまたはディレクトリーの名前を変更します。
|
rm [-r] path |
ファイルまたはディレクトリーを削除します。
|
rmdir path |
1つまたは複数の空のディレクトリーを削除します。
|
stat file_or_dir [-v] |
ファイル・システム・エントリーのステータスを表示します。
|
truncate file |
ファイルを0バイトにTRUNCATEします。ファイルのメタデータを保持する場合に便利です。
|
umount [-f] locations |
ファイル・システム・ストレージの場所をマウント解除します。
|
DSEFSノードの削除
DSEクラスターからDSEFSを実行中のノードを削除する場合、DSEFSデータ・セット内の適切な正確さを確保するために追加の手順が必要です。
- 削除するノードと同じデータ・センターのノードから、DSEFSシェルを起動します。
$ dse fs
df
コマンドを使用して現在のDSEFSノードを表示します。dsefs > df
Location Status DC Rack Host Address Port Directory Used Free Reserved 144e587c-11b1-4d74-80f7-dc5e0c744aca up GraphAnalytics rack1 node1.example.com 10.200.179.38 5598 /var/lib/dsefs/data 0 29289783296 5368709120 98ca0435-fb36-4344-b5b1-8d776d35c7d6 up GraphAnalytics rack1 node2.example.com 10.200.179.39 5598 /var/lib/dsefs/data 0 29302099968 5368709120
- リストで削除するノードを探し、LocationカラムにあるそのノードのUUID値を書き留めます。
- ノードが稼働している場合は、コマンド
umount UUID
を使用してDSEFSからそのノードをマウント解除します。 - ノードが稼働していない場合は(ハードウェア障害の後など)、コマンド
umount -f UUID
を使用してDSEFSから強制的にそのノードをマウント解除します。 - ノードの削除の通常の手順を続行します。
例
dsefs / > ls -l dsefs / > put file:/bluefile greenfileDSEFSディレクトリー内の新しいファイルを表示するには、以下のように入力します。
dsefs / > ls -l Type Permission Owner Group Length Modified Name file rwxrwxrwx none none 17 2016-05-11 09:34:26+0000 greenfile
$ dse fs "mkdir /test2" $ dse fs "put README.md /test2/README.md"新しいディレクトリー・リストを表示するには、以下のように入力します。
$ dse fs "ls -l /test2" Type Permission Owner Group Length Modified Name file rwxrwxrwx none none 3382 2016-03-07 23:20:34+0000 README.md
$ dse fs "mkdir / test2" "put README.md /test/README.md"