私のファイル.bash_history
からいくつかの古い履歴を削除しようとしていますが、次のメッセージが表示されます。
[john ~] /home/john $ mv .bash_history .bas
mv: impossible to move `.bash_history' to `.bas': Operation not permited
ファイル/ディレクトリ権限が疑われます。
[john ~] /home/john $ ls -ld .bash_history .
drwxrwx--T+ 5 root john 4096 Out 11 19:45 .
-rw-r--r-- 1 john john 2977 Out 10 14:36 .bash_history
[john ~] /home/john $
次に、次のことを試してください。
[john ~] /home/john $ lsattr .bash*
-----a------- .bash_history
------------- .bash_logout
------------- .bash_profile
------------- .bashrc
[john ~] /home/john $
おそらくこのa
属性は何を意味しますか?
ベストアンサー1
このa
属性は、ファイルが追加専用であることを意味します。ファイルを上書きまたは削除できず、データのみを追加できます。これはchattr
マンページ。ルートのみこの属性を削除できます。
実際の結果は、古い歴史を消すことができないということです。これはシステム管理者のセキュリティ対策です。それは安全であると完全にはわかりませんが、特定のファイルの内容を削除する方法は思い出されません。 (ただし、履歴には表示されず、ファイルをバイパスしてコマンドを実行するのは簡単なので、有能なユーザーにとって特に有用なセキュリティ対策ではありません。確実な方法は、bash以外の場所でコマンドを実行することです)。