問題タブ [apache-commons-vfs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Apache commons sftp - ユーザーのホームディレクトリの上に移動
次の規則を使用するサーバーがあります。
ユーザーがログインすると、それぞれの/pathA/Users/user/
ディレクトリに移動しますが、時々アクセスする必要があります/pathB/data/
。sftp を使用して、ユーザーがサーバーのコンテンツを閲覧できるブラウザを作成したいと考えています (アプリケーションにプラグインするだけの Java ツールがあれば幸いですが、すべての要件に一致するものは見つかりませんでした)。 . 私が抱えている問題はapache-commons-vfs
、フォームの文字列を受け入れることです
それを使用してユーザーディレクトリにログインし、そのディレクトリをルートとして扱います。getParent()
その結果、対応するreturn を呼び出して、そのディレクトリを超えることができなくなりFileObject
ますnull
。ターミナル経由で sftp を使用してユーザーのホームディレクトリを超えることができることはわかっているので、これはapache-commons-vfs
ライブラリによって課せられた制限であると思います。サーバー全体をブラウジングできるように、その問題を回避できるかどうかを知っている人はいますか?
java - Java で VFS 経由でリモート フォルダのアクセス許可を設定する方法はありますか?
XML と ZIP ファイルを作成し、SFTP 経由でサーバーにアップロードします。フォルダ構造は次のようになります。
<hash>
XML と ZIP の両方をアップロードするとフォルダーが作成され、このフォルダーに権限が必要777
です。
私が知る限り、Java 内の VFS を介して既に作成されたフォルダーのアクセス許可を変更する方法はありません。私が試したのは、そのフォルダーをローカルに作成し、それを提供777
して、XML と ZIP を入れてアップロードすることでした。
私のコードは次のようになります。
このコードを実行すると、ディレクトリではなく XML と ZIP がアップロードされるため、SFTP サーバーの構造は次のようになります。
そこにアクセス許可のあるフォルダーを取得するにはどうすればよい777
ですか?
java - Apache VFS インメモリ
sftp にアクセスする方法として VFS を見つけました。動作しているように見えますが、すべての例はローカル ファイルを想定しています。代わりに、メモリにデータがあります。メソッドcopyFrom(FileObject)のみが表示され、ストリームまたはバッファーを受け入れるオーバーロードはありません...したがって、ほぼ正しいように聞こえるのでramを試しました(一部のドキュメントは害はありませんが、罰金はありません)。次のテストは成功します. sftp FileObject へのコピーも機能しました。
質問。次の出力が得られます: INFO: Using "C:\Users\myname\AppData\Local\Temp\vfs_cache" as temporary files store.
-- 実際に一時ファイルを書き込んでいますか?? それは私が避けようとしていたことです (これが実行される Unix サーバーでパーミッション/同時実行性の問題が発生する可能性があるため)。もしそうなら、どうすれば完全にメモリ内で行うことができますか?
java - Commons VFSをラップするjava.nio.FileSystemの実装?
FTP、HTTP、SFTP、Zip ファイル、または単にローカル ファイル システムなど、さまざまな への接続を許可するApache Commons VFSが存在することは知っています。FileSystem
FileSystem
いくつかの検索 (ほとんどは Google および VFS サイトで) で何も結果が得られなかった後、java.nio.FileSystem
VFS をラップする実装があったのではないかと考えています。
私の使用例は次のとおりです。ファイルの内容を読み取るか、ディレクトリの内容を一覧表示して、この内容で何かを行う必要がある個人的なプロジェクトがあります (インデックス作成など)。
私は現在java.nio.Path
、読んでいるファイルのパスを表すために使用していますが、後でSSH接続で機能する機能を追加したいと思います(これは「今」必要ありませんが、質問はまだ興味があります)。
java - Javaを使用してリモートLinuxマシンのディスク容量を見つける方法
Java プログラムを使用して削除マシンの合計ディスク容量と使用可能な容量を見つけるための簡単なソリューションを探しています。
助けてください
更新 主にローカルマシンに焦点を当てた、これに似た質問がすでにあります。リモートマシンのソリューションを探していました。
java - Java SFTP (apache vfs2) - @ 付きのパスワード
org.apache.commons.vfs2 を使用して、SFTP 経由でファイルをダウンロードしようとしています。問題は、パスワードに「@」文字が含まれているため、URI が正しく解析されないことです。
この問題を回避する方法を知っている人はいますか? (もちろん、パスワードを変更することはできません)。これは私が使用しているコードです:
java - Commons VFS : Open SSH で実行されている Windows Server に接続する際の SFTP URL 構文
異なるサーバー間のファイル転送に Commons VFS API を使用しています。コードは、Linux サーバーで完全に機能します。
しかし、Windows サーバーの URL 構文の問題が発生しています。以下の URL タイプのリストを試しましたが、いずれもInvalid Absolute URI Errorという結果になりました。
sftp://ユーザー@IP:C:\temp
sftp://ユーザー@IP/C:\temp
sftp://ユーザー@IP\C:\temp
stfp://user@IP/temp -- ファイルの種類を特定できませんでした
これらのエラーはすべて、VFS が SFTP を介した Windows ファイル システムへの接続をサポートしているかどうかについて、私たちの心に新たな疑問を抱かせました。
この点で何か助けていただければ幸いです。
java - Apache VFS sftp - 複数のセッションまたはチャネルを作成する複数のファイルオブジェクトを取得していますか?
次のコードを検討してください。
Jsch の基礎となるレベルで、2 つの別個のセッションが作成されましたか、それとも 1 つのセッションと 2 つのチャネルが作成されましたか?