apache ユーザーで bash を起動する
apache ユーザーなど /sbin/nologin のユーザーでは suは出来ない。
[takuya@ki data]$ sudo su apache This account is currently not available.
/etc/passwdを見てみる
するとログインできなくなっている。
apache:x:48:48:Apache:/var/www:/sbin/nologin
無理矢理にログインしてみる
要は、このユーザーでbashを起動すればいいのだから、こんな事ができる。
[takuya@ki data]$ sudo su -s /bin/bash apache bash-4.1$ id uid=48(apache) gid=48(apache) groups=48(apache)
sudo su するくらいなら sudo だけでもできる。
[takuya@ki data]$ sudo -u apache /bin/bash bash-4.1$ id uid=48(apache) gid=48(apache) groups=48(apache)
シェルを起動することはできる。
できるけど、あまり勧められた方法ではない。
連続してコマンドを起動しない限りは、シェルスクリプトファイルをつくってやりたいことを1つにまとめて起動するほうがいいと思う
sudo -u apache /path/to/script