CentOS7にVNCをインストールする方法を記載します。
パッケージのインストール
VNCのパッケージはいくつか種類がありますが、ここではtigervnc-serverを使用します。
yum -y install tigervnc-server
VNCユーザパスワードの登録
#VNCでログインしたいユーザに切り替えます。 su ユーザ名 #VNCのパスワードを設定します。(6文字以上) vncpasswd
VNCのデータはユーザ毎にホームの.vncディレクトリ内のpasswdファイルに保存されます。
※隠しファイルなので隠しファイルを表示にしてファイル等は探して下さい。
VNCの起動
#ディスプレイ番号、解像度、色深度を指定できる vncserver :2 -geometry 1024x768 -depth 24
※ファイヤーウォールの設定を行なってクライアントから接続してください。
systemctlでサービスの設定を行う(自動起動設定)
1)/etc/systemd/system 内に、VNCサーバのユニットファイルをコピーするか、または、シンボリックリンクを作成します。
ユニットファイルをコピー
cp -a /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service
シンボリックリンクを作成
cd /etc/systemd/system ln -s /lib/systemd/system/vncserver@.service vncserver@:2.service
2)ファイル中の<USER>をログインするユーザ名に変更する
vi /etc/systemd/system/vncserver@:2.service
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :' ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i" PIDFile=/home/<USER>/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :' [Install] WantedBy=multi-user.target
編集が終了したらsystemdに設定ファイルを再度読込みをさせる。
systemctl daemon-reload
3)VNCサービスの自動起動設定し起動する。
systemctl enable vncserver@:2.service
4)VNCサービスの起動を行う。
systemctl start vncserver@:2.service
ファイヤーウォールを設定
VNC接続用のポートを開けます。
TCPポート5900~設定します。
firewall-cmd --permanent --zone=public --add-service=vnc-server firewall-cmd --reload
※4)でエラーが出る場合があるのでOSを再起動してする。クライアントでログインする。
※vncserver@:1 でうまくいかない場合vncserver@:2 以降を使う
画面サイズの設定
vi /usr/bin/vncserver
以下の行を修正します。
$geometry = "1280x1024";