LINUX.ORG.RU

/usr/local/bin/rake - кто его устанавливает?

 


0

1
# which rake
/usr/bin/rake
# /usr/bin/rake
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)

(See full trace by running task with --trace)
# rake
-bash: /usr/local/bin/rake: No such file or directory

почему вообще выдаётся это последнее сообщение?
Как сделать так, чтобы использовался /usr/bin/rake, а не /usr/local/bin/rake?

★★☆

Последнее исправление: Einstok_Fair (всего исправлений: 1)
Ответ на: комментарий от annerleen

Это не я, это всё гента:

# qfile /etc/env.d/50baselayout
sys-apps/baselayout (/etc/env.d/50baselayout)
# grep «^PATH» /etc/env.d/50baselayout
PATH=«/usr/local/bin:/usr/bin:/bin:/opt/bin»

убери

не могу, там написано

# Do not edit this file

Einstok_Fair ★★☆
() автор топика
Ответ на: комментарий от Einstok_Fair

не могу

тогда страдай
ну или запускай как

PATH=/usr/bin rake

ну или в .bashrc прописать

annerleen ★★★★☆
()
Ответ на: комментарий от saahriktu

Всё равно можно редактировать.

А зачем тогда пишут, что нельзя?

Я пробовал отредактировать файл /etc/env.d/50baselayout и выполнить
env-update
source /etc/profile
echo $PATH

для надёжности я даже погрепал, что нигде в другом месте она не устанавливается внутри env.d

но значение PATH не поменялось!

Einstok_Fair ★★☆
() автор топика
Последнее исправление: Einstok_Fair (всего исправлений: 1)
Ответ на: комментарий от Einstok_Fair

А зачем тогда пишут, что нельзя?

Так пишут, например, в тех файлах, что были сгенерированы автоматически. В любой момент они могут быть перегенерированы заново, и тогда юзер может потерять те настройки, которые он туда внёс. Вот чтобы он потом не кусал локти его и предупреждают. Однако, на свой страх и риск редактировать (и сохранять резервные копии) можно.

saahriktu ★★★★★
()
Ответ на: комментарий от saahriktu

1) Но этот файл не сгенерирован автоматически. Он установлен ебилдом (в стартовом посте это видно)

2) зачем пишут
You should set ROOTPATH instead of PATH in your /etc/env.d/* files.

и где об этом прочитать?

Einstok_Fair ★★☆
() автор топика
Ответ на: комментарий от annerleen

если бы файл /usr/local/bin/rake существовал, мне было бы понятно, что он запускается вместо другого, потому что так написано в $PATH

Но мне не понятно, почему выдаётся эта ошибка в случае ОТСУТСТВИЯ этого файла. Почему бы дальше по PATH не найти в /usr/bin ?

Einstok_Fair ★★☆
() автор топика
Ответ на: комментарий от Einstok_Fair

Как будто бы ебилды не могут запускать скрипты, которые что-то генерируют автоматически.

Вот описание этих переменных окружения: https://www.calculate-linux.org/main/ru/environment_variables .

saahriktu ★★★★★
()
Последнее исправление: saahriktu (всего исправлений: 1)
Ответ на: комментарий от saahriktu

Это всё прекрасно, но никак не отвечает на этот вопрос

А это важно понять, прежде чем менять дефолтное на всю систему значение PATH

Einstok_Fair ★★☆
() автор топика

Как сделать так, чтобы использовался /usr/bin/rake, а не /usr/local/bin/rake?

Перезапусти шел.

i-rinat ★★★★★
()
Ответ на: комментарий от Einstok_Fair

можешь не перезапускать
hash -d rake
hash -p /usr/bin/rake rake
help hash

arrecck ★★★
()
Ответ на: комментарий от i-rinat

Тебя заставляют, что ли?

почему нет?
может я, работаю админом в рабстве на дагестанском кирпичном заводе

Einstok_Fair ★★☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.