Just another IT site ※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。At Your Own Risk!! TURN BACK WHILE YOU CAN
PR

【実験】su – ユーザー名に続けて「&&」「;」でtouch ファイルをした時のオーナー

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。スクリプトはAI生成のものも多いのでコピー&ペーストの際は文字コードに注意ください!

「&&」と「;」いずれもユーザーオーナーにならない

「&&」と「;」いずれもユーザーオーナーにならない。つまり hogeユーザーでtouchは実行されていない

su - hoge && cd /home/hoge/work/ && touch a.txt
su - hoge ; cd /home/hoge/work/ ; touch b.txt

-rw-r--r-- 1 root  root   0 Oct 25 16:28 a.txt
-rw-r--r-- 1 root  root   0 Oct 25 16:28 b.txt


以下の様にsudoを使ったコマンドではユーザーオーナーになる。

sudo -u hoge touch /home/hoge/work/c.txt

-rw-r--r-- 1 root  root   0 Oct 25 16:28 a.txt
-rw-r--r-- 1 root  root   0 Oct 25 16:28 b.txt
-rw-r--r-- 1 hoge hoge  0 Oct 25 16:34 c.txt

suコマンドでsu後の権限でコマンドを実行するには「-c」オプションを使用する方法がある

su - -c "コマンド"

rootユーザーでいるときに、一般ユーザーにスイッチしてコマンドを実行する方法 – Mojolicious入門 – Perl Webフレームワーク

8.5.6 suコマンド(実行ユーザーの権限でプログラムを実行する) : JP1 Version 11 JP1/Advanced Shell 

タイトルとURLをコピーしました