FreeBSD QandA 603

FreeBSD QandA

Q. ログイン画面からシャットダウンできるように設定したい。

A. 誰もログインしていないとき shutdown アカウントでログインすると、自
   動的にシャットダウンする例を以下に説明します。

   root になります。
   vipw コマンドで以下の行を追加します。
   ----------- ここから ---------
   shutdown:*:0:1::0:0:Shutdown Account:/:/usr/local/shutdown/shutdown.sh
   ----------- ここまで ---------

   パスワードを設定します。
   # passwd -l shutdown

   /usr/local/shutdown/shutdown.sh を次の内容で作成します。
   ----------- ここから ---------
   #!/bin/sh
   num=`who |wc -l`
   if [ $num = "1" ]
   then
     /sbin/halt
     exit 0
   else
     echo '****************************************************************'
     echo 'ERROR: You can not SHUTDOWN, because anyone below is working now.'
     echo '****************************************************************'
     who
     exit 1
   fi
   ----------- ここまで ---------

   上記シェルスクリプトに実行パーミションを設定します。
   # chmod 544 /usr/local/shutdown/shutdown.sh

間違い・追加情報を見付けた場合は、 修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで お知らせください。