CentOS/x86_64 7.6(1810)をインストールした際の備忘録です。インストールしたPCのスペックは下記の通りです。
CPUおよびメモリーは定格動作です。メモリーはX.M.P. 1600MHz profileを選択すると、QPIリンクが4.8GT/sに落ちるので、6.4GT/sで動作させるため、定格の1333MHzで使用しています。ちなみに、4.8GT/sに落ちたとき、Windows上のCPU-Zで確認すると、CPUをXeon W3565と認識しました。Core i7 980X交換後は、メモリーをX.M.P. 1600MHz profileを使って1600MHz動作させています。Core i7 980Xでも、QPIリンクは4.8GT/sに落ちるのは変わりません。
HDDは、6台ともICH10R接続しています。AHCIモードです。
インストールメディアは、USBメモリーを使用しました。7.6(1810)のDVDのディスクイメージをRufusでUSBメモリーに入れました。Rufusは、イメージファイルを指定するだけで、簡単にインストールメディアが作成できます。
ディスプレイは、VGA端子からKVMスイッチを介してGDM-F500Rを使用していますが、解像度は1024x768なのですが、リフレッシュレートがおかしく、縦につぶれて半分ぐらいの長さに表示されました。
CentOSのインストール前にWindows10をインストールして動作確認を行っていたのですが、HDDにその際使用していたIntel Rapid Storage TechnologyのRAID情報が残っていたためにインストーラーが異常終了しました。BIOSでRAIDを解除した後、CentOSをインストールしたところ、問題なくインストールできました。
インストーラーでは、HDDはsda〜sdcおよびsde〜sdgとして認識され、インストールメディアであるUSBメモリーはsddとして認識されました。この命名規則は、インストール後も同様でした。
HDDは、2TB 6台でRAID6を組みました。パーティションは下記のようにしました。
マウントポイント | 容量 | 形式 | ファイルシステム | 用途 |
---|---|---|---|---|
/boot | 1GB | RAID6 | XFS | /bootパーティション |
/var | 512GB | LVM on RAID6 | XFS | /varパーティション |
/tmp | 512GB | LVM on RAID6 | XFS | /tmpパーティション |
swap | 12GB | LVM on RAID6 | XFS | swap |
/export | 2TB | LVM on RAID6 | XFS | NFS共有 |
/export2 | 2TB | LVM on RAID6 | XFS | Samba共有 |
/home | 1TB | LVM on RAID6 | XFS | homeディレクトリ |
/ | 残り(約1.25TB) | LVM on RAID6 | XFS | rootパーティション |
CentOSのインストーラーは賢いので、インストール先->パーティションを自分で構成する->手動パーティション設定画面で、上記の順にパーティションを作成していくと意図した通りのパーティショニングをしてくれます。
注意点としては、新規のマウントポイントの追加画面で指定する、「割り当てる領域」に指定する容量は、HDD 1台の容量ではなく、パーティション全体の容量を指定します。(上記の表で容量の欄の値をそのまま入力する。)各HDDのパーティションの容量は、インストーラーがRAIDレベルを考慮した上で適切な量を確保します。
上記の表で形式の項目で「RAID6」のものは、手動パーティション設定画面で「デバイスタイプ」を「RAID」に変更し、「RAIDレベル」で「RAID6」を選択します。
一方、形式の項目で「LVM on RAID6」のものは、手動パーティション設定画面で「デバイスタイプ」に「LVM」が選択されていることを確認し、「Volume Group」に期待するVolume Groupが選択されていることを確認します。なお、ひとつ目のVolume Groupはインストーラーにより自動的に作成され、その名称はデフォルトで「centos」に設定されます。LVM on RAID6にする最初のパーティションを作成する際には、Volume Groupの修正ボタンをクリックし、VOLUME GROUPを設定画面を開きます。VOLUME GROUPを設定画面で、「RAIDレベル」を「RAID6」に変更し、「サイズポリシー」を「できるだけ大きく」に変更します。ここで設定するVolume Groupの内容はパーティションに閉じた設定ではなく、パーティションをまたいで設定が保持されます。同じVolume Groupに作成するパーティションでは、2つ目のパーティション以降はVOLUME GROUPを設定画面を開く必要はありません。
すべてのパーティションを作成した後、完了ボタンを押すと、変更の概要画面でインストーラーがどのようなパーティショニングをするか確認できます。
/bootパーティションは、RAID1にするか悩んだのですが、RAID6にする例がなかったので、試しにRAID6にしてみました。問題なく使用できていますが、インストーラーはブートロックを1台目のHDDにしか書き込まないため、インストール後、残りの5台のHDDにgrub2-install /dev/sd[b-c,e-g]でブートブロックを書き込みました。なお、kernelがアップデートされた際にもブートブロックは1台目のHDDにしか書き込まれないため、残りのHDDには手動でブートブロックの書き込みが必要です。
インストール後のRAID6の構築時間は約10時間でした。ちなみに、Windows10でIntel Rapid Storage Technologyを使用したRAID5(HDDは同じく6台)のRAID構築時間は約72時間でした。
インストールの画面でおかしかったディスプレイの表示はインストール後も同様で、1024x768の解像度で、縦につぶれたようになります。ディスプレイマネージャーの表示は直せませんでしたが、ログイン後の画面は、システムのディスプレイでリフレッシュレートを60Hzにすることで正しい表示になりました。
ディスプレイの表示を根本的に直すには、ディスプレイドライバーを標準でインストールされるNouveauからnVidiaの提供するドライバーに変更する必要がありました。
ドライバーはnVidiaから入手可能です。複数のバージョンがありますが、各バージョンのページの製品サポートリストを参照にビデオカードに適合するバージョンを選択します。私の場合、GeForce GTX 460を使用しているので、390.116を選択しました。
ドライバーのインストールはいくつかの手順を踏む必要がありますが、nVidiaのドキュメントはあまり親切ではありません。インストール自体はダウンロードしたドライバーを実行するだけなのですが、特に"Before you Begin"節の内容は、具体的な手順の記載が少なく、こちらで補足されている内容も十分ではなく、実施するにはkernelモジュールやLinuxのbootに関する知識を必要とします。手順としては、下記になります。
まず、Xサーバーを停止するために、Xディスプレイマネージャーを停止します。OSのrunlevelをmulti-userにします。
# systemctl get-default
graphical.target
# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
# systemctl get-default
multi-user.target
# reboot
次に、Nouveauドライバーが含まれないイメージを作成します。
# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r )-org.img
# dracut --omit-drivers nouveau /boot/initramfs-$(uname -r).img $(uname -r)
Nouveauドライバーが組み込まれないようにします。具体的には、/etc/modprobe.d/modprobe.confと/etc/modprobe.d/nouveau_blacklist.confに下記内容を記載します。
blacklist nouveau
options nouveau modeset=0
rebootします。
# reboot
なお、reboot前のlsmodは下記のようになっていました。
# lsmod
Module Size Used by
nfsd 351388 13
auth_rpcgss 59415 1 nfsd
nfs_acl 12837 1 nfsd
lockd 93952 1 nfsd
grace 13515 2 nfsd,lockd
tcp_lp 12663 0
vfat 17461 1
fat 65950 1 vfat
fuse 91880 1
xt_CHECKSUM 12549 1
iptable_mangle 12695 1
ipt_MASQUERADE 12678 3
nf_nat_masquerade_ipv4 13412 1 ipt_MASQUERADE
iptable_nat 12875 1
nf_nat_ipv4 14115 1 iptable_nat
nf_nat 26787 2 nf_nat_ipv4,nf_nat_masquerade_ipv4
nf_conntrack_ipv4 15053 2
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
xt_conntrack 12760 1
nf_conntrack 133095 5 nf_nat,nf_nat_ipv4,xt_conntrack,nf_nat_masquerade_ipv4,nf_conntrack_ipv4
ipt_REJECT 12541 2
nf_reject_ipv4 13373 1 ipt_REJECT
tun 31740 1
bridge 151336 0
stp 12976 1 bridge
llc 14552 2 stp,bridge
ebtable_filter 12827 0
ebtables 35009 1 ebtable_filter
devlink 48345 0
ip6table_filter 12815 0
ip6_tables 26912 1 ip6table_filter
iptable_filter 12810 1
sunrpc 353407 20 nfsd,auth_rpcgss,lockd,nfs_acl
gpio_ich 13476 0
iTCO_wdt 13480 0
iTCO_vendor_support 13718 1 iTCO_wdt
intel_powerclamp 14419 0
coretemp 13444 0
snd_hda_codec_hdmi 52231 4
kvm_intel 183705 0
kvm 615914 1 kvm_intel
irqbypass 13503 1 kvm
pcspkr 12718 0
sg 40721 0
snd_hda_codec_realtek 102925 1
snd_hda_codec_generic 73855 1 snd_hda_codec_realtek
i2c_i801 22637 0
lpc_ich 21086 0
snd_hda_intel 40356 2
snd_hda_codec 135452 4 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel
snd_hda_core 86045 5 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_hwdep 13608 1 snd_hda_codec
snd_ctxfi 107446 1
snd_seq 62663 0
snd_seq_device 14356 1 snd_seq
i7core_edac 24182 0
snd_pcm 105708 5 snd_ctxfi,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_core
tpm_infineon 17111 0
snd_timer 29912 2 snd_pcm,snd_seq
snd 83815 17 snd_hda_codec_realtek,snd_ctxfi,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_seq_device
soundcore 15047 1 snd
acpi_cpufreq 19775 0
ip_tables 27126 3 iptable_filter,iptable_mangle,iptable_nat
xfs 997127 7
raid456 147102 2
async_raid6_recov 17288 1 raid456
async_memcpy 12768 2 raid456,async_raid6_recov
async_pq 13332 2 raid456,async_raid6_recov
async_xor 13127 3 async_pq,raid456,async_raid6_recov
xor 21411 1 async_xor
async_tx 13509 5 async_pq,raid456,async_xor,async_memcpy,async_raid6_recov
raid6_pq 102527 3 async_pq,raid456,async_raid6_recov
libcrc32c 12644 4 xfs,raid456,nf_nat,nf_conntrack
ata_generic 12923 0
pata_acpi 13053 0
sd_mod 46281 20
crc_t10dif 12912 1 sd_mod
crct10dif_generic 12647 1
crct10dif_common 12595 2 crct10dif_generic,crc_t10dif
uas 22445 0
nouveau 1869689 1
usb_storage 66718 2 uas
crc32c_intel 22094 1
serio_raw 13434 0
ahci 34056 12
libahci 31992 1 ahci
pata_jmicron 12775 0
video 24538 1 nouveau
mxm_wmi 13021 1 nouveau
i2c_algo_bit 13413 1 nouveau
libata 243133 5 ahci,pata_acpi,libahci,ata_generic,pata_jmicron
firewire_ohci 44434 0
drm_kms_helper 179394 1 nouveau
firewire_core 64423 1 firewire_ohci
crc_itu_t 12707 1 firewire_core
r8169 89607 0
syscopyarea 12529 1 drm_kms_helper
sysfillrect 12701 1 drm_kms_helper
mii 14434 1 r8169
sysimgblt 12640 1 drm_kms_helper
fb_sys_fops 12703 1 drm_kms_helper
ttm 114635 1 nouveau
bnx2 89308 0
drm 429744 4 ttm,drm_kms_helper,nouveau
wmi 21636 2 mxm_wmi,nouveau
drm_panel_orientation_quirks 12957 1 drm
dm_mirror 22289 0
dm_region_hash 20813 1 dm_mirror
dm_log 18411 2 dm_region_hash,dm_mirror
dm_mod 124407 23 dm_log,dm_mirror
[root@x58ps modprobe.d]# lsmod | grep nouveau
nouveau 1869689 1
video 24538 1 nouveau
mxm_wmi 13021 1 nouveau
i2c_algo_bit 13413 1 nouveau
drm_kms_helper 179394 1 nouveau
ttm 114635 1 nouveau
drm 429744 4 ttm,drm_kms_helper,nouveau
wmi 21636 2 mxm_wmi,nouveau
#
一方、reboot後のlsmodは下記の通り、Nouveauドライバーが読み込まれていません。
# lsmod
Module Size Used by
xt_CHECKSUM 12549 1
iptable_mangle 12695 1
ipt_MASQUERADE 12678 3
nf_nat_masquerade_ipv4 13412 1 ipt_MASQUERADE
iptable_nat 12875 1
nf_nat_ipv4 14115 1 iptable_nat
nf_nat 26787 2 nf_nat_ipv4,nf_nat_masquerade_ipv4
nf_conntrack_ipv4 15053 2
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
xt_conntrack 12760 1
nf_conntrack 133095 5 nf_nat,nf_nat_ipv4,xt_conntrack,nf_nat_masquerade_ipv4,nf_conntrack_ipv4
ipt_REJECT 12541 2
nf_reject_ipv4 13373 1 ipt_REJECT
tun 31740 1
bridge 151336 0
stp 12976 1 bridge
llc 14552 2 stp,bridge
ebtable_filter 12827 0
ebtables 35009 1 ebtable_filter
ip6table_filter 12815 0
ip6_tables 26912 1 ip6table_filter
devlink 48345 0
iptable_filter 12810 1
iTCO_wdt 13480 0
gpio_ich 13476 0
iTCO_vendor_support 13718 1 iTCO_wdt
mxm_wmi 13021 0
snd_hda_codec_hdmi 52231 4
intel_powerclamp 14419 0
coretemp 13444 0
kvm_intel 183705 0
kvm 615914 1 kvm_intel
snd_hda_codec_realtek 102925 1
pcspkr 12718 0
snd_hda_codec_generic 73855 1 snd_hda_codec_realtek
irqbypass 13503 1 kvm
sg 40721 0
snd_hda_intel 40356 2
snd_hda_codec 135452 4 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel
i2c_i801 22637 0
snd_hda_core 86045 5 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_hwdep 13608 1 snd_hda_codec
snd_ctxfi 107446 1
lpc_ich 21086 0
snd_seq 62663 0
snd_seq_device 14356 1 snd_seq
snd_pcm 105708 5 snd_ctxfi,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_core
i7core_edac 24182 0
snd_timer 29912 2 snd_pcm,snd_seq
snd 83815 17 snd_hda_codec_realtek,snd_ctxfi,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_seq_device
wmi 21636 1 mxm_wmi
soundcore 15047 1 snd
tpm_infineon 17111 0
acpi_cpufreq 19775 0
nfsd 351388 13
auth_rpcgss 59415 1 nfsd
nfs_acl 12837 1 nfsd
lockd 93952 1 nfsd
grace 13515 2 nfsd,lockd
sunrpc 353407 20 nfsd,auth_rpcgss,lockd,nfs_acl
ip_tables 27126 3 iptable_filter,iptable_mangle,iptable_nat
xfs 997127 7
raid456 147102 2
async_raid6_recov 17288 1 raid456
async_memcpy 12768 2 raid456,async_raid6_recov
async_pq 13332 2 raid456,async_raid6_recov
async_xor 13127 3 async_pq,raid456,async_raid6_recov
xor 21411 1 async_xor
async_tx 13509 5 async_pq,raid456,async_xor,async_memcpy,async_raid6_recov
raid6_pq 102527 3 async_pq,raid456,async_raid6_recov
libcrc32c 12644 4 xfs,raid456,nf_nat,nf_conntrack
ata_generic 12923 0
pata_acpi 13053 0
sd_mod 46281 18
crc_t10dif 12912 1 sd_mod
crct10dif_generic 12647 1
crct10dif_common 12595 2 crct10dif_generic,crc_t10dif
uas 22445 0
usb_storage 66718 1 uas
crc32c_intel 22094 1
serio_raw 13434 0
ahci 34056 12
firewire_ohci 44434 0
libahci 31992 1 ahci
pata_jmicron 12775 0
libata 243133 5 ahci,pata_acpi,libahci,ata_generic,pata_jmicron
firewire_core 64423 1 firewire_ohci
bnx2 89308 0
crc_itu_t 12707 1 firewire_core
r8169 89607 0
mii 14434 1 r8169
dm_mirror 22289 0
dm_region_hash 20813 1 dm_mirror
dm_log 18411 2 dm_region_hash,dm_mirror
dm_mod 124407 23 dm_log,dm_mirror
# lsmod | grep nouveau
#
これで、nVidiaのデバイスドライバーをインストールする準備ができました。デバイスドライバーのインストールは下記のようにします。
# sh NVIDIA-Linux-x86_64-390.116.run
kernel構築関連のパッケージがインストールされていない場合、下記のようなメッセージが表示されます。
ERROR: Unable to find the development tool `cc` in your path; please make
sure that you have the package 'gcc' installed. If gcc is installed
on your system, then please check that `cc` is in your PATH.
ERROR: Unable to find the kernel source tree for the currently running
kernel. Please make sure you have installed the kernel source files
for your kernel and that they are properly configured; on Red Hat
Linux systems, for example, be sure you have the 'kernel-source' or
'kernel-devel' RPM installed. If you know the correct kernel source
files are installed, you may specify the kernel source path with the
'--kernel-source-path' command line option.
この場合、必要なパッケージをインストールします。たとえば、下記などです。
# yum install gcc
# yum install kernel-devel
インストール完了後、rebootします。
# reboot
Xディスプレイマネージャーを起動します。
# systemctl get-default
multi-user.target
# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.
# systemctl get-default
graphical.target
# reboot
reboot後、ディスプレイマネージャー画面も1024x768@60Hzで表示できるようになりましたが、高解像度でXサーバーを動作させるためには、xorg.confの設定が必要でした。
まず、Xサーバーに設定ファイルの雛型を作成させるためにX -configureします。作成されたxorg.conf.newのMONITORセクションをGDM-F500R用に編集します。
Section "Monitor"
Identifier "GDM-F500R"
VendorName "Sony Corp."
ModelName "GDM-F500R"
HorizSync 30 - 121
VertRefresh 48 - 160
DisplaySize 388 291
EndSection
また、xorg.conf.newのSCREENセクションも、MONITORとしてGDM-F500Rを使用するように編集します。また、解像度として、1600x1200を使用するように指定します。
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "GDM-F500R"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1600x1200"
EndSubSection
EndSection
最後にxorg.conf.newを/etc/X11/xorg.confに配置します。これで、GDM-F500Rで1600x1200@85Hzで表示できるようになりました。
なお、nVidiaのディスプレイドライバーは、kernelをアップデートすると使えなくなるので、kernelをアップデートした際には再度ドライバーをインストールする必要があります。具体的には、sh NVIDIA-Linux-x86_64-390.116.runします。
CentOS/i386 7.6(1810)をインストールした際の備忘録です。インストールしたPCのスペックは下記の通りです。
CentOSでは、バージョン6をもって、i386アーキテクチャーのサポートが終了しており、バージョン7では、Alternative Architechtureとして提供されています。
インストールイメージは、MinimalをDVD-Rに焼きました。i386には、NetInstall/Minimal/Everythingの3つのイメージしかないのですが、EverythingはDVD2層が必要な容量で、MinimalでもCDの容量を少し越えているのでDVDメディアが必要です。USBメモリーが使用できるのであれば、そちらの方が便利だと思います。ちなみに、PP-DLWはUSBメモリーのbootにも対応しているようですが、Rufusで作成したEverythingのイメージでは起動できませんでした。
インストールでは、特に問題は発生しませんでした。ただし、Minimalイメージでは、ベース環境に最小限のインストールしか選択できませんでした。
インストール後、ベース環境を開発およびクリエイティブワークステーション に変更しました。1時間20分ほど要しました。
# yum groups mark convert
読み込んだプラグイン:fastestmirror
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirror-hk.koddos.net
* extras: mirror-hk.koddos.net
* updates: mirror-hk.koddos.net
Converted old style groups to objects.
# yum groups list
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror-hk.koddos.net
* extras: mirror-hk.koddos.net
* updates: mirror-hk.koddos.net
Available Environment Groups:
最小限のインストール
インフラストラクチャーサーバー
コンピュートノード
ファイルとプリントサーバー
ベーシック Web サーバー
仮想化ホスト
サーバー (GUI 使用)
GNOME Desktop
KDE Plasma Workspaces
開発およびクリエイティブワークステーション
インストール済みグループ:
システム管理ツール
利用可能なグループ
グラフィカル管理ツール
コンソールインターネットツール
システム管理
スマートカードサポート
セキュリティーツール
レガシーな UNIX 互換性
互換性ライブラリー
科学的サポート
開発ツール
完了
# yum groups info 開発およびクリエイティブワークステーション
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror-hk.koddos.net
* extras: mirror-hk.koddos.net
* updates: mirror-hk.koddos.net
Environment Group: 開発およびクリエイティブワークステーション
Environment-Id: developer-workstation-environment
説明: ソフトウェア、ハードウェア、グラフィックまたはコンテンツ開発向けのワークステーションです。
Mandatory Groups:
+base
core
+debugging
+desktop-debugging
+dial-up
+directory-client
+fonts
+gnome-apps
+gnome-desktop
+guest-desktop-agents
+input-methods
+internet-applications
+internet-browser
+java-platform
+multimedia
+network-file-system-client
+performance
+perl-runtime
+print-client
+ruby-runtime
+virtualization-client
+virtualization-hypervisor
+virtualization-tools
+web-server
+x11
Optional Groups:
+additional-devel
+backup-client
+compat-libraries
+development
+dns-server
+emacs
+file-server
+ftp-server
+graphics
+hardware-monitoring
+identity-management-server
+infiniband
+kde-desktop
+large-systems
+legacy-x
+load-balancer
mail-server
+mainframe-access
+mariadb
+network-file-system-client
+office-suite
+perl-web
+php
+platform-devel
+postgresql
+python-web
+remote-desktop-clients
+technical-writing
+virtualization-hypervisor
+web-servlet
# yum groupinstall 開発およびクリエイティブワークステーション
(省略)
Xディスプレイマネージャーが立ち上がるよう設定しました。
# systemctrl set-default graphical.target
# reboot
Xサーバーは問題なく起動しますが、非常に重く、実用的ではありません。
インストールしたPCには、メモリーを8GB搭載していますが、3.5GBしか認識しません。
# free
total used free shared buff/cache available
Mem: 3462692 322760 2742044 9648 397888 2704644
Swap: 1777660 0 1777660
#
dmesgでログを確認すると、PAEオプションの設定がされていないkernelであるとありました。
# dmesg
(省略)
[ 0.004610] L1TF: Kernel not compiled for PAE. No mitigation for L1TF
(省略)
標準リポジトリにはkernel-PAEパッケージは提供されておらず、PAEを有効にしたkernelを利用するには、自前でビルドする必要があるようです。
CentOSをさわる機会が増えてきたので、SJ3とsj3-eggのSRPMパッケージを作りました。SJ3とsj3-eggの組み合わせで、CentOS 7.6(x86_64)、7.6(i386)、7.7(x86_64)、7.7(i386)、8.0(x86_64)でとりあえずの動作を確認しています。
使用されるという奇特な方、ご使用にあたっては、自己責任でお願いします。SRPMパッケージをインストールすれば、SPECファイルやパッチなどを確認できます。
使い方
(activate-input-method 'japanese-sj3-egg)
(deactivate-input-method)
パッケージの説明
SJ3とは
RPMパッケージの作成については、こちらのページが非常に参考になりました。
先にインストールしたCentOS/i386のPCのグラフィックカードを交換しました。新しい構成は下記です。
AMD(ATI)用のドライバーは現在フリー版しかないようなので、OS付属のradeonドライバーでディスプレイ解像度1600x1200@85Hzを実現してみました。具体的には、ArchWikiの記事にしたがいました。
$ xrandr
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
DVI-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*
800x600 60.32 56.25
848x480 60.00
640x480 59.94
DVI-1 disconnected (normal left inverted right x axis y axis)
DIN disconnected (normal left inverted right x axis y axis)
$
$ cvt 1600 1200 85
# 1600x1200 84.95 Hz (CVT 1.92M3) hsync: 107.21 kHz; pclk: 235.00 MHz
Modeline "1600x1200_85.00" 235.00 1600 1728 1896 2192 1200 1203 1207 1262 -hsync +vsync
$ xrandr --newmode "1600x1200_85.00" 235.00 1600 1728 1896 2192 1200 1203 1207 1262 -hsync +vsync
$
$ xrandr
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
DVI-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*
800x600 60.32 56.25
848x480 60.00
640x480 59.94
DVI-1 disconnected (normal left inverted right x axis y axis)
DIN disconnected (normal left inverted right x axis y axis)
1600x1200_85.00 (0x6b8) 235.000MHz -HSync +VSync
h: width 1600 start 1728 end 1896 total 2192 skew 0 clock 107.21KHz
v: height 1200 start 1203 end 1207 total 1262 clock 84.95Hz
$
$ xrandr --addmode DVI-0 1600x1200_85.00
$
$ xrandr
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
DVI-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*
800x600 60.32 56.25
848x480 60.00
640x480 59.94
1600x1200_85.00 84.95
DVI-1 disconnected (normal left inverted right x axis y axis)
DIN disconnected (normal left inverted right x axis y axis)
$
これで、一時的に1600x1200@85Hzで表示することができました。
恒久的に1600x1200@85Hzで表示させる方法は、起動時に毎回xrandrコマンドを実行する方法と、Xサーバーの設定ファイルを編集する方法がありますが、Xサーバーの設定ファイルを使用することにしました。
Section "Monitor"
Identifier "GDM-F500R"
VendorName "Sony Corp."
ModelName "GDM-F500R"
HorizSync 30 - 121
VertRefresh 48 - 160
DisplaySize 388 291
# 1600x1200 84.95 Hz (CVT 1.92M3) hsync: 107.21 kHz; pclk: 235.00 MHz
Modeline "1600x1200_85.00" 235.00 1600 1728 1896 2192 1200 1203 1207 1262 -hsync +vsync
Option "PreferredMode" "1600x1200_85.00"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "GDM-F500R"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1600x1200_85.00"
EndSubSection
EndSection
これで設定完了です。
先にインストールしたCentOS/x86_64で、ディスプレイ解像度1600x1200@85Hzを実現するのにnVidiaのドライバーを導入しました。しかし、radeonドライバーと同じやり方でnouveauドライバーでも1600x1200@85Hzが実現できないか確認しました。
まず、nouveauドライバーを復帰します。
# systemctl get-default
graphical.target
# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
# systemctl get-default
multi-user.target
# reboot
# cd /etc/modprobe.d/
# mv modprobe.conf modprobe.conf.backup
# mv nouveau_blacklist.conf nouveau_blacklist.conf.backup
# ls
dccp-blacklist.conf mlx4.conf truescale.conf
firewalld-sysctls.conf modprobe.conf.backup tuned.conf
lockd.conf nouveau_blacklist.conf.backup
#
# sh nNVIDIA-Linux-x86_64-390.116.run --uninstall
Xサーバーの設定ファイルを用意します。
Section "Monitor"
Identifier "GDM-F500R"
VendorName "Sony Corp."
ModelName "GDM-F500R"
HorizSync 30 - 121
VertRefresh 48 - 160
DisplaySize 388 291
# 1600x1200 84.95 Hz (CVT 1.92M3) hsync: 107.21 kHz; pclk: 235.00 MHz
Modeline "1600x1200_85.00" 235.00 1600 1728 1896 2192 1200 1203 1207 1262 -hsync +vsync
Option "PreferredMode" "1600x1200_85.00"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "GDM-F500R"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1600x1200_85.00"
EndSubSection
EndSection
# systemctl get-default
multi-user.target
# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.
# systemctl get-default
graphical.target
# reboot
これで、nouveauドライバーでも、1600x1200@85Hzで表示できるようになりました。