Jekyll 2.2.0 | Ошибка: адрес уже используется - bind (2)

Я новичок в блогах Jekyll и стараюсь просматривать блог на локальном веб-сайте

http://localhost:4000

но не удалось.

➜ my-awesome-site > jekyll serve
Notice: for 10x faster LSI support, please install http://rb-gsl.rubyforge.org/
Configuration file: /home/Git/my-awesome-site/_config.yml
        Source: /home/Git/my-awesome-site
   Destination: /home/Git/my-awesome-site/_site
  Generating...
                done.
Configuration file: /home/Git/my-awesome-site/_config.yml
jekyll 2.2.0 | Error:  Address already in use - bind(2)

Я пробовал

$ lsof -wni tcp:3000
$ lsof -wni tcp:4000

но оба они ничего не возвращают.

Моя версия Ruby:

➜ my-awesome-site > ruby --version
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]

Что мне делать дальше? Я снова установил jekyll, но та же проблема остается.

Ответ 1

Попробуйте посмотреть, какой процесс использует этот порт, убейте его и запустите снова или попробуйте запустить jekyll на другом порту.

Ответ 2

См. комментарии в http://jekyllrb.com/docs/usage/, должны помочь вам:

Если вам нужно убить сервер, вы можете kill -9 1234, где "1234" PID.

Если вы не можете найти PID, тогда сделайте, ps aux | grep jekyllи убить экземпляр. Подробнее.

Ответ 3

Шаги здесь исправили это для меня. Мне пришлось добавить 'sudo' вместе с командами.

$> sudo lsof -wni tcp:4000

Он предоставит вам информацию о запуске процесса на TCP-порту 4000, который также содержит PID (идентификатор процесса). Теперь используйте команду ниже, чтобы убить процесс.

$> sudo kill -9 PID

Теперь вы можете выполнить команду jekyll serve, чтобы запустить свой сайт