bashの機能を制限するには

 Linux(bash)の操作に詳しくない人や部外者などにアプリケーションの操作を依頼する場合などは、シェルの機能を制限しておくと安心だ。

 bashの起動時に-rオプションを指定すると、bashの機能が制限された状態になる。

$ bash -r

 この状態では、以下のような作業ができなくなる(ここに挙げている制限は一部。詳細はbashのmanページを参照)。

 制限モードでは、以下のようにcdコマンドなどを実行してもエラーになる。

$ cd ..
bash: cd: restricted

 ただし、この方法だとexitコマンドは実行可能であるし、PATHなどもデフォルトの設定を引き継いでいるので、あまり適切とはいえない。例えば、

$ cat /etc/passwd

といったコマンドも実行できてしまう。より完ぺきを期すなら、専用のユーザーIDを設けて特別な環境を構築した方がいいだろう(特定のコマンドしか実行できないユーザーIDを作成するには参照)。