CentOSのPCで音楽ゲームがしたい2

事前準備1 インストールするPCを準備

Windows7をインストールし直そうとしたら失敗してどうにもならないPCが1台。
Windows7サポート切れしてるし古いPCだしもうPCごと見捨てようと思ったけど、ここでおもちゃにすることを選択。
以下、簡単にPCスペック
・CPU i7-950
・メモリ 詳細忘れたけどDDR3?の24GB
・マザボ P6TSE
・グラボ GeForce GT 640
・HDD WD2TB x 3

※P6TSEがUEFI非対応+オンボRAIDで6TBストレージ作成してインストールしたら起動できなかった。
昨今のPCでは無縁の話なんだろうなぁ。

事前準備2 CentOS 8のインストールメディアの作成

インストールCD/DVDを焼くのではなくRufusを使用してUSB bootしてインストールする。
CD/DVDと違って再利用できるためエコ爺も大喜び。
(根拠なき夏エアコン28℃は許していない)

CentOS 8のインストール

BIOSの起動優先順位でUSBを最優先にして起動。
言われるがままにインストールを進める。
「ソフトウェアの選択」はGUI使用前提なので「ワークステーション」を選択。

間違えても後から入れられるだろうしあまり考えず。
あと、最後はユーザ作成はせずrootのパスワード設定のみ。
※過去、xrdpインストール時に既存ユーザでログインできなかったため。
どうせならインストール後にユーザ作ればいいかと。
→ユーザ作成タイミングは関係なく端末の方でGUIで入ってると同じユーザでリモート接続できない?端末とリモートで同時にGUI使わなければ解決?

セットアップ色々

ここからは暫くコマンドでやるので別PCのTeratermから接続して作業。
(PCの置いてある部屋がほぼ物置のため、セットアップはリビングのノートPCからやってる)

# 全体アップデート
[root@localhost ~] dnf update

# EPELリポジトリ追加
[root@localhost ~] dnf install epel-release

# xrdpのインストール
[root@localhost ~] dnf install xrdp tigervnc-server

# xrdpを自動起動にする
[root@localhost ~] systemctl enable xrdp --now 
Created symlink /etc/systemd/system/multi-user.target.wants/xrdp.service → /usr/lib/systemd/system/xrdp.service.

# リモートデスクトップのポートを開ける
[root@localhost ~] firewall-cmd --add-port=3389/tcp --permanent 
success
[root@localhost ~] firewall-cmd --reload
success

# 厨二病感溢れる名前のユーザを作成
[root@localhost ~] useradd dead

# パスワードを変更
[root@localhost ~] passwd dead
ユーザー dead のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正しく更新できました。

# 厨二病患者をwheelグループに入れる
[root@localhost ~] usermod -G wheel dead

参考
初期設定 : リポジトリを追加する
https://www.server-world.info/query?os=CentOS_8&p=initial_conf&f=7

Xrdp サーバーの設定
https://www.server-world.info/query?os=CentOS_8&p=desktop&f=3

これで別PCからリモートデスクトップでログインしてGUIでも動かせる状態になった。
で、リモートデスクトップ接続したら早速こんなこと言われた。

画像1

よく「ToLOVEるからSELinuxは無効にしとけ」とも言われるけど、ちょっと付き合ってみようと思う。

参考:明日はじめるSELinux
https://www.nic.ad.jp/ja/materials/iw/2017/proceedings/d1/d1-3-moriwaka-1.pdf

解決策書いてあったのでやってみたけど

[root@localhost ~] ausearch -c 'geoclue' --raw | audit2allow -M my-geoclue
******************** 重要 ***********************
このポリシーパッケージを有効にするには、以下を実行して下さい:

semodule -i my-geoclue.pp
[root@localhost ~] semodule -X 300 -i my-geoclue.pp
[root@localhost ~] 

書いてあるとおりやったのに…。
しかも2行まとめて実行してしまった(2行目は通った
気を取り直して言われたコマンドを実行。

[root@localhost ~] semodule -i my-geoclue.pp
libsemanage.semanage_direct_install_info: Overriding my-geoclue module at lower priority 300 with module at priority 400.

さっきの2行目の300が上書きされた感あるけど。
一旦放置して次へ。

# 管理者のみrootになれるようにする
# 以下の行を有効化
[root@localhost ~]  vi /etc/pam.d/su
# auth           required        pam_wheel.so use_uid
↓
auth           required        pam_wheel.so use_uid

# root直接ログイン禁止
# 以下の設定のnoに変更
[root@localhost ~] vi /etc/ssh/sshd_config
PermitRootLogin yes
↓
PermitRootLogin no

# sshd再起動
[root@localhost ~] systemctl restart sshd

Teratermをもう一つあげてrootで直接ログインできないことを確認。
続けてwheelグループに入れたユーザでログインしてsu -でrootになれることを確認。

参考
初期設定 : 一般ユーザーを新規追加する
https://www.server-world.info/query?os=CentOS_8&p=initial_conf&f=1

OpenSSH : パスワード認証
https://www.server-world.info/query?os=CentOS_8&p=ssh&f=1

この辺で一旦リブート。
今後は必要に応じてrootになる。

~続き~
rootじゃないので須藤さんに頑張ってもらう。
大いなる力を手に入れよう。

# mozc(Google日本語入力)のインストール
# 初回sudoなので何か言われる
[dead@localhost ~]$ sudo dnf install ibus-mozc

あなたはシステム管理者から通常の講習を受けたはずです。
これは通常、以下の3点に要約されます:

   #1) 他人のプライバシーを尊重すること。
   #2) タイプする前に考えること。
   #3) 大いなる力には大いなる責任が伴うこと。

[sudo] dead のパスワード:

 

インストールした直後だと使えなかったのでまたリブート。
入れてからリブートすれば良かった…。

画像2

リブートしたらMozcが選択可能になった。

続けてグラボのドライバのインストール。
全然わからなくてコピペマシンになったわ。

参考
CentOS7でGeforce GTX1080Tiのドライバをインストールする

https://qiita.com/crgstar/items/2fa7cccfd8309e2fcb72

NVIDIAのドライバをインストールする
https://qiita.com/kkk627/items/9ab959421804341f215e

CentOS 7 - Hardware Support
https://forums.centos.org/viewtopic.php?t=70510

# ドライバの確認
[dead@localhost ~]$ lsmod | grep nouveau
nouveau              2215936  10
video                  45056  1 nouveau
mxm_wmi                16384  1 nouveau
wmi                    32768  2 mxm_wmi,nouveau
i2c_algo_bit           16384  1 nouveau
drm_kms_helper        217088  1 nouveau
ttm                   110592  1 nouveau
drm                   524288  13 drm_kms_helper,ttm,nouveau

# Runレベル5→3にして再起動
[dead@localhost ~]$ sudo systemctl get-default
[sudo] dead のパスワード:
graphical.target

[dead@localhost ~]$ sudo systemctl set-default multi-user.target
Removed /etc/systemd/system/default.target.
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/multi-user.target.

[dead@localhost ~]$ sudo systemctl get-default
multi-user.target

# 須藤の大いなる力を借りずにリブートしようとして怒られる
[dead@localhost ~]$ reboot
Failed to set wall message, ignoring: Interactive authentication required.
Failed to reboot system via logind: Interactive authentication required.
Failed to open initctl fifo: 許可がありません
Failed to talk to init daemon.

# 再起動
[dead@localhost ~]$ sudo reboot

# nouveauを無効化する
# 現行バックアップ
[dead@localhost ~]$ sudo mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
[sudo] dead のパスワード:

# nouveauをオミットしたイメージを作成
[dead@localhost ~]$ sudo dracut --omit-drivers nouveau /boot/initramfs-$(uname -r).img $(uname -r)

# mouveauをblacklistに追加
[dead@localhost ~]$ vi /etc/modprobe.d/modprobe.conf
blacklist nouveau
options nouveau modeset=0

# 作成したファイルをコピー
[dead@localhost ~]$ sudo cp /etc/modprobe.d/modprobe.conf /etc/modprobe.d/nouveau_blacklist.conf

# 再起動
[dead@localhost ~]$ sudo reboot

# 無効化されている(何も出ない
[dead@localhost ~]$ sudo lsmod | grep nouveau

# 必要なパッケージのインストール
[dead@localhost ~]$ sudo dnf install kernel-devel kernel-headers gcc make git pciutils tmux

# DLしたドライバをtmpに配置
# ドライバのインストール
[dead@localhost tmp]$ sudo ./NVIDIA-Linux-x86_64-435.21.run

# 失敗したので色々追加
[dead@localhost ~]$ sudo dnf groupinstall "Development Tools"
[dead@localhost ~]$ sudo dnf install dkms

# ドライバインストールのリトライ
[dead@localhost tmp]$ sudo ./NVIDIA-Linux-x86_64-435.21.run

# 成功したのでリブート
[dead@localhost tmp]$ sudo reboot

# Runレベル戻してリブート
[dead@localhost ~]$ sudo systemctl set-default graphical.target
[sudo] dead のパスワード:
Removed /etc/systemd/system/default.target.
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/graphical.target.
[dead@localhost ~]$ sudo systemctl get-default
graphical.target
[dead@localhost ~]$ sudo reboot

今回はこの辺で。
次はbeatorajaを入れる。

この記事が気に入ったらサポートをしてみませんか?