
一般的に、分散ファイル システム (例: samba、NFS、または推奨されるもの) を介して提供されるリモート ファイル上でローカル プログラムを実行したいと考えており、ローカル ファイルにアクセスするのと同様の方法、つまり「位置の透過性」に似た方法でリモート ファイルにアクセスしたいと考えています。
私は、リモート ファイルをローカル ファイルのように表示し、ローカル ファイルでプログラムを実行するのと同じように右クリックしてローカル プログラムを実行できるファイル マネージャー pcmanfm に驚きました。
CLI シェルでも同じことをやりたいです。
たとえば、sharesmb
リモート samba デーモンを介して共有されているリモート ディレクトリにファイルをコピーしようとしています。ファイル マネージャーでpcmanfm
、アドレスを使用して実行できsmb://olive.local/sharesmb on olive.local
ます。シェルで同じことを実行したいのですが、リンクが機能しません。シェルでこれを行う方法を教えてください。
$ cp 153-158.pdf smb://olive.local/sharesmb on olive.local
cp: target 'olive.local' is not a directory
$ cp 153-158.pdf smb://olive.local/'sharesmb on olive.local'
cp: cannot create regular file 'smb://olive.local/sharesmb on olive.local': No such file or directory
ありがとう。
答え1
一般的に言えば、リモート ファイル システムをローカル ディレクトリにマウントし、そのマウントポイントを介してファイルを操作します。Unix のような環境では、これは文字通り、ローカル ファイルと同じようにリモート ファイルにアクセスすることを意味します。
ただし、何をしたいかに応じて複数のオプションがあります。真夜中の司令官(mc) は、pcmanfm の説明と同様に動作します。マシン間でファイルをコピーするだけの場合は、scp
リモート ホストが sshd (しばらく前から Windows Server 2019 でも利用可能) を実行していることを前提として、コマンドを確認することをお勧めします。
答え2
sshfs を使用します:
sshfs [email protected]:/path/to/remote/folder /path/to/mountpoint/