apacheユーザーでログインする
プログラムの動作確認でapacheユーザーになる必要があったのでその時のメモ。
確認
suコマンドでapacheユーザーに切り替えれるか試してみます。
[root@hostname /]#
su - apache
This account is currently not available.
「利用できない」とメッセージが表示される。
次に、apacheユーザーのログイン時の処理を確認してみます。
[root@hostname /]#
grep apache /etc/passwd
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
passwdファイルは、以下のように構成されています。
apache :x :48 :48 :Apache :/usr/share/httpd:/sbin/nologin
ユーザー名:パスワード:ユーザーID:グループID:コメント:ホームディレクトリ:ログインシェル
apacheユーザーでのログインは、「/sbin/nologin」と記載されており、ログインは出来ないようです。
対応
suコマンドに「-s」オプションを指定すると、ユーザー切り替え時に使用するシェルを指定することが出来ます。これを利用してログインシェルを一時的に「/sbin/nologin」シェルからbashシェルへ変更してログインを試みます。
[root@hostname /]# su -s /bin/bash apache bash-4.2$
プロンプトの表示が「bash-4.2$」に変わりました。
apacheユーザーに切り替わったのかを確認するためにユーザー情報を確認します。
bash-4.2$
id
uid=48(apache) gid=48(apache) groups=48(apache)
これでログアウトするまでは、apacheユーザーで作業が出来そうです。
ディスカッション
コメント一覧
まだ、コメントがありません