Назад | Перейти на главную страницу

Исправить расположение инструментов GNU Solaris 11 для RVM

Я пытаюсь установить RVM в системе Solaris 11, curl -sSL https://get.rvm.io | bash -s stable прошел, но когда я действительно пытаюсь использовать rvm, он просто отображает "ОШИБКА: Отсутствуют инструменты GNU: grep which awk cp date find sed tail tar xargs. Убедитесь, что они установлены в '/' перед использованием RVM!" и уйти.

Чтением https://github.com/wayneeseguin/rvm/blob/master/scripts/functions/support Я обнаружил, что gnu_tools_path жестко запрограммирован на /usr/gnu/bin. Я проверил это напрямую и нашел там несколько символических ссылок. Я пытался сделать символическую ссылку /ec/bin/grep туда, только чтобы обнаружить, что в этой системе Solaris 11 usr монтируется только для чтения. После быстрого поиска в Google я решил, что это была проблема с "разреженной зоной" (поскольку я вообще ничего не знаю о Solaris).

Но grep на этом Solaris 11 работает нормально, у него номер версии grep (GNU grep) 2.16, расположенный под /ec/bin/.

Итак, мой вопрос: как я могу исправить путь, чтобы RVM мог использовать grep под /ec/bin?

Мне кажется, вы где-то читали и пошли плохим маршрутом. :-(

Прежде всего, многие инструменты GNU уже доступны в Solaris 11, и фактически они уже находятся в /usr/gnu/bin. Так сценарий Вы ссылаетесь на это очень правильно. Это действительно то место, где инструменты GNU будут жить в Solaris 11.

Если вы обнаружите, что это не так, следуйте рекомендациям Solaris 11 в это сообщение. (не используйте рекомендации для Solaris 10 и не пытайтесь самостоятельно создавать инструменты GNU ... нет необходимости усложнять ситуацию). Итак, если вы следите за этой публикацией и делаете (как root):

pkg install archiver/gnu-tar
pkg install file/gnu-coreutils
pkg install file/gnu-findutils
pkg install text/gawk
pkg install text/gnu-diffutils
pkg install text/gnu-grep
pkg install text/gnu-sed

тогда у вас должно быть все необходимое для RVM в Solaris 11. Выполнение этих команд не представляет опасности, если пакет уже установлен.

Solaris 11 значительно отличается от Solaris 10 в отношении инструментов GNU. Это стало намного проще и намного больше похоже на GNU из коробки. Так что, если вы используете информацию, относящуюся к Solaris 10 по отношению к инструментам GNU, вы, вероятно, усложняете себе задачу или предпринимаете ненужные действия.

Другие комментарии:

  • Вы упомянули слово «зоны с разреженным корнем», но эта концепция больше не применяется в Solaris 11 и новее. Вы, наверное, читали что-то из эпохи до Solaris 11.

  • Интересно, что /ec/ представляет в вашем посте?