ルートディレクトリ(/var/log/
)からホームディレクトリ(home/test/copyfromlogs/
)にいくつかのファイルをコピーし、その後、ルートディレクトリからそれらのファイルを削除します。
コピーしたいファイルは/var/log/
の下にあります。ルートディレクトリがいっぱいになっているので、そこから次のファイルを削除します。 。
btmp-20200401 >> 894M
; secure-20200322 >> 187M
; secure-20200329 >> 235M
; secure-20200405 >> 180M
; secure-20200412 >> 119M
home
の下にディレクトリを作成して、これらのファイルのバックアップを作成して、念のために必要なものを用意しました。新しいディレクトリの完全パスは「/ home/test/copyoflogfiles /」です。
私は新しい学習者です。聞きたい
次のコマンドが正しい場合、btmp-20200401
を/var/log
から/home/test/copyoflogfiles/
にコピーします。そうでない場合、正しいコマンドは何ですか
cp /var/log/btmp-20200401 /home/test/copyoflogfiles/
コピーコマンドを実行すると、現在のディレクトリは何になりますか?私が/home/test/copyoflogfiles/
の中にいるとします。その場合、コマンドは異なりますか?
ディレクトリから単一のファイルを削除するコマンドを教えてください。ファイルをコピーした後、ファイルbtmp-20200401
を/var/log/
から削除したい
敬具
質問1:コマンドは正しいです:
cp /var/log/btmp-20200401 /home/test/copyoflogfiles/
ファイルをコピーするためのファイルシステム権限がない場合は、Sudo
コマンドを使用して権限を昇格できます。次に例を示します。
Sudo cp /var/log/btmp-20200401 /home/test/copyoflogfiles/
質問2:
フルパスを使用している場合は、任意のディレクトリから他の任意のディレクトリにcp
コマンドを使用して、他の任意のディレクトリでそのコマンドを実行できます。
質問3:
rm /var/log/btmp-20200401
そのファイルを削除して、正しいファイルを要求するrm -i filename
を確実に使用できるようにします。
ただし、mv
の後にcp
を続けるのではなく、rm
コマンドを使用する方がよい場合があります。
したがって、コマンドは次のように変わります。
mv /var/log/btmp-20200401 /home/test/copyoflogfiles/
コピーではなくファイルを移動して削除します。
cp
、rm
、mv
などのコマンドを実行した後-現在の作業ディレクトリは変更されません。ここ はいくつかの便利なコマンドです
また、権限(ユーザー、グループ、世界)と所有権にも注意してください。そのため、1つの回答でcp
だけではなくSudo cp
を使用します。/var/logの下のファイルは、rootのみが読み取り可能である可能性が高いです。その場合、Sudo cp
も権限をコピーし、所有権をrootユーザーに設定します。したがって、/ var/log内のファイルは、ユーザーApache、アクセス権600のグループApache(所有者だけが読み取り可能で、グループおよび他のユーザーは読み取り不可)が所有し、最終的にrootが所有し、rootのみが読み取り可能です。ユーザーディレクトリ。
したがって、ls -l
を使用してターゲットディレクトリの所有権を確認し、Sudo chown
and /またはSudo chmod
を使用して修正します。これによりセキュリティリスクが生じ、異なる所有者のフォルダに異なる権限を持つログファイルが公開されます。適切にアーカイブまたは削除することを検討してください。