Contents
1. MiracleLinux
MIRACLE LINUXとは、サイバートラスト株式会社が提供する日本製のLinuxディストリビューションです。2000年6月に日本オラクルとNECにより設立されたミラクル・リナックス社(現:サイバートラスト社)により、業務用からエンタープライズ向けを対象としたOracle Databaseの安定稼働を目的として開発が開始されました。2001年5月にリリースしたVersion2.0からRHELベースとして作られ、2012年1月にリリースされたVersion6.0からは完全なRHELクローンとして作られています。最新のバージョンは2024年9月2日 リリースの9.4となっていますが9.2と同様にインストールできます
国産のRHELクローンとして有名なMIRACLE LINUXは、当初は有償ライセンスの商用OSでしたが、CnetOS8の終了を受け、最新の8.4から無償提供すると発表しました。そのため、現在、CentOS8,CentOS Stream9からの移行先候補として脚光を浴びているOSです。
MiracleLinux9.4 ; ダウンロード
MiracleLinux ISO イメージファイルは次の公式ホームページから取得できます
MiracleLinux 9.4 ; インストール
"MIRACLELINUX-9.4-rtm-x86_64.iso"をダウンロードしUSBディスクにインストールディスクを作成し実機にインストールするか、Vmware playerかVirtualBoxで仮想マシンを作成しインストールします。
インストール方法はMIRACLE LINUX9.2を参照してください。
2.SELinuxの無効化
まず、selinuxを無効化します。selinuxはLinuxの監査やセキュリティを向上させる機能ですが、有効になっているとサービスの動作や、設定内容にかなりの制限が出てきます。そのため、基本的には無効にする場合が多いのが実情です。
SELinuxの動作モード
Enforcing : SELinux機能は有効でアクセス制御も有効
Permissive : SElinuxはwarningを出すが、アクセス制限は行われません
disabled : SElinux機能・アクセス制御ともに無効
①現在のSELinuxの状態
1 2 |
# getenforce Enforcing |
②[permissive]モードへの切り替え
1 2 3 |
# setenforce 0 # getenforce Permissive |
③[enforcing]モードへの切り替え
1 2 3 |
# setenforce 1 # getenforce Enforcing |
④SELinux を完全に無効化する場合は、以下のようにカーネルコマンドラインに selinux=0 を追加して再起動が必要です。
1 2 |
# grubby --update-kernel ALL --args selinux=0 # reboot |
※ SELinux 有効に戻す場合は以下 (変更後は再起動)
1 2 |
# grubby --update-kernel ALL --remove-args selinux # reboot |
3.システムの最新化
OSインストール直後にはできるだけ早期にパッケージのアップデートを行います。
しかし、dnf updateを行うと、カーネルアップデートも同時に行われます。
カーネルアップデートを行うと、システムの再起動やサービスの停止が必要だったり、最悪カーネルパニックが発生して、システムが起動しない場合があります。カーネルを除外してアップデートする方が賢明です。
dnf -y updateの後ろに「--exclude=kernel*」を指定して実行することで
カーネルをアップデート対象から除外することできます。
1 |
# dnf -y update --exclude=kernel* |
4.セキュリティ対策のため停止するサービス
1 2 3 4 5 6 7 8 9 10 11 12 |
# systemctl stop atd.service # systemctl disable atd.service # systemctl stop kdump.service # systemctl disable kdump.service # systemctl stop lvm2-monitor.service # systemctl disable lvm2-monitor.service # systemctl stop mdmonitor.service # systemctl disable mdmonitor.service # systemctl stop smartd.service # systemctl disable smartd.service # systemctl stop dm-event.socket # systemctl disable dm-event.socket |
5.リポジトリーの追加
5.1 PowerTools / HighAvailability
PowerTools と HighAvailability は、miraclelinux-repos をアップデートしリポジトリを有効化することで利用できます。
まずは、miraclelinux-repos をアップデートします。
1 |
# dnf update miraclelinux-repos |
①PowerTools は、以下のようにリポジトリを有効化することで利用が可能です。
1 |
# dnf config-manager --set-enabled 9-latest-PowerTools |
②HighAvailability は、以下のようにリポジトリを有効化することで利用が可能です。
1 |
# dnf config-manager --set-enabled 9-latest-HighAvailability |
5.2 EPEL repository を追加
EPEL は、Fedora プロジェクトによって提供されているリポジトリで、正式名称は Extra Packages for Enterprise Linux です。このリポジトリの特徴は、ディストリビューションのリポジトリに含まれていないもので、よく使われるパッケージが多く含まれているという点です。
EPEL では RHEL 9 向けにリポジトリ追加用のパッケージが提供されているため、MIRACLE LINUX 9 の場合でもパッケージをインストールするのみで利用が可能です。
1 |
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm |
1 |
# vi /etc/yum.repos.d/epel.repo |
1 2 3 4 5 6 7 8 9 10 11 |
[epel] name=Extra Packages for Enterprise Linux $releasever - $basearch # It is much more secure to use the metalink, but if you wish to use a local mirror # place its address here. #baseurl=https://download.example/pub/epel/$releasever/Everything/$basearch/ metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-$releasever&arch=$basearch&infra=$infra&content=$contentdir enabled=1 ← リポジトリー有効(0 : リポジトリー無効) priority=10 ← 優先度を1~99の範囲で指定 gpgcheck=1 countme=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever |
インストール後は、/etc/yum.repos.d に以下のリポジトリファイルが追加され、利用可能な状態となります。
epel-cisco-openh264.repo
epel.repo
epel-testing.repo
5.3 Remi's RPM repository を追加
1 2 |
# dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.2.rpm # dnf -y config-manager --set-enabled remi |
1 |
# vi /etc/yum.repos.d/remi-safe.repo |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# This repository is safe to use with RHEL/CentOS base repository # it only provides additional packages for the PHP stack # all dependencies are in base repository or in EPEL [remi-safe] name=Safe Remi's RPM repository for Enterprise Linux 9 - $basearch #baseurl=http://rpms.remirepo.net/enterprise/9/safe/$basearch/ #mirrorlist=https://rpms.remirepo.net/enterprise/9/safe/$basearch/httpsmirror mirrorlist=http://cdn.remirepo.net/enterprise/9/safe/$basearch/mirror enabled=1 ← リポジトリー有効(0 : リポジトリー無効) priority=10 ← 優先度を1~99の範囲で指定 gpgcheck=1 repo_gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi.el9 [remi-safe-debuginfo] name=Remi's RPM repository for Enterprise Linux 9 - $basearch - debuginfo baseurl=http://rpms.remirepo.net/enterprise/9/debug-remi/$basearch/ enabled=0 gpgcheck=1 repo_gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi.el9 |
インストール後は、/etc/yum.repos.d に以下のリポジトリファイルが追加され、利用可能な状態となります。
remi.repo
remi-modular.repo
remi-safe.repo
6.ネットワークの設定
6.1 ネットワークデバイス名の確認
1 2 3 4 |
# nmcli dev s DEVICE TYPE STATE CONNECTION ens160 ethernet connected ens160 lo loopback connected (externally) lo |
ネットワークデバイス名は「ens160」と分かります
6.2 ホスト名の変更
試しにホスト名をLepardに変更します
1 2 3 4 |
# hostnamectl set-hostname Lepard 再度ログインする [huong@Lepard:~]$ |
6.3 固定IPv4アドレス設定
5.1よりネットワークインターフェースの名称は「ens160」である
MiracleLinux8ではnetwork-scriptsにあったifcfg-xxxファイルを書き換えて変更できましたが、MiracleLinux9では/etc/sysconfig/network-scripts/ディレクトリーの中身は空でありこの方法は使えませんので、「nmcli」コマンドで変更します。
固定IPv4アドレスを「192.168.11.83」に変更します。
「nmcli」コマンドで変更
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# 固定 IPv4 アドレス設定 # nmcli connection modify ens160 ipv4.addresses 192.168.11.83/24 # ゲートウェイ設定 # nmcli connection modify ens160 ipv4.gateway 192.168.11.1 # 参照する DNS 設定 # nmcli connection modify ens160 ipv4.dns 192.168.11.1 # DNS サーチベース 設定 (自身のドメイン名) # nmcli connection modify ens160 ipv4.dns-search [domain] # IP アドレス固定割り当てに設定 # nmcli connection modify ens160 ipv4.method manual # インターフェースを再起動して設定を反映 # nmcli connection down ens160; nmcli connection up ens160 Connection 'ens160' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1) Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2) |
7.Vimの設定
①Vimのインストール
1 |
# dnf -y install vim-enhanced |
②Vimの適用と反映
1 2 3 |
# vi ~/.bashrc # 最終行にエイリアス追記 alias vi='vim' |
1 |
# source ~/.bashrc |
③ユーザー固有環境として Vim の設定
1 |
# vi ~/.vimrc |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
" vim の独自拡張機能を使用 (vi との互換性無し) set nocompatible " 文字コードを指定 set encoding=utf-8 " ファイルエンコードを指定 (先頭から順に成功するまで読み込む) set fileencodings=utf-8,iso-2022-jp,sjis,euc-jp " 自動認識させる改行コードを指定 set fileformats=unix,dos " バックアップを取得 set backup " バックアップを取得するディレクトリを指定 set backupdir=~/backup " 検索履歴を残す世代数 set history=50 " 検索時に大文字小文字を区別しない set ignorecase " 検索語に大文字を混ぜると検索時に大文字を区別する set smartcase " 検索語にマッチした単語をハイライト set hlsearch " インクリメンタルサーチを使用 set incsearch " 行番号を表示 set number " 改行 ( $ ) やタブ ( ^I ) を可視化 set list " 括弧入力時に対応する括弧を強調 set showmatch " ファイルの末尾に改行を入れない set binary noeol " 自動インデントを有効にする set autoindent " 構文ごとに色分け表示 syntax on " syntax on の場合のコメント文の色を変更 highlight Comment ctermfg=LightCyan " ウィンドウ幅で行を折り返す set wrap |