け い ざ ん の D I Y 工 房

◆Home
◆住まいの D I Y
◆パソコン D I Y
◆ROBOT D I Y
◆電子工作 D I Y
◆Science

● RasPi 5に TigerVNC Serverを installしたら真っ黒画面

 2025.04.13

 Raspberry Pi5 OS Ver.12 (bookworm)に TigerVNC Serverを installして
 端末の Viewer側で表示させようとすると真っ黒画面が出て苦しんだ。
 RasPi OSが Ver.12(bookworm)になり RealVNCが使用出来なくなりました。
 bookworm wayland版をやめて X11版に戻せば RealVNCを使用する事もできますが
 動作が遅く操作性が悪い。
 bookworm wayland版では TigerVNCを使用するしかありません。
 TigerVNCは bugも多いので色々な情報が Internetに Uploadされていて、
 どれが自分の installした Versionに効果があるのかもよくわからない。
 


【installした環境】
● Server側
 1. Hardware Raspberry Pi 5
 2. O S    Raspi OS Ver.12(bookworm) wayland labwc版
 3. OS Version Linux raspi06 6.6.74+rpt-rpi-2712 #1 Debian 1:6.6.74-1+rpt1 (2025-01-27) aarch64 GUN/Linux
 4. OS-release
   $ cat /etc/os-release
   PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
   NAME="Debian GNU/Linux"
   VERSION_ID="12"
   VERSION="12 (bookworm)"
   VERSION_CODENAME=bookworm
 5. TigerVNC Server Version  Ver 1.12.0 - built 2023-01-06

● Viewer側
 1. Hardware FMV LIFEBOOK U938/S
 2. O S    Lubuntu 24.04.2 LTS
 3. Viewer  TigerVNC Viewer V1.14.1  Built on: 2024-10-24


 Raspberry Pi 5 外観
raspi5



【TigerVNC Server install】
 TigerVNC Serverの Versionは現在 1.15.0まで上がっています。
 しかし、これは自分でコンパイルして installしなければならない。
 Raspberry Piに apt-getで installできたのは、V1.12.0でした。
 
 $ sudo apt-get install tigervnc-standalone-server tigervnc-common xterm -y
  Version 1.12.0が installできたら tigervnc passwordを登録します。
 $ tigervncpasswd : xxxxxx
 $ Verify : xxxxxx
  Would you like to enter a view-only password (y/n)? n
  passwordは2回入力すると view-onlyにするかと聞いてくるので n を key inします。
 

【初期設定】
 1. アクセスできる userの設定 :1= :2= に accessする user名を入れる。
   $ cd /etc/tigervnc
   $ sudo nano vncserver.users
    # :2=andrew
    # :3=lis
     :1=pi06
     :2=pi06
     
 2. ~/.vncに tigervnc.confを作成して設定をいれる。
   $ cd ~/.vnc
   $ sudo nano tigervnc.conf
    # 
    $session="gnome";
    alwaysshared;
    localhost;
    
 3. tigervncserver@.serviceの修正
   tigervncserver@.serviceを修正して display番号を入れる。
   $ cd /usr/lib/systemd/system
   $ sudo mv tigervncserver@.service tigervncserver@:1.service
   
 4. systemd enable startの実行
   $ systemctl enable tigervncserver@:1.service
   passwordは 2回いれる。
   $ systemctl start tigervncserver@:1.service
     start後は、serviceが activeになっていれば OKです。
   
 5. 起動と状態確認
   $ tigervncserver      ・・・起動
   $ tigervncserver -list    ・・・状態表示
    TigerVNC server sessions:
    X DISPLAY # RFB PORT # RFB UNIX PATH PROCESS ID # SERVER
    1       5901         13220    Xtigervnc

   5901の portとprocess IDが表示されれば正常に起動しています。

【TigerVNC Viewer install】
 Lubuntu 24.04.2に QTTerminalを開いてtigervnc viewerを installします。
  Viewer install
   $ sudo apt install tigervnc-viewer tigervnc-tools tigervnc-common -y
   $ sudo tigervncpasswd
     password: xxxxxx
     Verify:  xxxxxx

  Viewer起動
   $ xtigervncviewer
    接続が拒否されました。   ・・・あれれ。


【デバック】
  Raspi5の tigervnc Serverへの接続が拒否されたので internetで調べたら
  Raspi 5側で -localhost noを1回実行しないと接続できないみたい。
  $ tigervncserver -localhost no

  今度は接続できて、設定した passwordの要求画面が出てきました。
  設定したpasswordを key inして connectを clickすると真っ黒画面 ・・・なんで。
  それでもカーソルは表示されているし、右 Clickすれば menu表示もする。

 1. 考えられる原因
  (1) tigervnc Serverは displayを1台しか Supportしないので
    2台目以降を接続しようとすると黒い画面になる。
  (2) tigervnc Serverの port:5901は、localhost(127.0.0.1)しか
    開けられていない。

  port:5901の使用状況を調べると
  pi06@raspi06:~ $ lsof -i:5901
  COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  Xtigervnc 13996 pi06 7u IPv4  22369 0t0 TCP *:5901 (LISTEN)
  Xtigervnc 13996 pi06 8u IPv6  22370 0t0 TCP *:5901 (LISTEN)

  tigervnc Serverが 5901 portを使用している IP Address
  $ sudo nmap 192.168.1.251
    PORT  STATE SERVICE
    22/tcp open ssh
    139/tcp open netbios-ssn
    445/tcp open microsoft-ds
    5900/tcp open vnc
    5901/tcp open vnc-1

  $ sudo nmap 127.0.0.1
    PORT  STATE SERVICE
    22/tcp open ssh
    139/tcp open netbios-ssn
    445/tcp open microsoft-ds
    631/tcp open ipp
    5901/tcp open vnc-1

   ・ port:5901を使用している programは tigervnc以外にはなかった。
   ・ localhostの portしか開けられていないのであれば、トンネルを作るしかない。
     まず、/etc/ssh/ssh_configでトンネルを有効にする。
     $ cd /etc/ssh
     $ sudo nano ssh_config
      #TunnelDevice any:anyの #を削除する。
     $ ssh -L 5901:localhost:5901 192.168.1.251
      192.168.1.251から port:5901で localhostの port:5901にトンネルを作る。
     
   lubuntuの viewerで表示させても真っ黒画面から変わらず。
   なにかの programが不足しているのかもしれない。
   internetを探してみたら、Raspberry Piに gdm3を installすれば、真っ黒画面が
   なくなるという記事を見つけた。
   
 2. Raspi 5に gdm3 install
     Raspi 5 Server側の作業
   $ sudo apt install gdm3
    途中で pop upが出てきたら gdm3を選択して<了解>を clickすれば installは
    進みます。
   installが済んだら gdm3の config fileを修正する。
   $ cd /etc/gdm3
   $ sudo nano daemon.conf
    [xdmcp]
    Enable=true   ←追加
   ctl+o 書き換え ctl+x 終了

   それでも真っ黒画面から変わらず。
   Raspi 5を再起動してみたら表示が出た。わけわからん。    ・・・なんで。
   長かった。ようやく lubuntu側から tiger VNC viewerを表示できた。
   tigervncは、わかりにくい所が多い。私みたいな、しろうとにはむつかしい。

 


----------------------------------------------------------------------------------------------------------------------------
・けいざん美術館
・Blog 油絵もろもろ
・EXCEL VBAであくせく
・けいざんの食べログ


                 Site Designed by Kasio Keizan