Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxについて >> Linuxはどのように他のユーザーにファイルをコピーしますか?

Linuxはどのように他のユーザーにファイルをコピーしますか?

  
                

Linuxシステムでは、異なるユーザー間でファイルをコピーする方法を知らない人が多いため、実際には他のユーザーにファイルをコピーする方法は数多くあります。方法の種類は、一緒に学ぼう。

シナリオ:

file.txtはファイルfooは、ユーザーのホームディレクトリをバーにコピーしたいユーザのホームディレクトリの下にあります。 Linuxには、ユーザーのホームディレクトリに対する厳密な権限制限があり、所有者以外のユーザーまたはグループユーザーには、ルート(最高ルート)でない限り、読み取りまたは書き込みの権限はありません。 root権限がない場合、file.txtをbarユーザーのホームディレクトリにコピーする方法はありますか?

解決方法:

最初の方法は、最初にfoo userでログインし、ファイルをシステムの一時ディレクトリ/tmpにコピーし、次にbarユーザーに切り替えてから、システムの一時ディレクトリ/tmpから切り替えます。ファイルをホームディレクトリにコピーします。なぜここでmvなしでcpを使うのですか? /tmpのファイル所有者はまだfooなので、デフォルトでは他のユーザーは読み取り権限を持ち、書き込み権限はありません(当然、移動権限もありません)。ファイルのパーミッションを変更しても、barを書き込み可能にし、bar homeまたはfooのホームディレクトリに移動し、barに変更するにはrootになる必要があります。ファイルを2回コピーする必要があり、2倍の時間がかかります。

#cp file.txt /tmp /

#su - bar

#cp /tmp/file.txt〜/

#exit

#rm /tmp/file.txt

2番目の方法はscpコマンドを使用することです。オリジナルのscpは、ここで使用されている、異なるホスト上のネットワークを介してファイルをコピーするために使用されます。 barユーザーとしてログインします。

#scp foo @ localhost:/home/foo/file.txt /

ファイル転送を開始するためのfooユーザーパスワードを入力します。 fooユーザーとしてログインすることもできます。

#scp file.txt bar @ localhost:/home /bar /

barユーザーのパスワードを入力しても、プロセスは同じです。

上記はLinuxから他のユーザーにファイルをコピーする方法を説明したものですが、実際には2つの方法が紹介されていますが、他の方法でコピーすることもできます。

Copyright © Windowsの知識 All Rights Reserved