FTPリソースをローカルFSとしてマウントする

どういうわけか、ftpスペースでfindコマンドを実行したかったのですが、通常のftpサーバーではこれを実行できませんでしたが、解決策を見つけたいと思いました。



それでcurlftpfsが発見されました:



  $ aptitude show curlftpfs
パッケージ:curlftpfs
条件:インストール済み
自動インストール:いいえ
バージョン:0.9.2-1
優先度:オプション
セクション:utils
同伴者:Ding Honghui <hhding@vobile.cn>
開梱サイズ:111k
依存関係:libc6(> = 2.7-1)、libcurl3-gnutls(> = 7.16.2-1)、libfuse2(> = 2.6)、libglib2.0-0(> = 2.12.0)、fuse-utils
説明:FUSEおよびcURLに基​​づいてFTPホストにアクセスするためのファイルシステム
  CurlFtpFSは、FTPホストをローカルディレクトリとしてマウントするツールです。  FTPサーバーに接続し、そのディレクトリ構造をローカルファイルシステムにマップします。 
 
  FUSE(ユーザー空間のファイルシステム)とcURLライブラリに基づいて、CurlFtpFSは他のFTPファイルシステムと区別するいくつかの機能を備えています。 
  * SSLv3およびTLSv1のサポート 
  *トンネリングHTTPプロキシを介した接続 
  *サーバーがタイムアウトした場合の自動再接続 
  *絶対シンボリックリンクをFTPファイルシステムに戻す変換
ウェブサイト:http://curlftpfs.sourceforge.net 


このすばらしいツールを使用すると、ftpリソースでほとんどすべての操作を実行できます。



まず、パッケージをインストールします。



  $ sudo aptitude install curlftpfs 


次に、関心のあるftpリソースをマウントします。



  $ mkdir temp-ftpfs
 $ curlftpfs ftp:// $ USER:$ PASSWD @ $ HOST / temp-ftpfs
 $ cd temp-ftpfs
 $ ls
 $ find / -name '* .txt' 


すべてが非常に簡単です。



ただし、root権限でのみアンマウントできます。
  $ sudo umount curlftpfs#ftp:// $ USER:$ PASSWD @ $ HOST / 


次のようにアンマウントできます。



  $ fusermount -u temp-ftpfs 




PS :いくつかの追加を加えた無料の翻訳、 Debian Administrationの記事。

PS :私の意見では、sshfsを使用する方が便利ですが、sshを介したアクセスがない場合は、上記の方法が何かに対して機能します。



All Articles