RHEL色々手順書 - mitsuaki0717/shino-repo GitHub Wiki

●vmware-toolsについての注意

vmware-toolsインストール後にyum updateを実行すると

正常にvmware-toolsが機能しない(カーネルのバージョンが上がってしまうから・・・)

対処方法は以下を実行する

# /usr/bin/vmware-config-tools.pl

●バージョン指定のyumUpdate

# yum update -y --releasever=6.5

●RHEL7にGUI(日本語環境)をインストール

  1. RPMのインストール

以下をインストールする

# yum -y groupinstall "gnome-desktop"

# yum -y groupinstall x11

# yum -y install ibus-kkc vlgothic-*

  1. デフォルトランレベルを5に設定(GUIをデフォルトに設定)

/lib/systemd/system/multi-user.targetに以下の行を追記

Wants=display-manager.service

※gnome-desktopをインストールすると自動的に以下のサービスが有効化され

ブリッジが作成されるので以下のコマンドで無効化しておく。

# systemctl stop libvirtd

# systemctl disable libvirtd

# systemctl status libvirtd

ipv6の無効化

# vi /etc/sysctl.d/disable_ipv6.conf

以下を記載

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

●サブスクリプションの登録、削除

  1. 登録

# subscription-manager register --username <ユーザID> --password <パスワード>

# subscription-manager subscribe --auto

  1. 削除

# subscription-manager unsubscribe --all

# subscription-manager unregister

●RHEL7にeclipseをインストール

  1. バイナリを/usrに展開

# tar -zxvf /var/tmp/eclipse-java-neon-3-linux-gtk-x86_64.tar.gz -C /usr/

  1. リンクを作成

# ln -s /usr/eclipse/eclipse /usr/bin/eclipse

# vi /usr/share/applications/eclipse-4.6.3.desktop

======== 以下を記載 ==============

[Desktop Entry]

Encoding=UTF-8

Name=Eclipse 4.6.3

Comment=Eclipse Luna

Exec=/usr/bin/eclipse

Icon=/usr/eclipse/icon.xpm

Categories=Application;Development;Java;IDE

Version=1.0

Type=Application

Terminal=0

==================================

●ディスクの操作

◆◆◆◆ LVM拡張手順 ◆◆◆◆

parted

(parted) mklabel gpt

(parted) print

モデル: VMware Virtual disk (scsi)

ディスク /dev/sdb: 10.7GB

セクタサイズ (論理/物理): 512B/512B

パーティションテーブル: gpt

番号 開始 終了 サイズ タイプ ファイルシステム フラグ

(parted) mkpart

(parted) mkpart primary

ファイルシステムの種類? [ext2]? ext4

開始? 0

終了? -0

警告: The resulting partition is not properly aligned for best performance.

無視(I)/Ignore/取消(C)/Cancel? i

(parted)

(parted) print

モデル: VMware Virtual disk (scsi)

ディスク /dev/sdb: 10.7GB

セクタサイズ (論理/物理): 512B/512B

パーティションテーブル: msdos

番号 開始 終了 サイズ タイプ ファイルシステム フラグ 1 512B 10.7GB 10.7GB primary

(parted)

★/dev/sdb1をボリュームグループ(vg_rhel6test)に追加する

#pvcreate /dev/sdb1

Physical volume "/dev/sdb1" successfully created

#vgextend vg_rhel6test /dev/sdb1

Volume group "vg_rhel6test" successfully extended

#vgdisplay -v vg_rhel6test

★既存パーティションを拡張する場合

・未割当の領域すべてをLVMに割り当てる

 ここで指定するのは論理ボリュームのパスを指定

#lvextend -l +100%FREE /dev/vg_rhel6test/LogVol01

Size of logical volume vg_rhel6test/LogVol00 changed from 4.00 GiB (1024 extents) to 14.00 GiB (3583 extents).

Logical volume LogVol00 successfully resized

・以下のコマンドでファイルシステムを拡張

#resize2fs /dev/vg_rhel6test/LogVol01

★新規パーティションを作成する場合

※lvcreate -L 10G -n /dev/mapper/rhel-vol01 rhel

↓こっちが合ってる

※lvcreate -n /dev/vg_devidendb02/LogVol02 -l 100%FREE vg_devidendb02

#mkfs.ext4 /dev/vg_devidendb02/LogVol02

★ファイルシステム作成

#mkfs.ext4 /dev/vg_rhel6vcs1/LogVol02

★RHEL7はコマンド変わってる(ファイルシステムがxfs・・・)

#xfs_growfs /dev/mapper/rhel-root

LVM縮小(サイズは変更後のサイズを指定。減らすサイズじゃないよ!)

#lvreduce -L 4G /dev/vg_rhel6test/LogVol00

★論理ボリュームを削除

論理ボリューム名を確認

lvdisplay

削除対象のボリュームがマウントされていないことを確認する

df -h

論理ボリュームの非アクティブ化

lvchange -an /dev/VolGroup/LogVol03

論理ボリューム削除

lvremove /dev/VolGroup/LogVol03

RHEL7ファイルシステム拡張(テンプレートからのデプロイ時)

parted -s /dev/sdb 'mklabel msdos mkpart primary xfs 0 -0 set 1 lvm on'

pvcreate /dev/sdb1

vgextend rhel /dev/sdb1

vgdisplay -v rhel

lvextend -l +100%FREE /dev/mapper/rhel-root

xfs_growfs /dev/mapper/rhel-root

■Swapサイズ変更 1.関連付けられている論理ボリュームの swap 機能を無効にします。   swapoff -v /dev/VolGroup00/LogVol01

2.LVM2 論理ボリュームをサイズ変更して 2 GB 拡張します。   lvresize /dev/VolGroup00/LogVol01 -L +2G (2GB拡張)

3.新しい swap 領域をフォーマットします。   mkswap /dev/VolGroup00/LogVol01

4.拡張した論理ボリュームを有効にします。   swapon -v /dev/VolGroup00/LogVol01

◆◆◆◆ LVM新規作成手順 ◆◆◆◆

1.デバイス確認とパーティションテーブル作成

fdisk -l

parted /dev/sde

=============================

mklabel gpt

mkpart primary 0 -0

set 1 lvm on

print

quit

=============================

2.物理ボリュームとして追加

・pvcreate <デバイス名>

pvcreate /dev/sde1

pvscan

3.新規ボリュームグループを作成

・vgcreate <ボリュームグループ名> <デバイス名>

vgcreate VolGroup01 /dev/sde1

vgdisplay

4.LVボリュームを作成

・lvcreate -n <LVボリュームパス> -l 100%FREE <ボリュームグループ名>

lvcreate -n /dev/VolGroup01/LogVol00 -l 100%FREE VolGroup01

5.ファイルシステムを作成

・mkfs.ext4 <LVボリュームパス>

mkfs.ext4 /dev/VolGroup01/LogVol00

●proxy設定(CentOSの場合)

yumを使えるようにするためプロキシの設定を追加する。

/etc/yum.confに以下を追記する

proxy=http://<proxyIPアドレス>:8080/

プロキシの認証が必要な場合は以下も追加

proxy_username=ユーザー名

proxy_password=パスワード

●DHCP設定

subnet 172.20.49.0 netmask 255.255.255.0 { range 172.20.49.236 172.20.49.236; #開始IP 終了IPを記載 option subnet-mask 255.255.255.0; option routers 172.20.49.200; #GWIP deny unknown-clients; }

host HITOKAGE{ hardware ethernet 00:0c:29:03:81:85; }

●DM-Multipath設定

device-mapper-multipath-0.4.9-93.el6.x86_64.rpmをインストール mpathconfコマンドでmultipath.confを生成する。

ディスクの再読み込み echo "- - -" > /sys/class/scsi_host/host1/scan echo "- - -" > /sys/class/scsi_host/host2/scan

find_multipaths 有効 user_friendly_names 有効(デフォルト)

以下に /etc/multipath/wwids wwidを追記

XtrmIOの推奨設定は以下 /etc/multipath.confの設定 device { vendor XtremIO product XtremApp path_selector "queue-length 0" (FOR RHEL6以降の場合設定) path_selector "round-robin 0" (FOR RHEL6より前の場合設定) rr_min_io 1000 (FOR RHEより前6の場合設定) rr_min_io_rq 1 (FOR RHEL6以降の場合設定) path_grouping_policy multibus path_checker tur failback immediate }

RHEL6 rawデバイスマッピング https://access.redhat.com/ja/solutions/1491953

●tmpfsのサイズ変更

/etc/fstabを変更 変更前: tmpfs /dev/shm tmpfs defaults 0 0 変更後: tmpfs /dev/shm tmpfs defaults,size=153600M 0 0

●DM-multipathを使用時のLUN拡張対応

1.確認したデバイスを再スキャン 確認したsdデバイスすべてを再スキャンする echo 1 > /sys/block/<sdデバイス名>/device/rescan 例: echo 1 > /sys/block/sdo/device/rescan echo 1 > /sys/block/sdt/device/rescan echo 1 > /sys/block/sde/device/rescan echo 1 > /sys/block/sdj/device/rescan

2.再度ディスクが拡張されたことを確認する fdisk -l 3.マルチパス上で見えているサイズを確認する multipath -ll 再スキャンしたsdデバイスのサイズとDM-multipath上でのデバイス名を確認する 4.以下のコマンドで拡張対象のディスクを指定し再読み込み 以下のコマンドでokと出れば完了 multipathd -k'resize map <デバイス名>' 例: multipathd -k'resize map mpathe'

5.再度マルチパス上で見えているサイズを確認する multipath -ll

●bonbing設定

以下のファイルを編集 ・/etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=enp2s0f0 UUID=57ded588-1b42-4b5d-a962-23ce81386b1d DEVICE=eth0 ONBOOT=yes MASTER=bond0 SLAVE=yes

・/etc/sysconfig/network-scripts/ifcfg-eth2 TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=enp3s0f0 UUID=2556e588-a579-49a3-a94d-8a75202745c2 DEVICE=eth2 ONBOOT=yes MASTER=bond0 SLAVE=yes

・/etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 NAME=bond0 IPADDR=XXX.XXX.XXX.XXX NETMASK=255.255.255.0 ONBOOT=yes BOOTPROTO=none BONDING_OPTS="mode=1 primary=eth0 miimon=100 updelay=5000"

・/etc/modprobe.d/bonding.conf alias bond0 bonding

・ステータス確認コマンド cat /proc/net/bonding/bond0

======================================================================================================

●Zabbix3.0インストール

====================================================================================================== ・リポジトリ登録 # rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

※事前にMySQLをインストールしておくこと MySQLの初期セットアップについては以下を参照 http://vdeep.net/centos7-mysql#yum # systemctl start mysqld.service # systemctl enable mysqld.service 初期パスワードを確認 # cat /var/log/mysqld.log | grep root

# mysql_secure_installation(初期セットアップ)

・Zabbixのインストール # yum install zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese zabbix-agent zabbix-get zabbix-sender

・Zabbix用のDBを作成 # mysql -uroot -p mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'P@ssw0rd'; mysql> quit

# zcat /usr/share/doc/zabbix-server-mysql-3.0.10/create.sql.gz | mysql -u zabbix -p zabbix

・設定ファイル編集 # vi /etc/zabbix/zabbix_server.conf 以下の項目を変更 DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix

# vi /etc/httpd/conf.d/zabbix.conf 以下の項目を変更 php_value date.timezone Asia/Tokyo

・Zabbixを起動 # systemctl start zabbix-server.service # systemctl start zabbix-agent.service # systemctl start httpd.service # systemctl enable zabbix-server.service # systemctl enable zabbix-agent.service # systemctl enable httpd.service

========================================================

●sourceからRPMを作成

======================================================== 1.rpm作成用ユーザを作成する

#useradd rpmuser

#passwd rpmuser

2.必要なパッケージをインストール

#yum install -y wget

#yum install -y rpm-build

3.必要なsourceを集める

#wgetコマンドでダウンロード

※sourceの拡張しに注意

「.tar.gz」ではなく「.tar.bz2」をダウンロードする

apr-1.5.2.tar.bz2

apr-util-1.5.4.tar.bz2

distcache-1.4.5-23.src.rpm

lua-devel-5.1.4-14.el7.x86_64.rpm

httpd-2.4.25.tar.bz2

4.sourceからRPMを作成する

# yum install -y libuuid-devel

# su - rpmuser

$ rpmbuild -tb --clean apr-1.5.2.tar.bz2

$ exit

# cd /home/rpmuser/rpmbuild/RPMS/x86_64/

# rpm -Uvh apr-1.5.2-1.x86_64.rpm apr-devel-1.5.2-1.x86_64.rpm

# yum install -y apr-util-devel

# yum install -y openssl-devel

# su - rpmuser

$ rpmbuild --rebuild --clean distcache-1.4.5-23.src.rpm

$ exit

# rpm -Uvh distcache-1.4.5-23.x86_64.rpm distcache-devel-1.4.5-23.x86_64.rpm

# yum install -y mailcap

# yum install -y libxml2-devel

# rpm -ivh lua-devel-5.1.4-14.el7.x86_64.rpm

# su - rpmuser

$ rpmbuild -tb --clean httpd-2.4.9.tar.bz2

$ exit

# cd /home/rpmuser/rpmbuild/RPMS/x86_64

# rpm -ivh httpd-2.4.9-1.x86_64.rpm

# rpm -ivh httpd-devel-2.4.9-1.x86_64.rpm

######## httpd-2.4.25におけるバグ ########

以下のエラーが表示される

===========================================================

パッケージに含まれないファイルの検査中: /usr/lib/rpm/check-files /home/rpmuser/rpmbuild/BUILDROOT/httpd-2.4.25-1.x86_64

エラー: インストール済み(ただしパッケージに含まれない)ファイルが見つかりました:

/usr/lib64/httpd/modules/mod_proxy_hcheck.so

===========================================================

上記のエラーは「mod_proxy_hcheck」が読み込めないため出てしまう

mod_proxy_hcheckは追加されたLB機能のことらしい・・・

【対処方法】

1.SPECファイルを編集

vi /home/rpmuser/rpmbuild/SPECS/httpd.spec

以下の行を追記する

%{_libdir}/httpd/modules/mod_proxy_hcheck.so

「%{_libdir}/httpd/modules」で検索してそのあたりに追記

2.リビルド実行

SOURCESディレクトリにソースを置いておく

cp /var/tmp/httpd-2.4.25.tar.bz2 /home/rpmuser/rpmbuild/SOURCES/

specファイルからRPMを作成

rpmbuild -bb --clean /home/rpmuser/rpmbuild/SPECS/httpd.spec

rhel6用RPM作成でインストールしたパッケージ群

yum install -y openssl-devel

yum install -y openldap-devel

yum install -y nss-devel

yum install -y sqlite-devel

yum install -y mysql-devel

yum install -y postgresql-devel

yum install -y expat-devel

yum install -y libuuid-devel

yum install -y db4-devel

yum install -y mailcap

yum install -y pcre-devel

yum install -y libxml2-devel

作成したRPMからApacheインストール

●RHEL6

yum install -y expat-devel

yum install -y db4-devel

rpm -Uvh apr-1.5.2-1.x86_64.rpm apr-devel-1.5.2-1.x86_64.rpm

rpm -Uvh apr-util-1.5.4-1.x86_64.rpm apr-util-devel-1.5.4-1.x86_64.rpm apr-util-ldap-1.5.4-1.x86_64.rpm

rpm -Uvh distcache-1.4.5-23.x86_64.rpm distcache-devel-1.4.5-23.x86_64.rpm

rpm -Uvh lua-devel-5.1.4-4.1.el6.x86_64.rpm lua-5.1.4-4.1.el6.x86_64.rpm

rpm -Uvh httpd-2.4.25-1.x86_64.rpm httpd-tools-2.4.25-1.x86_64.rpm httpd-devel-2.4.25-1.x86_64.rpm

●RHEL7

yum install -y mailcap

yum install -y apr-util-devel

rpm -Uvh apr-1.5.2-1.x86_64.rpm apr-devel-1.5.2-1.x86_64.rpm

rpm -Uvh distcache-1.4.5-23.x86_64.rpm distcache-devel-1.4.5-23.x86_64.rpm

rpm -ivh lua-devel-5.1.4-14.el7.x86_64.rpm

rpm -ivh httpd-2.4.25-1.x86_64.rpm httpd-devel-2.4.25-1.x86_64.rpm

●CentOSでNICの名称変更

/etc/default/grubを編集

rd.lvm.lv=centos/root crashkernel=auto vconsole.keymap=us rhgb quiet net.ifnames=0 biosdevname=0"

上記を追記

以下のコマンドを実行

# grub2-mkconfig -o /boot/grub2/grub.cfg

●CentOS7.Xにcrhomeをインストール

リポジトリを追加

vi /etc/yum.repos.d/google.chrome.repo

以下を追記 [google-chrome] name=google-chrome baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch enabled=1 gpgcheck=1 gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

# yum install google-chrome-stable # vi /opt/google/chrome/google-chrome 一番下の行を変更 else exec -a "$0" "$HERE/chrime" "$@" --user-data-dir=~ fi

「ERROR:nacl_fork_delegate_linux.cc(315)」というエラーが出る場合

vi /opt/google/chrome/google-chrome 一番下の行を変更

エラーが出る場合は以下を記載 else exec -a "$0" "$HERE/chrime" "$@" --no-sandbox --user-data-dir=~ fi

●CentOS7にRDPで接続する

https://kogelog.com/2015/03/02/20150302-01/

リポジトリの追加 wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm wget http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm rpm -ivh epel-release-7-5.noarch.rpm nux-dextop-release-0-5.el7.nux.noarch.rpm yum install -y xrdp tigervnc-server systemctl start xrdp.service systemctl enable xrdp.service

●yumでインストールする時のたしなみ

--showduplicatesオプションで詳細バージョンを確認できる

yum list --showduplicates|grep jdk|grep 1.8

●ローカルDVDをリポジトリに

以下のコマンドでDVD(ISO)をマウント

mount -o loop -t iso9660 xxx.iso /media

/etc/yum.repos.d/dvd.repoのファイルを作成or編集

=========以下を記載=========

[dvd]

name=dvd

baseurl=file:///media/

gpgcheck=1

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

●yumコマンド

yum install --enablerepo=dvd <Packeage>

以下のオプションでリポジトリを有効化又は無効化する

--enablerepo

--disablerepo

自己証明書作成

$ sudo yum list installed | grep httpd

$ sudo yum list available | grep ssl

$ sudo yum install mod_ssl.x86_64 openssl

$ ls -l /etc/httpd/modules/ | grep ssl

$ cat /etc/httpd/conf.modules.d/00-ssl.conf

$ sudo openssl genrsa -out ca.key 2048

$ sudo openssl req -new -key ca.key -out ca.csr

Country Name (2 letter code) [XX]:JP

State or Province Name (full name) []:Tokyo

Locality Name (eg, city) [Default City]:Nakano-ku

Organization Name (eg, company) [Default Company Ltd]:shinohara

Organizational Unit Name (eg, section) []:

Common Name (eg, your name or your server's hostname) []:compute.amazonaws.com

Email Address []:[email protected]

Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

$ sudo openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt

$ sudo cp -p ca.crt /etc/pki/tls/certs/

$ sudo cp -p ca.key /etc/pki/tls/private/

$ sudo cp -p ca.csr /etc/pki/tls/private/

$ sudo restorecon -RvF /etc/pki/

$ sudo vi /etc/httpd/conf.d/ssl.conf

Listen 443

<VirtualHost *:443>

    SSLEngine on

    SSLCertificateFile /etc/pki/tls/certs/ca.crt

    SSLCertificateKeyFile /etc/pki/tls/private/ca.key

    <Directory /home/vagrant/www/public>

        AllowOverride All

    </Directory>

    DocumentRoot /var/www/html

    ServerName www.myserver.test

</VirtualHost>

$ sudo vi /etc/httpd/conf.modules.d/00-rewrite.conf

<IfModule mod_rewrite.c>

  RewriteEngine On

  RewriteCond %{HTTPS} off

  RewriteCond %{HTTP_HOST} www.myserver.test

  RewriteCond %{REQUEST_URI} ^/redmine/.*$ [OR]

  RewriteCond %{REQUEST_URI} ^/jenkins/.*$

  RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

</IfModule>

$ sudo service httpd configtest

$ sudo systemctl restart httpd

$ sudo systemctl enavle httpd

⚠️ **GitHub.com Fallback** ⚠️