92 lines
4.1 KiB
Markdown
92 lines
4.1 KiB
Markdown
|
## Настройка 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`
|