Synology DS412 +を使用していますNAS Busyboxを実行するボックスで、デフォルトのシェルはash
です。以前はipkg install optware-devel
が実行され、bash
がインストールされ、デフォルトのシェルとして設定されました。ランニング ipkg install zsh
はzsh
をインストールしましたが、デフォルトのシェルとして設定していません。 chsh
が存在しない(Busyboxはカットダウンシステムを想定し、ash
のみが使用される)ので、デフォルトのシェルを設定するにはどうすればよいですか?
私はどんな助けや洞察にも感謝します。
/etc/passwd
を編集して、ログインシェルを変更できます。各行はコロンで区切られた値のリストであり、その最後はログインシェルです。
user:x:1000:1000:User:/home/user:/usr/bin/zsh
/etc/shells
が存在する場合は、それにzsh(フルパス)を追加する必要があります。追加しないと、一部のサービスがユーザーに対して機能しない場合があります。
注:
zsh
がいずれかのディスクにインストールされている場合は、root(または管理目的で必要なユーザー)のログインシェルを変更しないことをお勧めします。ディスクがインストールされていなくてもrootアクセスが必要な場合があります。
いつでもashのユーザー構成から自動的にzsh
を自動的に開始できます。そんな感じ
[ -x /usr/bin/zsh ] && exec /usr/bin/zsh