bashrcの設定
私はFedora8をメインに使用しているが、Ubuntu式のrootユーザーを使わず、sudoで済ませる方法が手軽で気に入っている。この方法で行くには、一般ユーザーでも/sbinや/usr/sbinにPATHを通す事と、一部のコマンド(pm-suspend、pm-hibernate等)を使うときに通常のFedoraの使い方と齟齬が出ないように、ユーザー権限で実行するときには/usr/sbinより/usr/binを優先するように設定する必要がある。
また、端末に表示されるプロンプトは環境変数PS1で設定するが、通常は緑、sudo -sでroot権限を得ているときは赤で表示している。
これらのために${HOME}/.bashrcを以下のようにしている。
# .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # User specific aliases and functions #PS1="\[\e[32m\][\w]\n\\$\[\e[0m\] " #デフォルトの設定をコメントアウト if [ -w / ] ; then #ルートに書き込み権限があるかでプロンプトの表示色を判断。whoamiを使っても良さそう。 PS1='\[\e[1;31m\][\w]#\[\e[0m\] ' PATH=$HOME/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin else PS1='\[\e[32m\][\w]$\[\e[0m\] ' PATH=$HOME/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/sbin:/usr/sbin fi
${HOME}/.bash_profileは非対話モードでも/usr/sbin等にPATHを通すために以下のように変更する。(何か読んでないみたいと思ってこれを削除したら、Fluxboxのメニューからコマンド実行出来なくなりました。)
# .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs export PATH=$HOME/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/sbin:/usr/sbin unset USERNAME
これで実際のプロンプトは以下の様になる。いまさらだが、このブログの記述はこれをベースにしている。
[~/bin]$ []sudo -s[] [~/bin]#参考:Bash Prompt HOWTO