ルートが所有するファイルを編集できないのに、ホームディレクトリのどこかに次のようなものが表示されるのはなぜですか?
sudoedit: existingFile: editing files in a writable directory is not permitted
次の関数を定義しましたが:
function sunano {
export SUDO_EDITOR='/usr/local/bin/nano'
sudoedit "$@"
}
私は次のように編集します。
sunano existingFile
ファイルは実際にはルートが所有しています。
ls -l existingFile
証明する:
-rwxr-xr-x 1 root root 40 Jun 15 2015 existingFile
ベストアンサー1
これマンページ説明する
ユーザーが書き込むことができるディレクトリにあるファイルは、そのユーザーがroot(バージョン1.8.16以降)でない限り編集できません。
ファイルが含まれているディレクトリに書き込むことができれば、実際に編集できますsudoedit
(現在の内容を読むことはできませんが)。そのファイルを別の場所に移動して、同じ名前の新しいファイルを作成できます。 。特別な場合はファイルを読み取ることができ、少なくとも一部の編集者は編集を許可します(少なくとも一時ファイルを作成して名前を変更してファイルを保存する編集者)。
この機能の理由は次のとおりです。sudo
エラー707:デフォルトでは、ユーザーが書き込み可能なディレクトリでファイルを編集できるようにすることで、設定に設定されているsudoedit
制限をバイパスできますsudoedit
(システム内のすべてのファイルを効果的に編集できます)。