パテを使用して必要な権限を持つローカルコンピュータからリモートサーバーにファイルを転送する方法

パテを使用して必要な権限を持つローカルコンピュータからリモートサーバーにファイルを転送する方法

パテを使用して大容量ファイルをリモートサーバーに転送しようとしています。ファイルの転送中に(ファイルが大きく、転送に時間がかかるため)、権限はデフォルトの読み取り専用(rw-r----)に設定されます。

ファイル転送中(ファイルの転送中)にファイルの権限を設定する必要があります。パテでどうすればいいですか?誰でも提案をしてください。

私はLinuxコマンドを初めて使用します。私が従うことができるいくつかの構文を提供できますか?

答え1

私の考えではこの回答これがあなたが探しているものです。

説明を追加できるようにここに貼り付けます。

rsync次の方法で資金を振り替えることができます。

rsync --chmod=u+rwx,g+rwx,o+rx file.txt user@host:abc/

これにより、ファイルがホーム内のディレクトリに移動され、file.txt指定された権限も設定されます。ホームディレクトリ内のパスの代わりに絶対パスを設定する必要がある場合は、先行スラッシュを含むフルパスを作成します(例:)。abcuserhostuseruser@host:/abs/path/

を使用する場合は、scp転送後に権限を設定できます。

scp file.txt user@host:abc/
ssh user@host 'chmod 755 abc/file.txt'

これは前の手順と同じですが、最初にアップロードして権限を変更する2つのコマンドに分けられます。アップロードと同様に、1つのコマンドのみを使用して処理するように依頼しましたが、他の人に役立つ追加のオプションがあると思いました。

答え2

実際のPuTTYアプリケーションは端末エミュレータであり、ファイル自体を転送しません。ただし、ファイル転送コマンドがpsftp付属しています。pscp

残念ながら、ファイル権限設定は許可されてpsftpいません。pscpしかし、ファイル転送中です。オプションはファイルタイムスタンプを-p保持pscpしますが、権限は保存しません。を使用している場合、psftpファイル転送コマンドにリモート権限を指定するオプションはputありませんが、転送が完了した後に別のコマンドを使用してファイル権限を設定できます。mputchmodchmodコマンドの詳細については、PuTTYのマニュアルの6.2.14章を参照してくださいpsftp

ファイルが転送されるとすぐに自動的に処理する機能がある場合は、psftpまず次のいずれかの方法でファイルを転送する必要があります。

  • 別のディレクトリへ
  • または一時ファイル名いいえオートメーションが探しているものと一致

転送が完了したら、権限設定を使用しchmod、最後にmvコマンドを使用してファイルをオートメーションで使用するディレクトリに移動するか、ファイル名を実際の意図した名前に変更します。

(POSIX準拠のUnixスタイルのファイルシステムでは、単一のファイルシステム内でファイルを移動または名前を変更するすべての操作は、次のようにする必要があります。原子的演算つまり、他のプロセスはファイル操作を「まだ完了していない」または「完全に完了しました」として扱いますが、いかなる方法でも「進行中」として処理しません。このプロパティは、ファイルが完全に転送され、アクセスを許可する権限を持つまで自動化が期待するファイルを表示できないようにするためにここで使用されます。 )

また、このプロセスは、自動化がまだ転送中であるか、転送中にネットワーク接続が失敗したために不完全なファイルをキャプチャしないようにするのにも役立ちます。

たとえば、次のスクリプトを作成できます。 (例filetransfer.scr:)

cd /some/directory
mkdir incomplete_xfer
cd incomplete_xfer
put file.txt
chmod a+rw file.txt 
mv file.txt ..
cd ..
rmdir incomplete_xfer

次に実行します。

psftp remoteuser@remotehost -b filetransfer.scr

または、リモート側で*.xmlファイルを予想し、他のサフィックスがあるファイルに反応しないことがわかっている場合は、次のこともできます。 (代替filetransfer.scr

cd /some/directory
put file.xml file_tmp_incomplete_xfer
chmod a+rw file_tmp_incomplete_xfer
mv file_tmp_incomplete_xfer file.xml

関連情報