Игнорирование ошибок 'ln' в подготовке Vagrant

1087
ChristianK

Я использую скрипт оболочки в своем Vagrantfile для создания символической ссылки для Node.js (в виртуальной машине Ubuntu):

ln -s /usr/bin/nodejs /usr/bin/node 

Это работает нормально, когда я звоню vagrant upв первый раз, но когда я звоню vagrant up --provisionпосле этого (то есть, когда символическая ссылка уже существует), я получаю следующую ошибку:

==> default: ln:  ==> default: failed to create symbolic link ‘/usr/bin/node’: File exists The SSH command responded with a non-zero exit status. Vagrant assumes that this means the command failed. The output for this command should be in the log above. Please read the output to determine what went wrong. 

Как я могу заставить Вагранта игнорировать возникшую ошибку ln? Я уже пытался перенаправить его вывод /dev/null, но это приводит к той же ошибке:

ln -s /usr/bin/nodejs /usr/bin/node 2>/dev/null || true 
2

1 ответ на вопрос

2
Cornelius

You can use the -f parameter:

ln -s -f /usr/bin/nodejs /usr/bin/node 

See ln - Linux Command.

Похожие вопросы