Ubuntu22.04 VNCサーバー
クライアントとしてMacから接続なので
RealVNC を使う
最初にVNCで接続確認できたら
SSHトンネルで接続できるようにする
Ubuntu インストール時にGNOMEデスクトップが入っているので
https://ja.linux-console.net/?p=3414#gsc.tab=0
を参考に
VNC用のユーザ作成し
TigerVNC サーバーのインストールをする
とりあえずユーザ名snow作成してパスワード設定
1 2 | sudo useradd -m -s /bin/bash snow sudo passwd snow |
次に作成したユーザをグループsudo に追加
これでroot権限が使える用になる
1 | sudo usermod -aG sudo snow |
次に作成したユーザに切り替え
Sudo su でroot権限になれるか確認
1 2 | su - snow sudo su |
で root になれてるなら成功
これで一度ユーザを元に戻すdのえ
ctrl+ d を2回行ってログアウトしておく
元々のユーザに戻ったら
TigerVNC サーバーのインストール
1 | sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-tools |
次にVNCの初期化
これはvncユーザのアカウントで行うので
1 | su - snow |
で切り替える
そしてVNCサーバの初期化
1 | vncserver |
パスワードを設定するけど
8文字が最大なので注意
1 | Would you like to enter a view-only password (y /n )? |
は
VNC サーバーまたはセッションを、表示のみの権限を持つ別のユーザーと共有
なので
N
にする
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | A view-only password is not used /usr/bin/xauth : file /home/snow/ .Xauthority does not exist New Xtigervnc server 'snowpool-Prime-Series:1 (snow)' on port 5901 for display :1. Use xtigervncviewer -SecurityTypes VncAuth - passwd /home/snow/ .vnc /passwd :1 to connect to the VNC server. =================== tail /home/snow/ .vnc /snowpool-Prime-Series :5901.log =================== Terminated X connection to :1 broken (explicit kill or server shutdown ). Fri Sep 29 06:21:47 2023 ComparingUpdateTracker: 0 pixels in / 0 pixels out ComparingUpdateTracker: (1:-nan ratio) Killing Xtigervnc process ID 38401... success! =========================================================================================== Session startup via '/etc/X11/Xtigervnc-session' cleanly exited too early (< 3 seconds)! Maybe try something simple first, e.g., tigervncserver -xstartup /usr/bin/xterm The Xtigervnc server cleanly exited! The X session cleanly exited! |
となる
次にこのVNCを強制終了し
起動スクリプトの構成開始
一度ログアウトしていたので
1 2 | vncserver - kill snowpool-Prime-Series:1 vncserver: No matching VNC server running for this user! |
現在動いていないみたいなので
1 | vim ~/.vnc /xstartup |
で設定ファイルを作成
1 2 3 4 5 6 7 8 | #!/bin/sh # Start up the standard system desktop unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS /usr/bin/startxfce4 [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources x-window-manager & |
として保存
1 | chmod +x ~/.vnc /xstartup |
で実行権限付与
次に
VNC ユーザーを TigerVNC サーバー構成ファイルに追加して定義
1 | sudo vim /etc/tigervnc/vncserver . users |
で
最終行に
1 | :1=snow |
を追記して保存
次にVNCサーバ起動
1 | sudo systemctl start snowpool-Prime-Series:1 service |
で実行したが
1 2 | Failed to start snowpool-Prime-Series:1.service: Unit snowpool-Prime-Series:1.service not found. Failed to start service.service: Unit service.service not found. |
となる
もしかしてx window systemがだめ?
とりあえずログを調べる
1 2 | cd .vnc/ ls -lah |
結果は
1 2 3 4 5 | drwxr-xr-x 2 snow snow 4.0K 9月 30 05:53 . drwxr-x--- 5 snow snow 4.0K 9月 30 05:53 .. -rw------- 1 snow snow 8 9月 29 06:21 passwd -rw-rw-r-- 1 snow snow 1022 9月 29 06:21 snowpool-Prime-Series:5901.log -rwxrwxr-x 1 snow snow 243 9月 30 05:38 xstartup |
となる
1 | cat snowpool-Prime-Series\:5901.log |
で中身を確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Xvnc TigerVNC 1.12.0 - built 2022-03-25 17:06 Copyright (C) 1999-2021 TigerVNC Team and many others (see README.rst) See https: //www .tigervnc.org for information on TigerVNC. Underlying X server release 12101003, X.Org Fri Sep 29 06:21:46 2023 vncext: VNC extension running! vncext: Listening for VNC connections on local interface(s), port 5901 vncext: created VNC server for screen 0 [mi] mieq: warning: overriding existing handler (nil) with 0x55648c8a9400 for event 2 [mi] mieq: warning: overriding existing handler (nil) with 0x55648c8a9400 for event 3 3NI3X0 New Xtigervnc server 'snowpool-Prime-Series:1 (snow)' on port 5901 for display :1. 3NI3X0 Use xtigervncviewer -SecurityTypes VncAuth - passwd /home/snow/ .vnc /passwd :1 to connect to the VNC server. Terminated X connection to :1 broken (explicit kill or server shutdown ). Fri Sep 29 06:21:47 2023 ComparingUpdateTracker: 0 pixels in / 0 pixels out ComparingUpdateTracker: (1:-nan ratio) Killing Xtigervnc process ID 38401... success! |
とりあえず
https://www.server-world.info/query?os=Ubuntu_22.04&p=desktop&f=1
を参考に
1 | sudo apt -y install ubuntu-desktop task-gnome-desktop |
で
GNOMEデスクトップ環境をインストール
1 | tigervncserver -xstartup /usr/bin/gnome-session --geometry 800x600 -localhost no :1 |
としたけどダメ
とりあえずユーザを通常のユーザに戻して
1 | tigervncserver -xstartup /usr/bin/gnome-session -geometry 800x600 -localhost no :1 |
を実行したらできた
https://ebi-works.com/mac-vnc/#outline__4_1
を参考に
Mac の場合
Finder から
移動 > サーバーに接続で
vnc://192.168.1.69:5901
で接続
しかし認証エラーとなってログイン画面は出るけど
ログインができない
本体から操作しようとしたが
画面が真っ黒で操作不能
一度
1 | sudo reboot |
で再起動し
本体でログインしてみると
操作ができるけど
今度はVNC接続ができない
とりあえずもう一回SSHでログインして
1 | sudo reboot |
で再起動
1 | A X11 server is already running for display :1 |
で検索し
https://www.bigbang.mydns.jp/vnc-server-x.htm
によれば
VNCで接続した状態(ログアウトしたままの状態)で直接コンソール画面からログインしようとすると、真っ黒な画面のまま表示されません
これを解消するには、VNC接続している画面でログアウトする必要がある
とのこと
一度再起動してから端末から
1 | tigervncserver -xstartup /usr/bin/gnome-session -geometry 800x600 -localhost no :1 |
とすれば
接続でき
操作もできるようになった
ただし放置してロック画面になると
パスワード入力ができないため
現状では一度再起動して対処
FirefoxはなぜかVNCで起動できなかった
Libreoffice calcなどは問題なく使用可能
とりあえず
1 | tigervncserver -xstartup /usr/bin/gnome-session -geometry 800x600 -localhost no :1 |
で起動し
Finderから
移動 > サーバーへ移動
で
vnc://192.168.1.69:5901
で接続
パスワードをVNCパスワードを入力すれば
VNCでgnomeデスクトップでログインできる
念の為使わない時にはログアウトしておけば
認証エラーのGUI画面にならずに済むし
自動的にVNCも停止する