Memo/Linux/CentOS

http://dexlab.net/pukiwiki/index.php?Memo%2FLinux%2FCentOS
 

CentOS


NICの名前変更

CentOS7から「ens**」のようなランダムな数字が付くようになった。

  • ens33 を eth0へ変更
    1. sudo nmcli connection modify "System ens33" connection.id eth0

デフォルトDNS変更

  • CentOS 7でデフォルトDNSの変更。例:Google Public DNS
    1. nmcli con mod ens33 ipv4.dns "8.8.8.8 8.8.4.4"
    2. # /etc/sysconfig/network-scripts/ifcfg-ens33 に DNS1, DNS2が追加される

DNS解決が遅い場合

DNS解決に5秒程度かかる場合、またはtimeoutが発生する時。

  1. /etc/resolv.conf を自動生成しないように変更
  2. /etc/resolv.conf を変更
    1. options timeout:2 attempts:3 rotate single-request-reopen

CentOS7で「Delta RPMs disabled because /usr/bin/applydeltarpm not installed」

  • CentOS 7.2でyum packageインストール時に「Delta RPMs disabled because /usr/bin/applydeltarpm not installed.」で失敗する場合
  • 解決
    1. sudo yum clean all
    2. sudo yum install deltarpm
    3. # 失敗したパッケージを試す

CentOS7にkernel4.xをインストール

CentOS7はkernel 3.10だが、例えばdocker storageでoverlay2を使いたい場合、kernel4.0以上が必要。
Use the OverlayFS storage driver | Docker Documentation

  • ELRepo
    • http://elrepo.org/linux/kernel/el7/
      • kernel-lt-4.4.* (LongTerm?)
      • kernel-ml-4.12.* (MainLine?)
    • それぞれ2マイナーバージョンしか無く、安定性を重視する場合は、kernel-ltの方が良さそう。kernel-mlは更新が早く、古いバージョンも無いため、構築時期が異なると同じkernelバージョンに揃えられない。
  • CentOS7をkernel-lt-4.4.xに更新
    1. sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    2. sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
    3.  
    4. # LongTerm版(4.4.x)をインストールする場合
    5. sudo yum --enablerepo=elrepo-kernel install kernel-lt
    6.  
    7. # 失敗する場合は /etc/yum.conf で exclude=kernel* 等除外設定がないか確認
    8.  
    9. # デフォルトkernelを変更する
    10. sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
    11. 0 : CentOS Linux (4.4.80-1.el7.elrepo.x86_64) 7 (Core)
    12. 1 : CentOS Linux (4.4.80-1.el7.elrepo.x86_64) 7 (Core) with debugging
    13. ...
    14.  
    15. sudo grub2-set-default 0
    16. sudo grub2-editenv list
    17. saved_entry=0
    18.  
    19. # 再起動
    20. sudo reboot
    21.  
    22. uname -a
    23. Linux centos7-server 4.4.80-1.el7.elrepo.x86_64 #1 SMP Mon Aug 7 17:33:58 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux
    24.  
    25. # 動作に問題なければ古いkernelと入れ替える
    26. sudo yum --enablerepo=elrepo-kernel swap \
    27.  -- remove  kernel-headers    kernel-tools-libs    kernel-tools    kernel-devel \
    28.  -- install kernel-lt-headers kernel-lt-tools-libs kernel-lt-tools kernel-lt-devel
    29. # 古いkernelを削除
    30. sudo yum erase kernel
    31.  
    32. # 更新できるか確認
    33. sudo yum update
    34. sudo yum clean all
    35.  
    36. # elrepo-kernel を有効化
    37. sudo yum-config-manager --enable elrepo-kernel

CentOS7のネットワーク系コマンド

  • IPv4のNICを表示
    1. ip -f inet addr

CentOS7でノートPCでサスペンドさせない

  1. sudo vi /etc/systemd/logind.conf
  2. ----
  3. # ノートPCの蓋を閉じた時
  4. HandleLidSwitch=ignore
  5. # サスペンドキーを押した時
  6. HandleSuspendKey=ignore
  7. # ハイバネートキーを押した時
  8. HandleHibernateKey=ignore
  9. ----
  10. sudo systemctl restart systemd-logind.service

CentOS7インストール時に「Failed to start Switch Root」で失敗する場合

  • エラーメッセージ
    • [FAILED] Failed to start Switch Root

CentOSのサポート終了日


CentOS5: fsck.ext4: not found

  • CentOS 5.10 64bit
    1. fsck -n /dev/sdb1
    2. fsck 1.39 (29-May-2006)
    3. fsck: fsck.ext4: not found
    4.  
    5. yum -y install e4fsprogs

CentOS7


ディスクマウント時にはnofailオプションを付ける

CentOS7でmountが systemd.mount に代わり、マウント失敗するとブート時に停止するようになった。 以前のように、無視して起動させたい場合は、「nofail」オプションを付ける

  • /etc/fstab
    • OK: /dev/xvdb /mnt/disk1 auto defaults,nofail 0 0
    • NG: /dev/xvdb /mnt/disk1 ext3 defaults 0 0

インストール

  • 前提
    • サーバインストールのためGUI不要
    • テキストモードでインストール
    • https://www.centos.org/download/ から CentOS-7-x86_64-Minimal-1503-01.iso をダウンロードして使う
    • VMwareやVirtualBox?で試す
      • CPU: 1コア
      • Memory: 1GB
      • HDD: 20GB
  1. 仮想PCを起動
  2. 「Install CentOS 7」を上下キーで選択し、TABキー
  3. 行末に「text」を追加してエンター
  4. 設定変更可能になるため変更
    • 1) Language settings: Japanese
    • 2) Timezone settings: Asia/Tokyo
    • 3) Software selection: Minimal Install
    • 5) Network settings:
      • 1) Set host name: centos7-server
      • 2) Configure device ens33: dhcp
    • 9) Set root password
    • 'b'キーでインストール開始
  5. ssh root@x.x.x.x で接続できるか確認
  6. IPアドレス/Default gatewayの確認
    1. # ip addr
    2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    3.     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    4.     inet 127.0.0.1/8 scope host lo
    5.        valid_lft forever preferred_lft forever
    6.     inet6 ::1/128 scope host
    7.        valid_lft forever preferred_lft forever
    8. 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    9.     link/ether 00:0c:29:16:71:54 brd ff:ff:ff:ff:ff:ff
    10.     inet 192.168.61.132/24 brd 192.168.61.255 scope global dynamic ens33
    11.        valid_lft 1385sec preferred_lft 1385sec
    12.     inet6 fe80::20c:29ff:fe16:7154/64 scope link
    13.        valid_lft forever preferred_lft forever
    14.  
    15.  
    16. ip route
    17. default via 192.168.61.2 dev ens33  proto static  metric 100
    18. 192.168.61.0/24 dev ens33  proto kernel  scope link  src 192.168.61.132
    19. 192.168.61.0/24 dev ens33  proto kernel  scope link  src 192.168.61.132  metric 100
  7. ネットワークの設定変更: IPが取得できていない場合は、nmtui起動後「Automatically connect」にチェックを入れる。
    1. nmtui
    2. systemctl restart NetworkManager
    • nmcliはNetworkManager?のrpmに入っていた
      1. # 設定可能なNIC一覧
      2. nmcli con show
      3. 名前   UUID                                  タイプ          デバイス
      4. ens33  2603ad74-766a-4872-8424-d155a9a8266b  802-3-ethernet  ens33    
      5.  
      6. # NICを指定して詳細表示
      7. nmcli con show ens33
      8.  
      9. # 自動接続を有効に
      10. sudo nmcli con mod ens33 connection.autoconnect "yes"
      11. sudo nmcli con mod ens33 ipv4.addresses "192.168.61.10"
      12. sudo nmcli con mod ens33 ipv4.method "manual"
      13.  
      14. # 設定反映
      15. sudo nmcli device disconnect ens33
      16. sudo nmcli device connect ens33
  8. ホスト名の変更等:nmcli コマンド。設定ファイル:/etc/hostname
    1. nmcli general hostname centos7.example.com
    2. # または
    3. sudo hostnamectl set-hostname centos7.example.com
    4. hostnamectl status
  9. 英語キーボードのままの場合、日本語キーボードへ切り替え
    1. # 設定ファイル
    2. cat /etc/vconsole.conf
    3. KEYMAP="us"
    4. FONT="latarcyrheb-sun16"
    5.  
    6. # 現在のロケール確認
    7. localectl status
    8.    System Locale: LANG=en_US.UTF-8
    9.        VC Keymap: us
    10.       X11 Layout: us
    11.  
    12. # キーマップの確認
    13. localectl list-keymaps
    14.  
    15. # 日本語キーボードに変更
    16. localectl set-keymap jp106
    17.  
    18. # 確認
    19. localectl status
    20.    System Locale: LANG=en_US.UTF-8
    21.        VC Keymap: jp106
    22.       X11 Layout: jp
    23.        X11 Model: jp106
    24.      X11 Options: terminate:ctrl_alt_bksp
  10. 日本語に変更
    1. # 設定ファイル
    2. cat /etc/locale.conf
    3. LANG=ja_JP.utf8
    4.  
    5. # ロケール一覧
    6. localectl list-locales
    7.  
    8. # ロケール変更
    9. localectl set-locale LANG=ja_JP.utf8
  11. タイムゾーン変更
    1. # 設定ファイル
    2. cat
    3.  
    4. # 確認
    5. timedatectl status
    6.       Local time: Thu 2015-10-01 02:57:41 JST
    7.   Universal time: Wed 2015-09-30 17:57:41 UTC
    8.         RTC time: Wed 2015-09-30 17:57:41
    9.         Timezone: Asia/Tokyo (JST, +0900)
    10.      NTP enabled: n/a
    11. NTP synchronized: no
    12.  RTC in local TZ: no
    13.       DST active: n/a
    14.  
    15. # タイムゾーン一覧
    16. timedatectl list-timezones
    17.  
    18. # タイムゾーン変更
    19. timedatectl set-timezone Asia/Tokyo
  12. パッケージの更新
    1. yum update
    2. yum clean all
  13. yum grouplist
    1. LANG=C yum grouplist
    2. Loaded plugins: fastestmirror
    3. There is no installed groups file.
    4. Maybe run: yum groups mark convert (see man yum)
    5. Loading mirror speeds from cached hostfile
    6.  * base: ftp.yz.yamagata-u.ac.jp
    7.  * extras: ftp.yz.yamagata-u.ac.jp
    8.  * updates: ftp.yz.yamagata-u.ac.jp
    9. Available environment groups:
    10.    Minimal Install
    11.    Compute Node
    12.    Infrastructure Server
    13.    File and Print Server
    14.    Basic Web Server
    15.    Virtualization Host
    16.    Server with GUI
    17.    GNOME Desktop
    18.    KDE Plasma Workspaces
    19.    Development and Creative Workstation
    20. Available Groups:
    21.    Compatibility Libraries
    22.    Console Internet Tools
    23.    Development Tools
    24.    Graphical Administration Tools
    25.    Legacy UNIX Compatibility
    26.    Scientific Support
    27.    Security Tools
    28.    Smart Card Support
    29.    System Administration Tools
    30.    System Management
    31. Done
  14. サーバ起動時に有効になっているサービスの確認
    1. systemctl list-unit-files --type service | grep enabled
    2. auditd.service                              enabled
    3. crond.service                               enabled
    4. dbus-org.fedoraproject.FirewallD1.service   enabled
    5. dbus-org.freedesktop.NetworkManager.service enabled
    6. dbus-org.freedesktop.nm-dispatcher.service  enabled
    7. firewalld.service                           enabled
    8. getty@.service                              enabled
    9. irqbalance.service                          enabled
    10. kdump.service                               enabled
    11. lvm2-monitor.service                        enabled
    12. microcode.service                           enabled
    13. NetworkManager-dispatcher.service           enabled
    14. NetworkManager.service                      enabled
    15. postfix.service                             enabled
    16. rsyslog.service                             enabled
    17. sshd.service                                enabled
    18. systemd-readahead-collect.service           enabled
    19. systemd-readahead-drop.service              enabled
    20. systemd-readahead-replay.service            enabled
    21. tuned.service                               enabled
  15. ディスク空き容量
    1. LANG=C df -h
    2. Filesystem                               Size  Used Avail Use% Mounted on
    3. /dev/mapper/centos_centos7--server-root   18G  933M   17G   6% /
    4. devtmpfs                                 484M     0  484M   0% /dev
    5. tmpfs                                    494M     0  494M   0% /dev/shm
    6. tmpfs                                    494M  6.8M  487M   2% /run
    7. tmpfs                                    494M     0  494M   0% /sys/fs/cgroup
    8. /dev/sda1                                497M  160M  338M  33% /boot
  16. 最低限 core, base(bind-utils, logrotate, net-tools, rsync, wget, zip, ...)グループインストールした方が便利
    1. yum groups install core base
    2. LANG=C yum groups info base
  17. VMwareの場合、VMware Toolsのインストール ifconfigのパスを聞かれるため net-tools(baseグループに含まれる)をインストールする
    1. # net-tools: ifconfig, route, netstat, arp
    2. yum install  net-tools
  • tmpwatchでの/tmp等の削除は、systemdに変わり、cronからは削除された
    1. systemctl list-unit-files | grep tmpfiles-clean
    2. systemd-tmpfiles-clean.service              static
    3. systemd-tmpfiles-clean.timer                static
    4.  
    5. cat /usr/lib/tmpfiles.d/tmp.conf

CentOS6.xのネットワークインストール

    • CentOS-6.3-x86_64-netinstall.iso
    • メモリ 1GB
    • HDD 10GB
    • Minimal(最小構成)でインストール
  • テキストモードの場合
  1. インストールメディア(ISO)等をいれて起動
  2. 「Welcome to CentOS 6.x」画面になったら[TAB]キー
  3. 以下コマンドを入力
    1. vmlinuz initrd=initrd.img text
    • OSインストール時にメモリが652MB以上ないとテキストモードになる)
    • パーティションを自由に区切れない
    • パッケージの選択もできない
  • 画面にボタンが出なくて次に進めない場合は、ALT+N で次に進める
  1. netinstall用ISOをダウンロード
    1. http://ftp.jaist.ac.jp/pub/Linux/CentOS/6/isos/x86_64/CentOS-6.3-x86_64-netinstall.iso
  2. ISOを焼くなり、unetbootbinでUSBメモリにいれるなりして起動
  3. 「Install system with basic video driver」を選択
  4. Disc Found : Skip
  5. Coose as Language : Japanese
  6. Keyboard Type : jp106
  7. Instllation Method : URL
  8. Configure TCP/IP : Enable IPv4 support, DHCP
  9. URL Setup : ftp://ftp.jaist.ac.jp/pub/Linux/CentOS/6/os/x86_64
  10. グラフィカル画面が出てきたら1回クリック or エンター
  11. HDDは全消去
  12. タイムゾーン : アジア/東京
    • システムクロックでUTCを使用のチェックを外す
  13. rootパスワード
  14. すべての領域を使用する
  15. 構成:Minimal
  16. 再起動
  17. rootユーザでログイン
  18. パッケージを最新に更新、必須コマンドのインストール
    1. yum -y update
    2.  
    3. # scp:openssh-clients dig:bind-utils
    4. sudo yum install -y wget unzip ftp sysstat openssh-clients man vim-enhanced
  19. sshがすぐ切れる問題の対策
    1. /etc/ssh/sshd_config
    2. ----
    3. ClientAliveInterval 15
    4. ClientAliveCountMax 3
    5. ----
    6. service sshd restart
    7.  
    8. mkdir -p ~/.ssh
    9. chmod 700 ~/.ssh
    10. cat >> ~/.ssh/config << 'EOS'
    11. Host *
    12. ServerAliveInterval 60
    13. EOS
    14. chmod 600 ~/.ssh/config
  • VMWareの時の追加作業。vmware-toolsをインストール
  1. メニュー > VM > VMWare Toolsのインストール
  2. ゲストOSのrootでログイン
    1. yum -y install perl
    2.  
    3. # kernel更新の度に ./vmware-install.pl が必要なのでkernelを更新しないように変更
    4. yum -y install kernel-headers kernel-devel
    5. cat >> /etc/yum.conf << EOS
    6. exclude=kernel* sudo*
    7. EOS
    8.  
    9. mount /dev/cdrom /media
    10. cd /media
    11. tar xvfz VMwareTools-x.x.x-x.tar.gz -C /tmp
    12. cd /tmp/vmware-tools-distrib/
    13. ./vmware-install.pl
    14. # 全部エンター
    15.  
    16. umount /media
    17. reboot
  • 導入パッケージ一覧
    1. LANG=C yum grouplist
    2.  
    3. Loaded plugins: fastestmirror
    4. Setting up Group Process
    5. Loading mirror speeds from cached hostfile
    6.  * base: ftp.riken.jp
    7.  * extras: ftp.riken.jp
    8.  * updates: ftp.riken.jp
    9. Installed Groups:
    10.    E-mail server
    11.    Fonts
    12.    Perl Support
    13. Installed Language Groups:
    14.    Japanese Support [ja]
  • サービス
    1. # chkconfig --list
    2. auditd          0:off   1:off   2:on    3:on    4:on    5:on    6:off
    3. crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off
    4. ip6tables       0:off   1:off   2:on    3:on    4:on    5:on    6:off
    5. iptables        0:off   1:off   2:on    3:on    4:on    5:on    6:off
    6. lvm2-monitor    0:off   1:on    2:on    3:on    4:on    5:on    6:off
    7. netconsole      0:off   1:off   2:off   3:off   4:off   5:off   6:off
    8. netfs           0:off   1:off   2:off   3:on    4:on    5:on    6:off
    9. network         0:off   1:off   2:on    3:on    4:on    5:on    6:off
    10. postfix         0:off   1:off   2:on    3:on    4:on    5:on    6:off
    11. rdisc           0:off   1:off   2:off   3:off   4:off   5:off   6:off
    12. restorecond     0:off   1:off   2:off   3:off   4:off   5:off   6:off
    13. rsyslog         0:off   1:off   2:on    3:on    4:on    5:on    6:off
    14. saslauthd       0:off   1:off   2:off   3:off   4:off   5:off   6:off
    15. sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
    16. udev-post       0:off   1:on    2:on    3:on    4:on    5:on    6:off
  • 容量
    1. Filesystem            Size  Used Avail Use% マウント位置
    2. /dev/mapper/vg_centos6-lv_root
    3.                       7.5G  1.4G  5.7G  20% /
    4. tmpfs                 497M     0  497M   0% /dev/shm
    5. /dev/sda1             485M   52M  408M  12% /boot

GRUB表示で停止する場合

USBメモリからインストールした場合など、画面上に「GRUB」と表示されたまま起動しない事がある。

  1. netinstallのディスクなどで、bootオプションに「linux rescue」を付けて起動
    1. bash
    2. vi /mnt/sysimage/boot/grub/grub.conf
    3. ----
    4. (hd1,0)」の箇所を「(hd0,0)」に修正
    5. ----

記事

CentOS6.x

  • Manuals/ReleaseNotes/CentOS6.0/Japanese - CentOS Wiki
  • ダウンロード。DVD-ISO
    http://ftp.riken.jp/Linux/centos/6.0/isos/
    http://ftp.nara.wide.ad.jp/pub/Linux/centos/6.0/isos/
    http://ftp-srv2.kddilabs.jp/Linux/packages/CentOS/6.0/isos/
    http://ftp.iij.ad.jp/pub/linux/centos/6.0/isos/

CentOS5.6へバージョンアップ

  • php5.3
    1. yum remove php php-*
    2. yum install \
    3. php53 \
    4. php53-devel \
    5. php53-mbstring \
    6. php53-mysql \
    7. php53-pdo \
    8. php53-mcrypt \
    9. php53-pear \
    10. php53-xml \
    11. php53-gd

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-06-11 (月) 16:52:37 (13d)