Failed to start lsb: bring up/down networking

Введение

Virtual Network Computing (VNC) — система удалённого доступа к рабочему столу компьютера, использующая протокол RFB (англ. Remote FrameBuffer, удалённый кадровый буфер).

Управление осуществляется путём передачи нажатий клавиш на клавиатуре и движений мыши с одного компьютера на другой и ретрансляции содержимого экрана через компьютерную сеть.

Система VNC платформонезависима: VNC-клиент, называемый VNC viewer, запущенный на одной операционной системе, может подключаться к VNC-серверу, работающему на любой другой ОС.

Существуют реализации клиентской и серверной части практически для всех операционных систем, в том числе и для Java (включая мобильную платформу J2ME).

К одному VNC-серверу одновременно могут подключаться множественные клиенты.

Наиболее популярные способы использования VNC — удалённая техническая поддержка и доступ к рабочему компьютеру из дома.

Дисплей 0

Если вы пытаетесь запустить сервер на дисплее 0 и получаете ошибку

● vncserver@:0.service — Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:0.service; enabled; vendor preset:
Active: failed (Result: exit-code) since Thu 2021-03-18 15:50:32 EET; 2min 8s ago
Process: 4260 ExecStart=/usr/bin/vncserver_wrapper andrei %i (code=exited, status=
Process: 4255 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1
Main PID: 4260 (code=exited, status=2)

Mar 18 15:50:32 localhost.localdomain vncserver_wrapper: (EE) Cannot establish
Mar 18 15:50:32 localhost.localdomain vncserver_wrapper: _XSERVTransSocketUNIX
Mar 18 15:50:32 localhost.localdomain vncserver_wrapper: _XSERVTransMakeAllCOT
Mar 18 15:50:32 localhost.localdomain vncserver_wrapper: (EE)
Mar 18 15:50:32 localhost.localdomain vncserver_wrapper: Fatal server error:

Убедитесь, что у вас не запущена X Window System
обычно она занимает дисплей 0.

Если запущена — закройте иксы

Unit network.service entered failed state

Хорошо, что был доступ к консоли сервера с помощью kvm-over-ip, а конкретно через ILO, идущего в комплексе с сервером HP. Я никогда не рекомендую менять настройки сети и делать глобальные изменения или начальную настройку iptables, если у вас нет доступа к консоли. Чаще всего все проходит нормально, но все равно иногда случаются непредвиденные ситуации и доступ к серверу отключается. Если он стоит в ЦОД, то это полный провал. Настройку сети и фаервола я всегда делаю в самом начале и больше стараюсь их не трогать без крайней необходимости.

После перезагрузки сеть не поднялась, а в логах были следующие ошибки:

systemd: Starting LSB: Bring up/down networking... 
systemd: network.service: control process exited, code=exited status=6 
systemd: Failed to start LSB: Bring up/down networking 
systemd: Unit network.service entered failed state 
systemd: network.service failed

Говорю сразу решение, которое помогло мне. Нужно создать пустой файл network в директории /etc/sysconfig.

# touch /etc/sysconfig/network

Перезапускаем сеть:

# systemctl restart network

Ошибок нет, сеть поднялась.

Запуск VNC сервера

sudo systemctl daemon-reload

sudo systemctl start vncserver@:1

systemctl status vncserver@:1

vncserver@:1.service — Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2021-03-16 13:49:55 EET; 3min 56s ago
Process: 23138 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
Main PID: 23145 (vncserver_wrapp)
CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service
├─23145 /bin/sh /usr/bin/vncserver_wrapper andrei :1
└─24097 /bin/sh /usr/bin/vncserver_wrapper andrei :1

Mar 16 13:49:45 localhost.localdomain systemd: Starting Remote desktop service (VNC)…
Mar 16 13:49:55 localhost.localdomain systemd: Started Remote desktop service (VNC).
Mar 16 13:50:35 localhost.localdomain vncserver_wrapper: New ‘localhost.localdomain:1 (andrei)’ desktop is localhost.localdomain:1
Mar 16 13:50:35 localhost.localdomain vncserver_wrapper: Creating default startup script /home/andrei/.vnc/xstartup
Mar 16 13:50:35 localhost.localdomain vncserver_wrapper: Creating default config /home/andrei/.vnc/config
Mar 16 13:50:35 localhost.localdomain vncserver_wrapper: Starting applications specified in /home/andrei/.vnc/xstartup
Mar 16 13:50:35 localhost.localdomain vncserver_wrapper: Log file is /home/andrei/.vnc/localhost.localdomain:1.log

Чтобы VNC sever запускался при загрузке системы выполните

systemctl enable vncserver@:1

Проверить, что vnc server слушает на порту 5901 можно командой

ss -tulpn| grep vnc

tcp LISTEN 0 5 *:5901 *:* users:((«Xvnc»,pid=1330,fd=9))
tcp LISTEN 0 128 *:6001 *:* users:((«Xvnc»,pid=1330,fd=6))
tcp LISTEN 0 5 :5901 :* users:((«Xvnc»,pid=1330,fd=10))
tcp LISTEN 0 128 :6001 :* users:((«Xvnc»,pid=1330,fd=5))

Теперь порт 5901 нужно открыть в firewall

Выполните

sudo firewall-cmd —add-port=5901/tcp —permanent

sudo firewall-cmd —reload

sudo firewall-cmd —list-ports

19999/tcp 5901/tcp

Как вы можете убедиться — порт 5901 успешно добавлен в список открытых

Если вам вдруг стало интересно — что за порт 19999 — его использует
Locust

Ошибка автозапуска службы nfs-server.service — exportfs: Failed to resolve в CentOS Linux 7.2

При перезагрузке файлового NFS-сервера на базе CentOS Linux 7.2 служба nfs-server не стартует, хотя настроена на автоматический запуск. Соответсвенно NFS-клиентам недоступны NFS-шары с этого файлового срвера.
При этом ручной запуск службы nfs-server происходит успешно.
После перезагрузки сервера, если заглянуть в текущий статус службы то увидим то, что она не запущена и ошибку типа «exportfs: Failed to resolve…»

# service nfs-server status

Redirecting to /bin/systemctl status  nfs-server.service
● nfs-server.service - NFS server and services
  Loaded: loaded (/usr/lib/systemd/system/nfs-server.service;enabled;vendor preset:disabled)
  Active: failed (Result: exit-code) since Fri 2016-09-09 10:03:12 MSK; 28min ago
 Process: 1955 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=1/FAILURE)

Sep 09 10:02:35 systemd: Starting NFS server and services...
Sep 09 10:03:12 exportfs: exportfs: Failed to resolve OVIRT1.dom.com
Sep 09 10:03:12 systemd: nfs-server.service:control process exited, code=exited status=1
Sep 09 10:03:12 systemd: Failed to start NFS server and services.
Sep 09 10:03:12 systemd: Unit nfs-server.service entered failed state.
Sep 09 10:03:12 systemd: nfs-server.service failed.

Проблема может быть связана с тем, что в процессе загрузки служба nfs-server.service пытается запуститься до того, как закончена полная инициализация сети, и соответственно из-за ошибки разрешения имени из файла /etc/exports служба не стартует.

Для решения этой проблемы можно использовать разные методы.

Метод №1

Включить службу NetworkManager-wait-online, в случае если в вашей системе используется NetworkManager :

# systemctl enable NetworkManager-wait-online.service

Метод №2

Отредактировать конфигурационный файл службы /usr/lib/systemd/system/nfs-server.service, добавив в секцию строки:

Unit
...
After=network-online.target
Wants=network-online.target
Requires=network-online.target
...

После этого выполняем команду:

# systemctl daemon-reload

Эти методы можно пробовать использовать как раздельно так и вместе.
После применения методов несколько раз перезагружаем сервер и убеждаемся в том, что каждый раз служба nfs-server запускается автоматически при загрузке системы.

Если ничего не помогает, то можно попробовать поставить жёсткий «костыль», а именно добавить в конец файла /etc/rc.d/rc.local проверку наличия сети путём отсылки ping, и как только сеть появится — запускать службу.
Этот фрагмент добавим в файл /etc/rc.d/rc.local (в переменную checkip вставьте IP другого сервера, например шлюза):

sleep 10
checkip="10.1.0.1"
if ; then
  while ! ping -c 1 -W 1 $checkip; do
   # Waiting for gateway ip - network interface might be down..."
   sleep 1
  done
  sleep 10
  systemctl start nfs-server.service
fi

И не забудем сделать исполняемым файл

# chmod +x /etc/rc.d/rc.local

Удаление Network Manager в CentOS

Удалить Network Manager очень просто. Выполняем несколько команд в консоли сервера:

# systemctl stop NetworkManager
# systemctl disable NetworkManager

Если мы сейчас перезапустим сеть или перезагрузим сервер, то удаленно подключиться к серверу не сможем. Хорошо, что есть ILO :) Я хоть и не сразу перезагрузился, но управление сервером потерял. Расскажу, в чем была причина

После отключения и удаления Network Manager, я нарисовал конфиг для сетевого интерфейса с именем eno1.

# cat /etc/sysconfig/network-scripts/ifcfg-eno1
DEVICE="eno1"
HWADDR="98:f2:b3:f7:0e:90"
ONBOOT=yes
NETBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
NAME="eno1"
DNS1=10.1.3.21
IPADDR=10.1.3.14
NETMASK=255.255.255.0
GATEWAY=10.1.3.21

По идее, этого достаточно. Отправил сервер в перезагрузку и удаленно больше не смог к нему подключиться.

Установка tigervnc-server

Выполните

sudo yum install tigervnc-server

Залогиньтесь под пользователем, которому вы хотите дать доступ по vnc

vncpasswd

Password:
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used

view-only password это пароль для доступа только с правами на просмотр. Действия мыши и клавиатуры
во время такого доступа ограничены.

sudo vi /lib/systemd/system/[email protected]

# The vncserver service unit file
#
# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/[email protected]
# 2. Replace <USER> with the actual user name and edit vncserver
# parameters in the wrapper script located in /usr/bin/vncserver_wrapper
# 3. Run `systemctl daemon-reload`
# 4. Run `systemctl enable vncserver@:<display>.service`
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, you should
# limit connections to the local host and then tunnel from
# the machine you want to view VNC on (host A) to the machine
# whose VNC output you want to view (host B)
#
# $ ssh -v -C -L 590N:localhost:590M hostB
#
# this will open a connection on port 590N of your hostA to hostB’s port 590M
# (in fact, it ssh-connects to hostB and then connects to localhost (on hostB).
# See the ssh man page for details on port forwarding)
#
# You can then point a VNC client on hostA at vncdisplay N of localhost and with
# the help of ssh, you end up seeing what hostB makes available on port 590M
#
# Use «-nolisten tcp» to prevent X connections to your VNC server via TCP.
#
# Use «-localhost» to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the «-via» option in the
# `man vncviewer’ manual page.

Description=Remote desktop service (VNC)
After=syslog.target network.target

Type=simple

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
ExecStart=/usr/bin/vncserver_wrapper <USER> %i
ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

WantedBy=multi-user.target

Выполните первый и второй шаги из Quick HowTo

sudo cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

Обратите внимание на 1 — таким образом указывается номер дисплея для данной версии сервера.
Можно было выбрать другое число, главное запомнить этот выбор.

sudo vi /etc/systemd/system/vncserver@\:1.service

В строке

Замените <USER> на имя вашего пользователя. (моего зовут andrei)

Можно вручную через vi
а можно с помощью sed

sudo sed -i ‘swrapper\ <USER>wrapper\ andrei‘ /etc/systemd/system/vncserver@\:1.service

Если вашего пользователя зовут

vncuser

команда будет выглядеть так:

sudo sed -i ‘swrapper\ <USER>wrapper\ vncuser‘ /etc/systemd/system/vncserver@\:1.service

Заключение

Напоминаю, что с обновлением 5.4 появились и новые шаблоны. Они автоматически не появятся у вас на сервере. Их нужно будет скачать и импортировать вручную из репозитория — https://github.com/zabbix/zabbix/tree/release/5.4/templates. Это же касается и способов оповещения, которые регулярно добавляются. Если не обновили их вручную при переходе на 5-ю ветку, то так же можете забрать их из репы и импортировать к себе на сервер.

Онлайн курс «DevOps практики и инструменты»

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.

Проверьте себя на вступительном тесте и смотрите программу детальнее по .

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Техноарена
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: