sudo を使用してファイルに対して特定のアクティビティを実行すると、ファイルの所有権が変更されます。ファイル所有者を変更せずにsudoコマンドを使用するには?
サンプルファイルarchivevos35.shはApacheから取得されていますが、私はsedを使用します(usr admin sudoを使用)。
$ ls -l
-rwxr-xrw-. 1 apache apache 181 Aug 5 11:56 archivos35.sh
sudoを使用しているユーザーadmin
---
sudo sed -i s/old/new/g archivos35.sh
ただし、sudoでコマンドを実行すると、ファイルの所有者が変更されます。
$ ls -l
-rwxr-xrw-. 1 admin apache 181 Aug 5 11:56 archivos35.sh
ファイル所有者を変更するためにsudoでコマンドを使用しない方法は?所有者を変更せずにファイルを変更したいです。
ベストアンサー1
このファイルを変更する必要がある場合は、sudo
それを使用して正しいユーザーに切り替えます。あなたはしません必要ルートに切り替えます。これはデフォルト値にすぎません。したがって、お客様の場合は、次のことを行う必要があります。
sudo -iu apache sed -i 's/old/new/g' archivos35.sh
これにより、sed
ユーザーとしてコマンドが実行されますapache
。