Можно ли переустановить / исправить системный рубин Mac OS X без полной переустановки ОС?
Является ли это возможным? Я сталкиваюсь с различными проблемами, по крайней мере, один раз в неделю, так как они испортились или что-то в этом роде, особенно с домашним пивом.
Если это возможно, но лучше начать с чистого листа, пожалуйста, дайте мне знать.
5 ответов
В моем понимании - пожалуйста, поправьте меня, если я ошибаюсь - вам не нужно переустанавливать весь Mac OS X, чтобы переустановить вашу систему Ruby. Как вы, возможно, знаете, системный рубин находится в /System/Library/Frameworks/Ruby.framework/. Если эта папка удалена или повреждена, или если символические ссылки, указывающие на нее, удалены или изменены, у вас не будет работающей установки System Ruby.
Чтобы исправить, попробуйте это:
- Вставьте установочный DVD Mac OS X
- Откройте папку установки DVD с Mac OS X
- Откройте папку "Дополнительные установки"
- Откройте папку Xcode Tools
- Откройте пакет XcodeTools. Это запустит Установщик Инструментов XCode. Следуй инструкциям.
Также не мешало бы получить последний Xcode от http://developer.apple.com/technologies/xcode.html
Полное раскрытие: я сделал эти шаги. Я почти уверен, что он восстанавливает Ruby.framework, но он не восстановил символические ссылки (обычно в /usr/bin) для меня.
Если вы используете Pacifist, то можно просто переустановить Ruby.
- Вставьте свой OS X DVD
- Запустить пацифист
- Выберите "Открыть установочные диски Apple"
- Выберите диск
- Поиск "Ruby.framework"
- Щелкните правой кнопкой мыши и выберите "Установить в папку по умолчанию"
Это переустановит Ruby, чтобы настроить символические ссылки из /usr/bin, чтобы они указывали на него, снова используйте Pacifist:
- Поиск "Содержание BSD.pkg"
- Открыть: usr -> bin
- Выберите ссылки и файлы, которые вам нужны
- крышка
- capify
- эрб
- хорек-браузер
- драгоценный камень
- gpgen
- IRB
- mongrel_rails
- рельсы
- грабли
- гь-кейген
- RDoc
- RedCloth
- Род-Айленд
- Рубин
- testrb
- update_rubygems
- Щелкните правой кнопкой мыши и выберите "Установить в папку по умолчанию"
В общем, если вам нужно выяснить, из какого установщика пришел файл в вашей системе в терминале:
$ pkgutil --file-info /usr/bin/ruby
volume: /
path: usr/bin/ruby
pkgid: com.apple.pkg.BSD
pkg-version: 10.5.0.1.1.1188305148
install-time: 1203610823
uid: 0
gid: 0
mode: 120755
Затем pkgid должен дать вам подсказку, а затем вы либо найдете этот установщик и снова запустите его, либо используете Pacifist для выборочного выполнения.
Вы также можете увидеть, какие другие файлы находятся в этом пакете:
$ pkgutil --files com.apple.pkg.BSD
.
Library
Library/Documentation
Library/Documentation/Commands
Library/Documentation/Commands/grep
...
Я обнаружил, что лучший способ справиться с Ruby в OS X - это привести вашу систему в состояние по умолчанию с помощью описанного выше процесса. Удалите все MacPort, Fink или версии, которые вы скомпилировали вручную. Установите RVM и используйте его для управления установкой более новых версий.
Оказывается, я удалил системный Ruby и у меня возникли проблемы с установкой pow ( http://pow.cx/) на моем Mac из-за этого. Поэтому я установил Pacifist и последовал совету в этом посте, и я снова в деле. Спасибо!
Старый пост, но я просто переключался с портов на доморощенный, так что...
Для доморощенных проблем я решил это, установив rvm и символические ссылки. Так что, если у вас установлен rvm, вы можете начать, набрав:
which ruby
с выводом, что сделать что-то вроде:
ln -s /Users/username/.rvm/rubies/ruby-1.9.2-p290/bin/ruby /usr/bin/ruby
Я сильно испортил мою установку Ruby на OSX, но я использовал этот графический интерфейс от команды RVM и сумел решить его без особых усилий и без взлома CLI
IMO Homebrew
( http://brew.sh/) - лучший менеджер пакетов для OS X.
Для установки Homebrew сделайте:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
затем
brew install ruby
Готово.