Итак, мне только что удалось установить zsh на компьютер, к которому у меня есть доступ по SSH (но, что важно, без доступа с правами root), как указано здесь. Затем я попытался установить Oh My Zsh, и меня приветствовало следующее сообщение:
Zsh is not installed! Please install zsh first!
Что было не так уж удивительно. После проверки скрипта установки код для проверки, установлен ли zsh:
CHECK_ZSH_INSTALLED=$(grep /zsh$ /etc/shells | wc -l)
if [ ! $CHECK_ZSH_INSTALLED -ge 1 ]; then
printf "${YELLOW}Zsh is not installed!${NORMAL} Please install zsh first!\n"
exit
fi
unset CHECK_ZSH_INSTALLED
Поэтому без прав root я не могу редактировать /etc /shells. Также возможно важно отметить, что когда я подключаюсь по SSH к этой системе, я не обязательно подключаюсь к одной и той же физической машине; скорее я зашел на одну из нескольких машин, на которые скопирован мой домашний каталог. В настоящее время в моем .profile
есть код, который добавляет ~/bin
к моему $PATH
и запускает zsh при входе в систему.
По сути, есть ли способ обойти это? Я предполагаю, что сценарий установки может быть изменен, чтобы приспособить zsh к ~/bin/zsh, но простое удаление логики проверки, безусловно, ничего не значит, если не опрометчиво.