忍者ブログ

◆当blogは、Linuxサーバ構築する際の実際の設定手順を個人的メモとして記載しております。LinuC試験の役に立つ情報があるかも…?

LinuC(Linux技術者認定資格)&リナックスサーバ構築設定事例

   

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【Linux】bonding設定

#=============================
# ■ bonding設定
#-----------------------------
# 作業前の設定状態の確認
ls -l /etc/sysconfig/network-scripts/
nmcli c
nmcli d
#-----------------------------
# 再起動時の再接続を無効化する
nmcli c m ens192 connection.autoconnect no
nmcli c m ens224 connection.autoconnect no
#-----------------------------
# bonding対象のコネクション名を一旦削除
nmcli c del ens192
nmcli c del ens224
#-----------------------------
# コネクション名の削除後の状態確認
nmcli c
nmcli d
#-----------------------------
# bonding デバイスの作成
#-----------------------------
nmcli connection add type bond autoconnect no con-name bond0 ifname bond0 mode active-backup
nmcli c
#-----------------------------
# インタフェースをbonding追加(1個目)
#-----------------------------
nmcli connection add type bond-slave autoconnect no ifname ens192 master bond0
nmcli c
nmcli -f connection c s bond-slave-ens192
#-----------------------------
# インターフェースをbonding追加(2個目)
#-----------------------------
nmcli connection add type bond-slave ifname ens224 master bond0
nmcli c
cat /proc/net/bonding/bond0
#-----------------------------
# bonding 情報
#-----------------------------
nmcli -f ipv4 c s bond0
#-----------------------------
# bonding インターフェースにIPアドレスなどを設定する
#-----------------------------
nmcli c e bond0
nmcli> set ipv4.addresses 192.168.222.99/24
nmcli> p ipv4
nmcli> verify
nmcli> save
nmcli> quit
#-----------------------------
# slave 切替わり設定
#-----------------------------
sed -i -e 's/ONBOOT=no/ONBOOT=yes/' /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens192
sed -i -e 's/ONBOOT=no/ONBOOT=yes/' /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens224
sed -i -e 's/ONBOOT=no/ONBOOT=yes/' /etc/sysconfig/network-scripts/ifcfg-bond0
#-----------------------------
# 再起動時の自動再接続を有効化
nmcli c m bond-slave-ens192 connection.autoconnect yes
nmcli c m bond-slave-ens224 connection.autoconnect yes
nmcli c m bond0 connection.autoconnect yes
#-----------------------------
# ネットワークのサービス再起動
systemctl restart NetworkManager
#-----------------------------
# nmcli 設定反映
nmcli c up bond-slave-ens192
nmcli c up bond-slave-ens224
nmcli c up bond0
#-----------------------------
# ネットワークサービス再起動
#-----------------------------
service network restart; sudo nmcli c up bond-slave-ens192
#=============================
# ■ bonding設定内容の確認
#-----------------------------
nmcli c
nmcli d
#-----------------------------
# 設定ファイルの確認
ls -ltr /etc/sysconfig/network-scripts/
cat /etc/sysconfig/network-scripts/ifcfg-bond0
cat /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens192
cat /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens224
diff /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens192 /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens224
#-----------------------------
# nmcli コマンドの内容
nmcli c show bond0
nmcli c show bond-slave-ens192
nmcli c show bond-slave-ens224
nmcli -f connection c s bond0
nmcli -f connection c s bond-slave-ens192
nmcli -f connection c s bond-slave-ens224
#=============================
# slave 切替テスト
#-----------------------------
#【切替前】
grep 'Active Slave:' /proc/net/bonding/bond0
#-----------------------------
#【slave 切替実行】
ifenslave -c bond0 ens224;nmcli c up bond-slave-ens224
#-----------------------------
#【切替後】
grep 'Active Slave:' /proc/net/bonding/bond0
#-----------------------------
#【slave 切り戻し実行】
ifenslave -c bond0 ens192;nmcli c up bond-slave-ens192
#-----------------------------
#【切り戻し後】
grep 'Active Slave:' /proc/net/bonding/bond0
#=============================
# bond0の設定を変更する場合
#-----------------------------
nmcli c m bond0 ipv4.method manual ipv4.address 192.168.222.99/24
nmcli c m bond0 ipv4.gateway 192.168.222.1
nmcli c m bond0 ipv6.method ignore
nmcli c m bond0 connection.autoconnect yes
nmcli c up bond0
nmcli c down bond0 && nmcli c up bond0
#=============================
# bonding ネットワーク速度設定
#-----------------------------
nmcli c m bond0 802-3-ethernet.auto-negotiate no 802-3-ethernet.speed 100 802-3-ethernet.duplex full
#=============================
# コネクション名を変えずにbonding
#-----------------------------
# bonding デバイスの作成
nmcli connection add type bond autoconnect no con-name bond0 ifname bond0 mode active-backup
nmcli c
#-----------------------------
# bonding にインタフェース追加
nmcli connection add type ethernet slave-type bond con-name ens161 ifname ens161 master bond0
nmcli c m ens161 connection.autoconnect yes
nmcli c up ens161
#-----------------------------
# ネットワークのサービス再起動
systemctl restart NetworkManager
#-----------------------------
cat /etc/sysconfig/network-scripts/ifcfg-ens161
diff /etc/sysconfig/network-scripts/ifcfg-ens161 /etc/sysconfig/network-scripts/ifcfg-bond-slave-ens224
nmcli -f connection c s ens161
nmcli -f connection c s bond0
cat /proc/net/bonding/bond0
ethtool bond0
PR

【Linux】isoのマウント

#-----------------------------
# isoファイルを直接マウントする
#-----------------------------
mkdir -p /mnt/iso
mount -t iso9660 -o loop /work/rhel-8.7-x86_64-dvd.iso /mnt/iso
du -hc /mnt/iso
#-----------------------------
# リポジトリ表示
#-----------------------------
dnf repolist
#-----------------------------
# マウントしたisoをローカルリポジトリにする
#-----------------------------
vi /etc/yum.repos.d/iso.repo
 [Local-Base]
 name=Local - Base                    
 baseurl=file:///mnt/iso/BaseOS
 gpgcheck=1
 enabled=1
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
 [Local-AppStream]
 name=Local - AppStream                          
 baseurl=file:///mnt/iso/AppStream
 gpgcheck=1
 enabled=1
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
#-----------------------------
# リポジトリ表示
#-----------------------------
dnf repolist
dnf install <パッケージ名>
#-----------------------------
# isoファイルをアンマウント
umount /mnt/iso

【Linux】parted/ディスク拡張

#=======================================
#1.仮想ディスクのサイズを大きくする
#=============================
# 2.partedコマンドでパーティションを拡張する
parted /dev/sdc
#-----------------------------
# 以下、parted モード
#-----------------------------
|GNU Parted 3.2
|/dev/sdc を使用
|GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
|(parted) p
|モデル: VMware Virtual disk (scsi)
|ディスク /dev/sdc: 215GB
|セクタサイズ (論理/物理): 512B/512B
|パーティションテーブル: gpt
|ディスクフラグ:
|番号  開始    終了   サイズ  ファイルシステム  名前   フラグ
| 1    1049kB  107GB  107GB   ext4              share
|(parted) resizepart 1
|終了?  [107GB]? -1
|(parted) p
|モデル: VMware Virtual disk (scsi)
|ディスク /dev/sdc: 215GB
|セクタサイズ (論理/物理): 512B/512B
|パーティションテーブル: gpt
|ディスクフラグ:
|番号  開始    終了   サイズ  ファイルシステム  名前   フラグ
| 1    1049kB  215GB  215GB   ext4              share
|(parted) q
#=============================
# 3.ファイルシステムを拡張する
#-----------------------------
e2fsck -f /dev/sdc1
|e2fsck 1.45.6 (20-Mar-2020)
|Pass 1: Checking inodes, blocks, and sizes
|Pass 2: Checking directory structure
|Pass 3: Checking directory connectivity
|Pass 4: Checking reference counts
|Pass 5: Checking group summary information
|SHARE: 142/6553600 files (47.2% non-contiguous), 21923054/26213888 blocks
#-----------------------------
resize2fs /dev/sdc1
|resize2fs 1.45.6 (20-Mar-2020)
|Resizing the filesystem on /dev/sdc1 to 52428300 (4k) blocks.
|The filesystem on /dev/sdc1 is now 52428300 (4k) blocks long.
#=============================
# df -hT
|ファイルシス          タイプ   サイズ  使用  残り 使用% マウント位置
|devtmpfs              devtmpfs   976M     0  976M    0% /dev
|tmpfs                 tmpfs      994M     0  994M    0% /dev/shm
|tmpfs                 tmpfs      994M  8.6M  985M    1% /run
|tmpfs                 tmpfs      994M     0  994M    0% /sys/fs/cgroup
|/dev/mapper/rhel-root xfs         27G  2.7G   24G   10% /
|/dev/sda2             xfs       1014M  157M  858M   16% /boot
|/dev/sda1             vfat       599M  6.8M  593M    2% /boot/efi
|tmpfs                 tmpfs      199M     0  199M    0% /run/user/0
#=============================
ディスクを追加する(ここでは、/dev/sdb が追加されたものとする。)
#-----------------------------
fdisk -l
#=============================
## PVを作成
#-----------------------------
pvcreate /dev/sdb
pvdisplay
#-----------------------------
# VGの詳細を表示する。
vgdisplay -v rhel
#=============================
# 拡張したいLVが含まれるVGにPVを追加
#-----------------------------
vgextend rhel /dev/sdb
#-----------------------------
# VGの詳細を表示する。
# vgdisplay を実行し実行結果の
# " --- Physical volumes ---" の部分を見ることで、
# 新しいPVが追加されたことを確認できる。
vgdisplay -v rhel
|  --- Physical volumes ---
|  PV Name               /dev/sda3
|  PV UUID               0LLsED-ps5K-1PBO-elLH-nR5O-rC9b-Q05F7m
|  PV Status             allocatable
|  Total PE / Free PE    7273 / 0
|  PV Name               /dev/sdb
|  PV UUID               QQB0Lf-fxLL-wja2-7nfK-LFFG-aEtj-0oaJxs
|  PV Status             allocatable
|  Total PE / Free PE    51199 / 51199
#-----------------------------
# LVのサイズを確認する。
lvdisplay | grep "LV Path\|LV Size"
#=============================
## LVの拡張
# lvextendコマンドで該当するLVを拡張する
# (+100%FREEを指定すると、拡張可能な最大値までボリュームサイズを拡張することができる)
lvextend -l +100%FREE /dev/rhel/root
#-----------------------------
# LVのサイズを確認する。
lvdisplay | grep "LV Path\|LV Size"
#-----------------------------
# ファイルシステムのリサイズ
xfs_growfs /dev/rhel/root
#=============================
# df -hT
|ファイルシス          タイプ   サイズ  使用  残り 使用% マウント位置
|devtmpfs              devtmpfs   976M     0  976M    0% /dev
|tmpfs                 tmpfs      994M     0  994M    0% /dev/shm
|tmpfs                 tmpfs      994M  8.6M  985M    1% /run
|tmpfs                 tmpfs      994M     0  994M    0% /sys/fs/cgroup
|/dev/mapper/rhel-root xfs        227G  4.1G  223G    2% /
|/dev/sda2             xfs       1014M  157M  858M   16% /boot
|/dev/sda1             vfat       599M  6.8M  593M    2% /boot/efi
|tmpfs                 tmpfs      199M     0  199M    0% /run/user/0

【Linux】Kdump設定

# Kdump出力先の設定
cat /etc/kdump.conf
cat /etc/kdump.conf | grep path

# Kdump サービスの確認
systemctl status kdump.service

# grubとカーネルの確認
cat /etc/default/grub | grep crashkernel
cat /sys/kernel/kexec_crash_loaded

# クラッシュダンプ取得コマンド(※リブート発生するので注意)
# echo 1 > /proc/sys/kernel/sysrq
# echo c > /proc/sysrq-trigger
# クラッシュダンプ出力の確認
# vmcore-dmesg.txt これが出力されていたら、cat等で見るとクラッシュ原因が大まかにわかる
# "sysrq_handle_crash" はコマンドによるクラッシュダンプのテストという意味
tree /var/crash/

# クラッシュダンプのメッセージ確認
dmesg | grep Reserving
dmesg | grep "for crashkernel"
# カーネルパニック (システムクラッシュ)のパラメータ設定
vi /etc/sysctl.conf
 ⇒ パラメータ設定
cat /etc/sysctl.conf

# /etc/sysctl.conf設定ファイルの反映
sysctl -p

【Linux】fdisk/root領域拡張

## root領域のディスクサイズを拡張する場合
## 【事前準備】
##  ※事前に仮想マシン停止時にrootのディスク容量を拡張しておく
##   仮想マシン設定からハートディスクを選択し、「展開」ボタンを押下する
##   「ディスク容量の拡張」画面から、以下のように変更する
##     【例】ディスク最大サイズ 20GB ⇒ 30GB
#=============================
# ■ ディスク情報(変更前)
#-----------------------------
df -hT ; echo +++ ; df -hT | grep dev ; echo +++ ; df -hT | grep -v tmpfs
#-----------------------------
df -hT | grep root
#=============================
# ■ パーティション情報(変更前)
#-----------------------------
fdisk -l ; echo +++ ; fdisk -l | grep LVM ; echo +++ ; fdisk -l | grep /mapper
#-----------------------------
fdisk -l | grep root
#=============================
# ■ lsblk情報(変更前)
#-----------------------------
lsblk ; echo +++ ; lsblk | grep lvm
#-----------------------------
lsblk | grep root
#=============================
# ■ マウント情報(変更前)
#-----------------------------
mount | grep mapper ; echo +++ ; mount | grep ^/dev/
#-----------------------------
mount | grep root
#=============================
# ■ 仮想マシン/BIOS設定
#-----------------------------
## ※一旦、仮想マシンを停止させて以下を設定する。
## <仮想マシン名>.vmx に以下を追記する
##  bios.bootDelay = "10000"
#-----------------------------
## ※仮想マシンの電源ONで以下を実施する
##  "F2"キー連打でBIOS画面を開く
##  "CD-ROM Drive"の起動順序を"Hard Drive"より優先するよう設定する
##  "Exit Saving Changes"で設定変更を反映する
#=============================
# ■ レスキューモード
#-----------------------------
# ※ レスキューモード開始
# (ブートメディアから起動するようにして、OS再起動)
#-----------------------------
# ① 画面メニューから以下を選択
 ⇒ "Troubleshooting"を選択
 ⇒ "Rescue a Red Hat Enterprise Linux system"を選択
#-----------------------------
# ② 既存のパーティションの自動マウントのスキップ
 ⇒ "3) Skip to shell"を選択
#-----------------------------
# ③ "Please press ENTER to get a shell:"
 ⇒ Enter押下でレスキューモード起動する
#-----------------------------
# ④ キーボードタイプを日本語配列に変更する
localectl set-keymap jp106
#-----------------------------
# ⑤ ネットワークインターフェースの設定
# ip addr add 192.168.222.12/24 dev ens160
nmcli con sh
nmcli con mod ens160 ipv4.method manual ipv4.addr 192.168.222.12/24
nmcli con up ens160
nmcli con sh
#-----------------------------
# ⑥ SSHサービス設定コピー
ls -l /etc/ssh/sshd_config*
cp -p /etc/ssh/sshd_config.anaconda /etc/ssh/sshd_config
ls -l /etc/ssh/sshd_config*
#-----------------------------
# ⑦ SSHサービス起動
systemctl start sshd
systemctl status sshd
 TeraTermから、パスワード無しのrootでログインする。
# SSHサービスの設定確認
cat /etc/ssh/sshd_config ; echo +++ ; cat /etc/ssh/sshd_config | grep PermitEmptyPasswords
#=============================
# ■ パーティション拡張(fdiskモード開始)
# レスキューモード状態で、アンマウントしているディスクパーティションを変更する
# fdiskコマンドで、rootのパーティションを一旦削除し再作成する
# (削除前と再作成するパーティションの開始セクタを同じにすればデータは消えずに引き継げる)
#-----------------------------
fdisk /dev/nvme0n1
コマンド (m でヘルプ): p ### パーティション情報を表示します
コマンド (m でヘルプ): d ### パーティションを削除します
 Partition number (1,2, default 2): 2
コマンド (m でヘルプ): p ### パーティション情報を表示します
 対象パーティションが消えたことを確認する
コマンド (m でヘルプ): n ### 新しいパーティションを追加します
 ※全てデフォルトを選択して進む(最初と最後のセクター指定もデフォルト)
 Select (default p): p
  Partition number (2-4, default 2): 2
   First sector (※1-※2, default ※1): ※1
    Last sector, +sectors or +size{K,M,G,T,P} (※1-※2, default ※2): ※2
     Do you want to remove the signature? [Y]es/[N]o: N 【必ず"N"を選択】
コマンド (m でヘルプ): p ### パーティション情報を表示します
 対象パーティションが作成されたことを確認する
コマンド (m でヘルプ): t ### パーティションタイプを変更します
 Partition number (1,2, default 2): 2
  Hex code (type L to list all codes): 8e
 パーティションタイプを"LVM"に設定する
コマンド (m でヘルプ): w ### パーティション情報をディスクに書き込んで終了します
 (fdiskモード終了し、OS再起動で設定反映させる)
#-----------------------------
# ※ レスキューモード終了
# (ブートメディアを取り出し、OS再起動)
##  "F2"キー連打でBIOS画面を開く
##  "Hard Drive"の起動順序を"CD-ROM Drive"より優先するよう設定する
##  "Exit Saving Changes"で設定変更を反映する
reboot
#=============================
# ■ OS再起動後のパーティションサイズ確認
#-----------------------------
fdisk /dev/nvme0n1
# %%% パーティションサイズの変更を確認する %%%
コマンド (m でヘルプ): p ### パーティション情報を表示します
# %%% fdisk終了 %%%
コマンド (m でヘルプ): q ### 変更点を保存せずに終了します
#=============================
# ■ Phisical Volume 拡張
#-----------------------------
pvdisplay | grep GiB
pvscan ; echo +++ ; pvdisplay
pvresize /dev/nvme0n1p2
# %%% サイズの拡張確認 %%%
pvscan ; echo +++ ; pvdisplay
pvdisplay | grep GiB
#=============================
# ■ LogicalVolume 拡張
#-----------------------------
lvdisplay | grep GiB
lvscan ; echo +++ ; lvdisplay
lvextend -l +100%FREE /dev/rhel/root
# %%% サイズの拡張確認 %%%
lvscan ; echo +++ ; lvdisplay
lvdisplay | grep GiB
#=============================
# ■ ファイルシステム 拡張
#-----------------------------
df -hT
# %%% 整合性チェック %%%
## xfs_growfs /dev/rhel/root
e2fsck -f /dev/mapper/rhel-root
# %%% ファイルシステムを拡張する %%%
resize2fs /dev/mapper/rhel-root
# %%% サイズの拡張確認 %%%
df -hT
#=============================
# ■ ディスク情報(変更後)
#-----------------------------
df -hT ; echo +++ ; df -hT | grep dev ; echo +++ ; df -hT | grep -v tmpfs
#-----------------------------
df -hT | grep root
#=============================
# ■ パーティション情報(変更後)
#-----------------------------
fdisk -l ; echo +++ ; fdisk -l | grep LVM ; echo +++ ; fdisk -l | grep /mapper
#-----------------------------
fdisk -l | grep root
#=============================
# ■ lsblk情報(変更後)
#-----------------------------
lsblk ; echo +++ ; lsblk | grep lvm
#-----------------------------
lsblk | grep root
#=============================
# ■ マウント情報(変更後)
#-----------------------------
mount | grep mapper ; echo +++ ; mount | grep ^/dev/
#-----------------------------
mount | grep root
# %%% LVMコマンド(情報取得) %%%
#=============================
# ■ Phisical Volume情報(物理ボリューム)
#-----------------------------
pvscan ; echo +++ ; pvs -v ; echo +++ ; pvdisplay -v
#=============================
# ■ Volume Group情報(領域プール)
#-----------------------------
vgscan ; echo +++ ; vgs -v ; echo +++ ; vgdisplay -v
#=============================
# ■ LogicalVolume情報(論理ボリューム)
#-----------------------------
lvscan ; echo +++ ; lvs -v ; echo +++ ; lvdisplay -v

【RHEL】デバイス名の固定化

※インタフェース名を固定化する設定
#=============================
#【表示】⇒【デバイス名】(変更前)
#-----------------------------
nmcli c ; echo +++ ; nmcli d ; echo +++ ; ifconfig ; echo +++ ; ip link show
#=============================
#【表示】⇒【MACアドレス】(変更前)
#-----------------------------
ifconfig ; echo +++ ; ifconfig | grep ether ; echo +++ ; nmcli d show | grep GENERAL.HWADDR
#=============================
#【表示】⇒【タイプ番号】(変更前)
#-----------------------------
cat /sys/class/net/ens160/type ; echo +++ ; cat /sys/class/net/eth0/type
#=============================
#【表示】⇒【/etc/udev/rules.d/70-persistent-net.rules】(変更前)
#-----------------------------
ls -ltr /etc/udev/rules.d/ ; echo +++ ; ls -l /etc/udev/rules.d/70-persistent-net.rules ; echo +++ ; cat /etc/udev/rules.d/70-persistent-net.rules
#=============================
#【設定】⇒【/etc/udev/rules.d/70-persistent-net.rules】
#【例】SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5b:f6:80", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
#-----------------------------
vi /etc/udev/rules.d/70-persistent-net.rules
#=============================
#【表示】⇒【/etc/udev/rules.d/70-persistent-net.rules】(変更後の確認)
#-----------------------------
ls -ltr /etc/udev/rules.d/ ; echo +++ ; ls -l /etc/udev/rules.d/70-persistent-net.rules ; echo +++ ; cat /etc/udev/rules.d/70-persistent-net.rules
#=============================
#【設定】⇒【initrd RAM ディスクイメージの再生成】
#-----------------------------
dracut -f
#=============================
#【表示】⇒【接続プロファイル】
#-----------------------------
nmcli -f device,name connection show
#=============================
#【設定】⇒【接続プロファイルのコネクション名を削除する】
#-----------------------------
nmcli connection modify ens160 connection.interface-name ""
## # %%% この手順は実施不要の為、スキップする %%%
## #=============================
## #【設定】⇒【接続プロファイル設定(eth0とens160の組み合わせで一時的に設定する)】
## #-----------------------------
## nmcli connection modify ens160 match.interface-name "eth0 ens160"
## # %%% この手順は実施不要の為、スキップする %%%
## #=============================
## #【リブートして設定を反映する】
## #-----------------------------
## reboot
#=============================
#【表示】⇒【デバイス名】(現在の状態確認)
#-----------------------------
nmcli c ; echo +++ ; nmcli d ; echo +++ ; ifconfig ; echo +++ ; ip link show
#=============================
#【設定】⇒【接続プロファイル設定(eth0)】
#-----------------------------
nmcli connection modify ens160 match.interface-name "eth0"
#=============================
#【設定】⇒【デバイス名と同じようにコネクション名を変更する】
#-----------------------------
nmcli c mod ens160 connection.id eth0
#=============================
#【表示】⇒【grub設定】(変更前)
#-----------------------------
cat /etc/default/grub ; echo +++ ; cat /etc/default/grub | grep net.ifnames=0
#=============================
#【設定】⇒【grub設定に"net.ifnames=0"を追記する(NICの自動命名を無効化)】
#【例】GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/rhel-swap rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap net.ifnames=0 rhgb quiet selinux=0"
#-----------------------------
vi /etc/default/grub
#=============================
#【表示】⇒【grub設定】(変更後の確認)
#-----------------------------
cat /etc/default/grub ; echo +++ ; cat /etc/default/grub | grep net.ifnames=0
#=============================
#【設定】⇒【grub設定を反映する】
#-----------------------------
grub2-mkconfig -o /boot/grub2/grub.cfg
#=============================
#【設定】⇒【変更後のgrub設定を反映させる為、OS再起動】
# %%% Teraterm接続が切断される為、注意 %%%
#-----------------------------
reboot
## # %%% この手順は実施不要の為、スキップする %%%
## #=============================
## # %%% Teraterm接続できない場合、コンソールからネットワークを再設定する %%%
## #【設定】⇒【コネクションを一旦削除して設定を初期化する】
## #【設定】⇒【eth0ネットワーク設定】(NAT接続⇒GW無し)
## #-----------------------------
## nmcli c del ens160
## nmcli c del eth0
## nmcli c add type ethernet con-name eth0 ifname eth0 ip4 192.168.222.12/24
## nmcli c m eth0 ipv4.gateway 0.0.0.0
## nmcli connection up eth0
#=============================
#【表示】⇒【デバイス名】(変更後の確認)
#-----------------------------
nmcli c ; echo +++ ; nmcli d ; echo +++ ; ifconfig ; echo +++ ; ip link show
#=============================
#【表示】⇒【MACアドレス】(変更後の確認)
#-----------------------------
ifconfig ; echo +++ ; ifconfig | grep ether ; echo +++ ; nmcli d show | grep GENERAL.HWADDR
#=============================
#【表示】⇒【タイプ番号】(変更後の確認)
#-----------------------------
cat /sys/class/net/ens160/type ; echo +++ ; cat /sys/class/net/eth0/type
#=============================
#【設定】⇒【インタフェース設定ファイル名の変更】
#-----------------------------
ls -l /etc/sysconfig/network-scripts/*
mv /etc/sysconfig/network-scripts/ifcfg-ens160 /etc/sysconfig/network-scripts/ifcfg-eth0
ls -l /etc/sysconfig/network-scripts/*
cat /etc/sysconfig/network-scripts/ifcfg-eth0
#=============================
#【設定】⇒【アクティベート】
#-----------------------------
nmcli connection up eth0
#=============================
# %%% OS再起動(リブートして、Teraterm接続を確認する) %%%
#-----------------------------
reboot

【RHEL】EPELからxrdp追加

#=============================
#【外部接続の確認(インターネット疎通)】
ping -c 3 8.8.8.8 ; echo ;ping -c 3 google.co.jp
#=============================
#【ローカルリポジトリの確認】
#-----------------------------
dnf repolist
ls -ltr /etc/yum.repos.d/
ls -ltr /etc/yum.repos.d/redhat.repo
cat /etc/yum.repos.d/redhat.repo
#=============================
#【EPELリポジトリをダウンロードする】
dnf install --downloadonly --destdir . https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
find / -name epel-release-latest-8.noarch.rpm
ls -l /var/cache/dnf/commandline-a76fe31ae310b0c7/packages/epel-release-latest-8.noarch.rpm
#=============================
#【ダウンロードしたEPELリポジトリをインストールする】
dnf localinstall /var/cache/dnf/commandline-a76fe31ae310b0c7/packages/epel-release-latest-8.noarch.rpm
dnf update
rpm -qa | grep epel
dnf repolist
ls -ltr /etc/yum.repos.d/
#=============================
#【リモート接続用パッケージ(xrdp)の追加】
dnf --disablerepo="*" --enablerepo="epel" list available
dnf --disablerepo="*" --enablerepo="epel" list available | egrep "(xrdp|tigervnc-server)"
dnf --enablerepo="epel" install xrdp
#=============================
#【サービス(xrdp)設定】
systemctl status xrdp
systemctl start xrdp
systemctl enable xrdp
systemctl status xrdp
#=============================
#【リモートデスクトップ接続用のIPアドレス確認】
ip a | grep "inet "
 ⇒確認したIPアドレスを使ってリモートデスクトップ接続を試みる

【Linux】仮想マシンの初期設定

※NIC設定は「NAT接続」であること
#=============================
#■ IPアドレス設定
#=============================
## #-----------------------------
##  ##[例]## nmcli c add type ethernet con-name ens192 ifname ens192 ip4 <IPアドレス>/24 gw4 <GWアドレス>
##  ##[例]## nmcli c m ens192 ipv4.gateway <GWアドレス>
##  ##[例]## nmcli c m ens192 ipv4.gateway 0.0.0.0
#-----------------------------
#【事前確認】
nmcli c ; echo +++ ; nmcli d
#-----------------------------
#【コネクションを一旦削除して設定を初期化する】
nmcli c del ens160
## nmcli c del ens224
#-----------------------------
#【実行後】
nmcli c ; echo +++ ; nmcli d
#-----------------------------
#【ens160ネットワーク設定】(NAT接続⇒GW無し)
nmcli c add type ethernet con-name ens160 ifname ens160 ip4 192.168.222.12/24
nmcli c m ens160 ipv4.gateway 0.0.0.0
## #-----------------------------
## #【ens224ネットワーク設定】(ブリッジ接続⇒GW有り)
## nmcli c add type ethernet con-name ens224 ifname ens224 ip4 192.168.1.132/24
## nmcli c m ens224 ipv4.gateway 192.168.1.1
#-----------------------------
#【アクティベート】
nmcli c up ens160
## nmcli c up ens224
#=============================
#■ ネットワーク状態の確認コマンド
#=============================
#-----------------------------
#【コネクション】
nmcli c ; echo +++ ; nmcli c show ens160 | egrep "(ip|IP)"
## nmcli c ; echo +++ ; nmcli c show ens224 | egrep "(ip|IP)"
#-----------------------------
#【デバイス】
nmcli d ; echo +++ ; nmcli d show ens160 | egrep "(ip|IP)"
## nmcli d ; echo +++ ; nmcli d show ens224 | egrep "(ip|IP)"
#-----------------------------
#【ネットワーク情報】
ip a ; echo +++ ; ip a | grep " inet "
#-----------------------------
#【インタフェース情報】
ifconfig -a ; echo +++ ; ifconfig -a | grep " inet "
#-----------------------------
#【ルーティング情報】
route -n
#-----------------------------
#【ネットワーク情報】
ip route
#-----------------------------
#【設定ファイルの更新日時の確認】
ls -l /etc/sysconfig/network-scripts/
ls -l /etc/sysconfig/network-scripts/ifcfg-ens160
## ls -l /etc/sysconfig/network-scripts/ifcfg-ens224
#-----------------------------
#【ens160設定内容】
cat /etc/sysconfig/network-scripts/ifcfg-ens160
egrep "BOOTPROTO|IPADDR|PREFIX|GATEWAY" /etc/sysconfig/network-scripts/ifcfg-ens160
## #-----------------------------
## #【ens224設定内容】
## cat /etc/sysconfig/network-scripts/ifcfg-ens224
## egrep "BOOTPROTO|IPADDR|PREFIX|GATEWAY" /etc/sysconfig/network-scripts/ifcfg-ens224
#-----------------------------
#【デバイス番号の確認(ensXXX)】
lspci -v | grep "Physical Slot"
#=============================
#■ nftables/Firewallの無効化
#=============================
#-----------------------------
#【firewalldのバックエンド確認】
cat /etc/firewalld/firewalld.conf | egrep -v "(^$|^#)" | grep "FirewallBackend"
#-----------------------------
#【サービス状態確認】
systemctl status firewalld --no-pager
systemctl status nftables --no-pager
systemctl -t service list-unit-files | egrep "(iptables|nftables|firewalld)"
#-----------------------------
#【ファイアウォール無効化】
systemctl disable firewalld
systemctl stop firewalld
#-----------------------------
#【nftables無効化】
systemctl disable nftables
systemctl stop nftables
#-----------------------------
#【サービス状態確認】
systemctl status firewalld --no-pager
systemctl status nftables --no-pager
systemctl -t service list-unit-files | egrep "(iptables|nftables|firewalld)"
#=============================
#【タイムゾーン設定】
#=============================
#-----------------------------
#【timezone設定確認】
timedatectl status
#-----------------------------
#【timezone設定⇒JSTに変更する】
timedatectl set-timezone Asia/Tokyo
#-----------------------------
#【timezone設定確認】
timedatectl status
#=============================
#【Chrony時刻同期】
#=============================
chronyc --version
#-----------------------------
#【時刻同期の確認】
date
chronyc sources
#-----------------------------
#【Chrony設定】
systemctl status chronyd --no-pager
#-----------------------------
#【"200 OK"で時刻同期完了】
chronyc makestep
#-----------------------------
#【強制同期】
chronyc -a makestep
#-----------------------------
#【システムクロックとハードウェアクロックの同期】
chronyc -a trimrtc
#-----------------------------
#【chrony設定ファイル確認】
cat /etc/chrony.conf | grep allow
cat /etc/chrony.conf | egrep -v "(^$|^#)"
ls -ltr /var/log/chrony
#-----------------------------
#【時刻同期の確認】
date
chronyc sources
#=============================
#■ サービスの確認
#=============================
#-----------------------------
#【サービス一覧の表示】
systemctl -t service list-unit-files --no-pager
#-----------------------------
#【サービス一覧(有効)】
systemctl -t service list-unit-files | grep enabled
#-----------------------------
#【サービス一覧(無効)】
systemctl -t service list-unit-files | grep disabled
#=============================
#■ dnfパッケージの確認
#=============================
#-----------------------------
#【パッケージ一覧の表示】
dnf list --all
#-----------------------------
#【インストール済みパッケージ一覧の表示】
dnf list --installed
#-----------------------------
#【リポジトリ一覧の表示】
dnf repolist
#-----------------------------
#【パッケージ情報の検索】
## dnf info <パッケージ名>
dnf info gzip
#=============================
#■ SELinux設定(設定反映に再起動が必要)
#=============================
#-----------------------------
#【GRUB2 メニューエントリーの確認】
cat /etc/default/grub | grep selinux=0
grubby --info=ALL | grep selinux=0
#-----------------------------
#【SELinux設定確認】
sestatus | grep status
getenforce
#-----------------------------
#【SELinux設定ファイルの確認】
cat /etc/selinux/config | grep "SELINUX"
#-----------------------------
#【カーネルコマンドライン⇒SELinuxの無効化】
grubby --update-kernel ALL --args selinux=0
#-----------------------------
#【再起動⇒SELinux設定反映】
reboot
#-----------------------------
#【SELinux設定確認】
sestatus | grep status
getenforce
#-----------------------------
#【GRUB2 メニューエントリーの確認】
cat /etc/default/grub | grep selinux=0
grubby --info=ALL | grep selinux=0
## ※以下は非推奨な設定方法なのでスキップする
## #-----------------------------
## #【"SELINUX=disabled"を設定する(非推奨)】
## ## vi /etc/selinux/config
## #-----------------------------
## #【設定後の確認】
## ## cat /etc/selinux/config | grep "SELINUX"
#=============================
#■ DISK状態の確認コマンド
#=============================
#-----------------------------
#【ディスク情報の表示】
df -hT ; echo +++ ; df -hT | grep dev ; echo +++ ; df -hT | grep -v tmpfs
#-----------------------------
#【lsblk情報】
lsblk ; echo +++ ; lsblk | grep lvm
#-----------------------------
#【fdisk情報】
fdisk -l ; echo +++ ; fdisk -l | grep LVM ; echo +++ ; fdisk -l | grep /mapper ; echo +++ ; fdisk -l | grep "GiB,"
#-----------------------------
#【マウント情報】
mount | grep mapper
#-----------------------------
#【fstab情報】
cat /etc/fstab | grep -v "^$" | grep -v "^#"
#-----------------------------
#【LV情報】
lvdisplay -v ; echo +++ ; lvdisplay -v | grep /dev
#=============================
#■ パーティション設定
#=============================
#-----------------------------
#【fdisk状態の確認】
fdisk -l ; echo +++ ; fdisk -l | egrep "(GiB,|Linux LVM)"
fdisk -l | egrep "(GiB,|Linux LVM)" | grep -v "mapper"
## #-----------------------------
## #【fdisk⇒パーティション作成】
## fdisk /dev/nvme0n5
##  > Partition type:
##  > Select (default p):
##  > パーティション番号 (1-4, default 1):
##  > 最初 sector (xxxx-xxxxxxxx, 初期値 xxxx):
##  > Last sector, +sectors or +size{K,M,G}
##  > コマンドモードのtにてパーティションタイプを変更
##  > L
##  > 8e
## #-----------------------------
## #【GPT⇒パーティション作成】
##  ## > parted /dev/nvme0n5
##  ## > mklabel gpt
##  ## > p
##  ## > mkpart
##  ## >   primary
##  ## >   xfs
##  ## >   1
##  ## >   <最大値>
##  ## > set 1 lvm on
##  ## > print
##  ## > quit
## #-----------------------------
## #【ファイルシステム設定】
## mkfs -t xfs /dev/nvme0n5p1
## #-----------------------------
## #【マウントポイントのディレクトリ作成】
##  ## mkdir /mount_DISK
## #-----------------------------
## #【ディレクトリにマウントする】
##  ## mount -t xfs /dev/nvme0n5p1 /mount_DISK
## #-----------------------------
## #【マウント状態の確認】
##  ## df -hT |grep /dev/nvme
##  ## df -hT |grep /mount_DISK
## #-----------------------------
## # アンマウント(マウント解除)
##  ## umount /mount_DISK
## #=============================
## #■ LVM設定
## #=============================
## #-----------------------------
## #【PV作成】
## pvdisplay
## pvcreate /dev/nvme0n5p1
## pvdisplay
## #-----------------------------
## #【VG拡張(既存のVGに追加)】
## vgdisplay
## vgextend rhel /dev/nvme0n5p1
## vgdisplay
## #-----------------------------
## #【LV拡張(既存のLVに追加)】
## lvdisplay
## lvextend -l +100%FREE /dev/rhel/var
##  ## lvcreate -n <LVの名前> -l 100%FREE <VGの名前>
## lvdisplay
## #-----------------------------
## #【LVMのファイルシステム拡張】
## df -hT | grep xfs
## xfs_growfs /dev/rhel/var
## df -hT | grep xfs

【RHEL】EPELリポジトリ

※インターネットに接続してなくても、直接EPELリポジトリを追加インストールする方法
 EPEL(Extra Packages for Enterprise Linux)
#=============================
# ①ローカルであることを確認
# ⇒「connect: ネットワークに届きません」を確認
ping 8.8.8.8
#=============================
# ②isoメディアをマウントする
mount /dev/cdrom /media
#=============================
# ③isoメディアのマウント確認
df -h | grep media
#=============================
# ④work配下に、ネットからダウンロードしたEPELリポジトリのrpmファイルを指定してインストールする
dnf install /work/epel-release-latest-8.noarch.rpm
#=============================
# ⑤EPELリポジトリがインストールされていることを確認する
rpm -qa | grep epel
#=============================
# ⑥リポジトリのリストにEPELがあることを確認する
# ⇒「epel  Extra Packages for Enterprise Linux 8 - x86_64」を確認
dnf repolist
##############################
yumローカルリポジトリ作成
1.特定の場所にrpmファイルを格納する。
  ※仮に/var/yum/update/に格納するとする。
# **ls -1 /var/yum/update/*/*.rpm**
/var/yum/update/RHSA-2015_2636/kernel-2.6.32-573.12.1.el6.i686.rpm
/var/yum/update/RHSA-2015_2636/kernel-2.6.32-573.12.1.el6.x86_64.rpm
/var/yum/update/RHSA-2015_2636/kernel-abi-whitelists-2.6.32-573.12.1.el6.noarch.rpm
・・・
2.createrepoコマンドでリポジトリを作成する。
  ※コマンドがない場合は、yum install createrepo でインストールする。
**# createrepo /var/yum/update/**
Spawning worker 0 with 97 pkgs
Workers Finished
Gathering worker results
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
3.yumのリポジトリ設定ファイルを用意する。
**# vi /etc/yum.repos.d/local_rhsa.repo**
[LOCAL_RHSA]
name=LOCAL RHSA Repository
baseurl=file:///var/yum/update
enabled=1
4.yumを使用して、格納したrpmのインストールや更新を行う。
リポジトリDBを初期化(古い情報が残っている可能性があるため)
**# yum clean all**
その後、yum update や yum install ?でrpmパッケージを導入する。
【補足】
rpmファイルをまとめてISOファイル化する場合は、下記コマンドで作成する。
mkisofs -r -J -o /tmp/data.iso /data

【RHEL】ローカルリポジトリ

※ VMware仮想マシン(RHEL8)にローカルリポジトリを作ってdnfインストールする方法
#=============================
# 対象OS バージョン情報
#-----------------------------
cat /etc/redhat-release
#=============================
# isoマウント前の確認
#-----------------------------
ls -ltr /dev/cdrom
ls -ltr /media
#=============================
# isoファイルのマウント
#【仮想マシンの場合】
#-----------------------------
mount /dev/cdrom /media
#=============================
# isoマウント後の確認
#-----------------------------
df -h | grep media
mount | grep /media
ls -ltr /media
#=============================
# リポジトリファイルの場所確認
#-----------------------------
ls -ltr /etc/yum.repos.d/
#=============================
# ローカルリポジトリの作成
#-----------------------------
vi /etc/yum.repos.d/local.repo
 [dvd-BaseOS]
 name=DVD for RHEL - BaseOS
 baseurl=file:///media/BaseOS
 enabled=1
 gpgcheck=1
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
 #
 [dvd-AppStream]
 name=DVD for RHEL - AppStream
 baseurl=file:///media/AppStream
 enabled=1
 gpgcheck=1
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
#=============================
# ローカルリポジトリの確認
#-----------------------------
ls -ltr /etc/yum.repos.d/
ls -ltr /etc/yum.repos.d/local.repo
cat /etc/yum.repos.d/local.repo
#=============================
# SUBSCRIPTION MANAGERの確認(変更前)
#-----------------------------
cat /etc/yum/pluginconf.d/subscription-manager.conf
cat /etc/yum/pluginconf.d/subscription-manager.conf | grep enabled
#=============================
# SUBSCRIPTION MANAGER リポジトリーの無効化
# 'enabled=1' ⇒ 'enabled=0' に変更
#【直接修正 】vi /etc/yum/pluginconf.d/subscription-manager.conf
#【sedの場合】sed -i '/<条件文字列>/s/<変更前>/<変更後>/g' <対象ファイル>
#-----------------------------
sed -i '/enabled=1/s/enabled=1/enabled=0/g' /etc/yum/pluginconf.d/subscription-manager.conf
#=============================
# SUBSCRIPTION MANAGERの確認(変更後)
#-----------------------------
cat /etc/yum/pluginconf.d/subscription-manager.conf
cat /etc/yum/pluginconf.d/subscription-manager.conf | grep enabled
#=============================
# リポジトリのキャッシュクリア
#-----------------------------
yum clean all
#=============================
# リポジトリの確認
#-----------------------------
dnf repolist
#=============================
# 不要なリポジトリを削除する場合(例)
#-----------------------------
dnf config-manager --disable rhel-8-for-x86_64-appstream-rpms rhel-8-for-x86_64-baseos-rpms
#=============================
# パッケージのインストール(例)
#【ローカルリポジトリ】
#-----------------------------
dnf install telnet-server
dnf install xinetd
dnf install ftp
dnf install expect
dnf install autofs
dnf install nfs-utils
#=============================
# インストールしたパッケージ確認
#【rpmコマンド】
#-----------------------------
rpm -qa | grep telnet-server
#-----------------------------
rpm -qa | grep xinetd
#-----------------------------
rpm -qa | grep ftp
#-----------------------------
rpm -qa | grep expect
#-----------------------------
rpm -qa | grep autofs
#-----------------------------
rpm -qa | grep nfs-utils
#-----------------------------
rpm -qa | grep udsagent
#=============================
# インストールしたパッケージ確認
#【dnfコマンド】
#-----------------------------
dnf list --installed | grep telnet-server
#-----------------------------
dnf list --installed | grep xinetd
#-----------------------------
dnf list --installed | grep ftp
#-----------------------------
dnf list --installed | grep expect
#-----------------------------
dnf list --installed | grep autofs
#-----------------------------
dnf list --installed | grep nfs-utils
#=============================
# インストールしたパッケージ確認
#【egrepで複数纏めて表示】
#-----------------------------
rpm -qa | egrep "(telnet-server|xinetd|ftp|expect|autofs|nfs-utils)"
dnf list --installed | egrep "(telnet-server|xinetd|ftp|expect|autofs|nfs-utils)"

更新日付

05 2025/06 07
S M T W T F S
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

RECOMMEND

プロフィール

HN:
Account
HP:
性別:
非公開
職業:
--- NODATA ---
趣味:
--- NODATA ---
自己紹介:
◆当blogは、Linuxサーバ構築する際の実際の設定手順を個人的メモとして記載しております。LinuC試験の役に立つ情報があるかも…?

リンク

<<前のページ  | HOME |  次のページ>>
Copyright ©  -- LinuC(Linux技術者認定資格)&リナックスサーバ構築設定事例 --  All Rights Reserved
Design by CriCri / Photo by Melonenmann / powered by NINJA TOOLS / 忍者ブログ / [PR]