notes/Настройка VNC Ubuntu Server...

92 lines
4.1 KiB
Markdown
Raw Permalink Normal View History

2022-05-07 22:12:11 +03:00
## Настройка VNC Ubuntu Server 20.04 Rspberry PI 4
*Установку и настройку ОС выполнял по документации*
[How to install Ubuntu on your Raspberry PI](https://ubuntu.com/tutorials/how-to-install-ubuntu-on-your-raspberry-pi#1-overview)
**Установим DE**
```bash
sudo apt update
sudo apt upgrade
sudo apt install xubuntu-desktop
sudo reboot
```
**TightVNC Server**
*За основу взял эти статьи:*
[Установка и настройка VNC в Ubuntu 20.04](https://www.8host.com/blog/ustanovka-i-nastrojka-vnc-v-ubuntu-20-04/)
[Как настроить и использовать сервер TigerVNC в Linux](https://zalinux.ru/?p=3905)
*TigerVNC настроить не получилось, сервер не пускал к себе никого*
`sudo apt install tightvncserver`
*при первом запуске нужно задать пароль*
`vncserver`
*Если в будущем понадобиться изменить пароль или добавить пароль для просмотра, это можно сделать с помощью команды vncpasswd:*
`vncpasswd`
*При первом запуске VNC использует порт 5901. Чтобы изменить настройки сервера VNC, нужно остановить экземпляр, использующий порт 5901.*
`vncserver -kill :1`
*Резервная копия файла xstartup:*
`mv ~/.vnc/xstartup ~/.vnc/xstartup.bak`
*Затем создать новый файл xstartup*
`nano ~/.vnc/xstartup`
```bash
#!/bin/bash
PATH=/usr/bin:/usr/sbin
unset SESSION*MANAGER
unset DBUS*SESSION*BUS*ADDRESS
exec ЗАПУСК &
```
*Вместо слова `ЗАПУСК` должен быть указан исполнимый файл, запускающий X сессию.*
*Для Cinnamon:* `cinnamon-session-cinnamon`
*Для XFCE:* `startxfce4`
*Для GNOME:* `/usr/bin/gnome-session`
*Для Kodi:* `kodi-standalone`
*Для Mate:* `mate-session`
*Для lxqt:* `startlxqt`
*Узнать исполняемый файл для любого окружения рабочего стола установленного в системе -* `ls /usr/share/xsessions/`
*В этой папке лежат файлы с расширением `.desktop`, например:*
`cinnamon2d.desktop cinnamon.desktop gnome.desktop gnome-xorg.desktop kodi.desktop`
*Открыть любой, найти там строку, которая начинается на «Exec», например для файла xfce.desktop:*
`Exec=cinnamon-session-cinnamon`
*сделать файл исполняемым:* `chmod +x ~/.vnc/xstartup`
**Настройка VNC как сервиса systemd**
`sudo nano /etc/systemd/system/vncserver@.service`
```bash
[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=da2001
Group=da2001
WorkingDirectory=/home/da2001
PIDFile=/home/da2001/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x720 :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
```
*сохранить, закрыть*
*Затем сообщите системе про новый юнит-файл.*
`sudo systemctl daemon-reload`
*И включите его:*
`sudo systemctl enable vncserver@1.service`
*Цифра 1, идущая за @, определяет, какой номер дисплея должен отображаться в сервисе, в этом случае это значение по умолчанию :1.*
*Остановите текущий экземпляр сервера VNC, если он еще запущен.*
`vncserver -kill :1`
*Теперь попробуйте запустить его как любой другой сервис systemd:*
`sudo systemctl start vncserver@1`
*Чтобы убедиться, что сервер запущен, проверьте его состояние:*
`sudo systemctl status vncserver@1`