また再びCentOSと格闘することになりました。
前回VPSサーバにWineを入れたくて、WindowsXPに近い環境にするためCentOS6 i386を選んだのですが、今回CentOS6はすでにサポート対象外になっており、CentOS8の世界になっていました
そのCentOS8もまもなく次に移行していくようですが。。。
とりあえず前の構築メモを見つつ設定していくと、コマンドが変わっている…
そんなファイルやディレクトリはないと言われるし、、、
yumがdnfに変わっていたり、セキュリティ系のコマンドがiptablesが無くなってfirewalldに変わってしまっていました。
あとは起動したときに自動で起動するように設定するコマンドも変わっていたので焦りました。
chkconfig **** onではなく
systemctl enable ****になりました。
また一から勉強しなおしです
(Ubuntuでの構築も頭をよぎったのですが、Ubuntuを最初から勉強しなおすよりは、少しは知識のあるCentOSで再度チャレンジすることにしました)
でもまぁ、firewalldはiptablesよりも複雑ではない気がします。
当時知識不足もあって(今も知識は全然不足してますが)、iptablesのところの書き方が悪くて散々四苦八苦したことを思うと、ポートを追加するのは
# firewall-cmd --permanent --zone=public --add-port=****/tcp
と書くだけなので意外と簡単
幸い、参考になるサイト(
https://vps-ea.com/centos8-gnome/)があり、そちらを見ながら構築していきました。
しかし、こちらのサイトではWindowsのリモートデスクトップを使う方法だったので、VNCサーバの設定が書いてなくて行き詰まり。。
最初、VNCサーバ起動しようとして
vncserver :*
と入れたら
vncserver has been replaced by a systemd unit.
Please read /usr/share/doc/tigervnc/HOWTO.md for more information.
と出てしまったんですよねー
CentOS8.3以降、設定方法が変わったらしいです。
いろんなサイトを調べまくって何とかビューワーを立ち上げて接続できました
今回一番苦労したのはVNCサーバの設定かも・・・
いろいろ調べて分かったことをメモしておこうと思います。
ディスプレイ番号*のポートを許可
# firewall-cmd --zone=public --add-port=****/tcp --permanent
# firewall-cmd --reload
VNCサーバのパスワード設定
# su - **** (****ユーザに変更)
$ vncpasswd
パスワード入力(****のパスワード)
再入力
Would you like to enter a view-only password(y/n)?
これはnでスルー
rootで1回だけ以下を実行する
$ sudo -s
# echo " session=gnome" >> /etc/tigervnc/vncserver-config-defaults
# restorecon /usr/sbin/vncsession /usr/libexec/vncsession-start
ディスプレイ番号は「5」とする場合
# vi /etc/tigervnc/vncserver.users
を開いて以下を追記
:5=xxxx
各ユーザごとにconfigファイルを編集、パスワードを設定
$ su - ****
$ restorecon -RFv /home/****/.vnc
VNCディスプレイ番号5起動
# systemctl start vncserver@:5.service
# systemctl status vncserver@:5.service
を実行すると以下のような画面が表示されるはずなんですが・・
(下の文言は
https://www.thegeeksearch.com/how-to-configure-vnc-server-in-centos-rhel-8/からコピペしました)
● vncserver@:1.service - Remote desktop service (VNC)
Loaded: loaded (/usr/lib/systemd/system/vncserver@.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2020-12-16 12:24:59 EST; 10s ago
Process: 16171 ExecStart=/usr/libexec/vncsession-start :2 (code=exited, status=0/SUCCESS)
Main PID: 16177 (vncsession)
Tasks: 1 (limit: 4179)
Memory: 1.4M
CGroup: /system.slice/system-vncserver.slice/vncserver@:2.service
‣ 16177 /usr/sbin/vncsession vncuser1 :2
1回目は上のような感じの文言が出たんですよねー
でももう1回最初からやり直した後、ProcessとかMain PIDとか表示されなくて、
Invalid unit name "vncserver@:*.service" was escaped as "vncserver@:***************.service" (maybe you should use systemd-escape?)
●vncserver@:***************.service - Remote desktop service (VNC)
・・(省略)・・
・・(省略)・・
Loaded: loaded (/usr/lib/systemd~省略)
Active: inactive (dead)
と表示されてしまいました。
inactive?!
dead?!
でもなぜかビューワーは起動してちゃんと触れる状態になりました
1行目(Invalid unit name ~)がひょっとしてミソかな?っと勝手に思って、特に何か設定した覚えはないけど問題なく起動してるからいっかぁ。。と放置することにしました
VNC自動起動設定
# systemctl enable vncserver@:5.service
一旦止めて再度起動
# systemctl stop vncserver@:5.service
# systemctl start vncserver@:5.service
前述の
https://www.thegeeksearch.com/how-to-configure-vnc-server-in-centos-rhel-8/
もとても参考になりました。
そして以下2つのサイトもとても参考になりました。ありがとうございます。
https://www.bigbang.mydns.jp/vnc-server-x.htm
https://qiita.com/taconana/items/8a9b07ea686d68587281
ただ、お二方とも書いていらっしゃるのですが
$ vi /home/****/.vnc/config
を開くと、私の場合は新規ファイルとなっていて中身が空っぽでした。
そのため、解像度の設定を行うことが出来ず…
私のやり方が悪いのかなぁ。。
最終的にはGUIでディスプレイ設定が出来たので、そこもまぁ良しとしました
という感じでGWはCentOS8と格闘して、何とかまたVPSサーバを立ち上げることが出来ました。
今後もCentOSがバージョンアップしていく度に問題にぶつかると思いますが、少しずつまた勉強していきたいと思います。
稚拙なメモで申し訳ないですが、参考になれば幸いです。
また詳しい方で何かお気づきのことがありましたら、ご指摘いただけると有難いです。