Команда starling находится в /home/keating/.rvm/gems/ruby-1.9.2-p290/bin/starling

Только использование rvmsudo starling будет работать правильно. Это результат того, что я пытался вызвать его различными способами:

$ starling
Permission denied
$ sudo starling
sudo: starling: command not found
$ sudo /home/keating/.rvm/gems/ruby-1.9.2-p290/bin/starling
/home/keating/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find starling (>= 0) amongst [minitest-1.6.0, rake-0.8.7, rdoc-2.5.8] (Gem::LoadError)
from /home/keating/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
from /home/keating/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems.rb:1229:in `gem'
from /home/keating/.rvm/gems/ruby-1.9.2-p290/bin/starling:18:in `<main>'

Я действительно хочу выполнить команду с sudo , потому что ошибка, описанная выше, такая же, как при запуске rvmsudo service starling start(я установил starling как службу операционной системы os).

3 ответа3

1

Вопреки распространенному мнению, запуск sudo не просто запускается с повышенными привилегиями, а запускается от имени пользователя root . Ваша проблема в том, что starling установлен локально в вашем профиле, а root не знает, что он существует. Чтобы решить эту проблему, вам нужно добавить starling в вашу PATH .

В вашем случае попробуйте это:

  1. sudo su -
  2. PATH=$PATH:/home/keating/.rvm/gems/ruby-1.9.2-p290/bin/
  3. export PATH
  4. starling

Если это работает, добавьте эту папку в корневой каталог, тогда sudo starling должен работать. Вот хорошая статья об этом.

-1

Зарегистрируйтесь как root с помощью команды ниже:

судо су -

-5

Попробуй это.

sudo passwd root

Теперь вы можете ввести пароль для пользователя root. После чего вы можете запустить:

su

Теперь у вас повышенные привилегии. Попробуйте запустить ваше приложение сейчас ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .