Назад | Перейти на главную страницу

Сервис «vsftpd.service: cgroup is empty» не запускается

У меня есть машина CentOS 7.1, недавно установленная без каких-либо других настроенных служб. Я установил vsftpd через yum, но когда я иду запустить службу (через systemctl), Получаю ответ:

Не удалось выполнить задание vsftpd.service, поскольку процесс управления завершился с кодом ошибки. См. "Systemctl status vsftpd.service" и "journalctl -xe" для подробностей.

systemctl status не особо поучительно:

● vsftpd.service - Vsftpd ftp daemon
   Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2017-05-02 11:17:55 BST; 49s ago
  Process: 111420 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=1/FAILURE)

И journalctl -xe предоставляет следующее (удаление временных меток для краткости):

systemd[1]: Received SIGCHLD from PID 111421 (vsftpd).
systemd[1]: Child 111420 (vsftpd) died (code=exited, status=1/FAILURE)
systemd[1]: Child 111420 belongs to vsftpd.service
systemd[1]: vsftpd.service: control process exited, code=exited status=1
systemd[1]: vsftpd.service got final SIGCHLD for state start
systemd[1]: vsftpd.service changed start -> failed
systemd[1]: Job vsftpd.service/start finished, result=failed
systemd[1]: Failed to start Vsftpd ftp daemon.
systemd[1]: Sent message type=signal sender=n/a destination=n/a object=/org/freedesktop/systemd1 interface=org.freedesktop.systemd1.Manager member=JobRemoved cookie=9 reply_cookie=0 error=n/a
systemd[1]: Sent message type=signal sender=n/a destination=n/a object=/org/freedesktop/systemd1 interface=org.freedesktop.systemd1.Manager member=JobRemoved cookie=17180 reply_cookie=0 error=n/a
systemd[1]: Unit vsftpd.service entered failed state.
systemd[1]: vsftpd.service failed.
systemd[1]: vsftpd.service: cgroup is empty
systemd[1]: Child 111421 (vsftpd) died (code=exited, status=2/INVALIDARGUMENT)

Единственная строка, которая кажется значимой, - это предпоследняя, vsftpd.service: cgroup is empty. Но я не могу найти ничего полезного в этом плане. Конфигурационный файл установлен по умолчанию из репозитория yum. Я выполнил эти же шаги в тестовой среде, и они работали нормально.

Для меня проблема заключалась в том, что установка по умолчанию для vsftpd в CentOS 7 ожидает, что IPv6 будет включен на хосте. В моем случае это не так, и я не заметил разницы между моей локальной виртуальной машиной и тем, что нам предоставили наши поставщики услуг.

В конфигурационном файле /etc/vsftpd/vsftpd.conf измените строки (ближе к концу файла):

listen=NO
listen_ipv6=YES

вместо этого читать как:

listen=YES
listen_ipv6=NO

И сервис запускается!

В конфигурационном файле /etc/vsftpd/vsftpd.conf измените это на

listen=YES
listen_ipv6=NO

Не забывай бежать systemctl restart vsftpd.service