3

次のパスを[設定]に設定して、MacPortsによってインストールされたZshをログインシェルとして配置できませんでした。

/opt/local/bin/zsh

ユーザーアカウントの詳細オプションにも配置しました。次のエラー 代替テキストが表示されますhttp://dl.getdropbox.com/u/175564/macportsError.png

次のパスを設定に失敗しました

/opt/local/var/macports/software/zsh/4.2.7_0+mp_completion

シェルを再起動すると、次のエラーが発生します

login: /opt/local/var/macports/software/zsh/4.2.7_0+mp_completion: Permission denied

[Process completed]

Zshをログインシェルとしてアクティブ化するにはどうすればよいですか?

4

3 に答える 3

3

Norbert が言うように、答えは /etc/shells にあると思います。私にはこれがあります:

# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

そのリストに追加/opt/local/bin/zshすれば、問題ありません。その後、を使用してシェルを (ユーザーごとに個別に) 変更できるはずchshです。

于 2009-04-30T16:30:20.117 に答える
2

I know this question was marked answered, but

/opt/local/var/macports/software/zsh/4.2.7_0+mp_completion

macports の実行可能ファイルでさえありません。そのため、エラーが発生しました。シェルは実行可能でなければなりません。

シェルを /opt/local/bin/zsh に設定したいと考えていました。

これは、ヒョウとユキヒョウの両方で機能しました。OSX は実際には構成管理に /etc を使用せず、NetInfo (Leopard) を使用し、現在は Directory Services (Snow Leopard) を使用しています。システム環境設定 > アカウント (SL) でユーザーを右クリックするか、Netinfo Manager (Leopard) を使用して、それを設定したいと考えていました。

編集:

Snow Leopard: sudo dscl . -create /Users/chiggsy UserShell /opt/local/bin/zsh

(作成または更新を作成)

編集: 汚い、臭い恥ずかしさに覆われた私を想像してください. iTerm を使用していますが、アカウントのシェルを変更しても問題なく動作しました。ターミナルでは、OP と同じ結果が得られ、/etc/shells を編集して修正しました。さて、サードパーティの端末を使用するだけでは /etc/shells の制限を回避できないように思われますが、そのようです。

于 2009-10-31T23:25:27.590 に答える
1

シェルを/etc/shellsに入力しましたか。MacOSがそこで有効なシェルを管理しているようです。Macを使用していないため、正確にはわかりません

于 2009-04-30T16:25:23.967 に答える