最詳細的CentOS 7模式「centos7進入單用戶模式修改文件」

本主題將從3個角度進行對比

  1. 常見設置(CentOS 6 vs CentOS 7)
  2. 服務管理(Sysvinit vs Upstart vs Systemd)
  3. 性能測試(cpu/mem/io/oltp)

本文為第一部分:常見設置的對比

字符集


CentOS 6

方法: /etc/sysconfig/i18n

CentOS 7

方法1: localectl set-locale LANG=en_GB.utf8

方法2: /etc/locale.conf中的LANG=

主機名


CentOS 6

在線生效: hostname

重啟生效: /etc/sysconfig/network中的HOSTNAME=

CentOS 7

在線+重啟生效: hostnamectl set-hostname

時區


CentOS 6

方法: ln -sf
/usr/share/zoneinfo/Asia/Shanghai /etc/localtime

CentOS 7

方法1: 同CentOS 6

方法2: timedatectl set-timezone Asia/Shanghai

時間同步


CentOS 6

逐步: ntpd或ntpdate

直接: ntpdate -b(通常加到crontab)

CentOS 7

方法1: systemctl start chronyd

方法2: timedatectl set-ntp yes(同systemctl start chronyd)

注意:

– 可以通過timedatectl | grep “NTP synchronized”判斷當前時間是否已同步

– 不建議用ntpd和ntpdate,redhat強烈推薦chrony,可用於網絡不穩定的環境

– chrony.conf關鍵參數makestep 1.0 -1

手動更改時間


CentOS 6

方法: date -s “2018-07-08 11:11:11”

CentOS 7

方法1: 同CentOS 6

方法2: timedatectl set-time “2018-07-08 11:11:12″(前提是timedatectl set-ntp false)

單用戶修改密碼


CentOS 6

grub界面鍵入e,在kernel行最後加1,鍵入b啟動進入單用戶模式,之後輸入passwd修改密碼

CentOS 7

grub界面鍵入e,在linux16行上將ro改為rw,並在當前行最後加init=/bin/sh,鍵入ctrl-x進入,之後輸入passwd修改密碼

CentOS 7注意:

– 如果有開啟selinux,則需要在修改密碼後,重啟前,執行`touch /.autorelabel`

– passwd執行後,最好執行sync,防止強制重啟導致修改密碼沒有落地

grub添加參數


CentOS 6

/boot/grub/grub.conf的kernel中加入需要添加的參數

CentOS 7

步驟1:/etc/default/grub的GRUB_CMDLINE_LINUX中加入需要添加的參數

步驟2:grub2-mkconfig -o /boot/grub2/grub.cfg

查看開機記錄


CentOS 6

方法: last

CentOS 7

方法1: 同CentOS 6

方法2: journalctl –list-boots或last

修改啟動內核


1. 查看當前啟動內核

CentOS 6: cat /boot/grub/grub.conf中的default

CentOS 7: grub2-editenv list

2. 查看有哪些內核

CentOS 6: cat /boot/grub/grub.conf | sed -n ‘/^title/s/^title //p’

CentOS 7: cat /boot/grub2/grub.cfg | grep ‘^menuentry’ | awk -F”‘” ‘{print $2}’

3. 設置啟動內核

CentOS 6:

– 修改/boot/grub/grub.conf中的default

CentOS 7:

– 步驟1: 確保/etc/default/grub中的`GRUB_DEFAULT`為saved

– 步驟2: grub2-set-default ‘CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)’

rc.local


執行順序

CentOS 6: 串行的最後一個執行

CentOS 7: 和其他服務並行執行

可執行權限

CentOS 6: 默認有可執行權限

CentOS 7: 默認沒有可執行權限(官方不推薦使用rc.local),需要自行增加(chmod +x /etc/rc.d/rc.local)

注意事項

– rc.local由rc-local.service執行,並行執行,僅能保證在network之後啟動,因此建議rc.local里增加sleep 10來儘可能在最後執行

– 需要在rc.local的最後一行增加exit 0,否則可能導致已啟動的進程被關閉(echo ‘exit 0’ >> /etc/rc.d/rc.local)

– 建議盡量使用systemd來配置服務,不要使用rc.local

limit配置


CentOS 6

全局設置: 沒有全局設置的方法(/etc/security/limits.conf僅針對使用pam的進程,且有加載pam_limits.so的模塊,因為limits.conf是pam_limits.so的配置文件)

服務設置: 只能在服務啟動前設置ulimit,才能在啟動後看到效果

CentOS 7

全局設置: /etc/systemd/system.conf里DefaultLimitNOFILE=65535

服務設置: [Service]里增加LimitNOFILE=65535

yum僅使用ipv4


CentOS 6: yum沒有自帶方法

CentOS 7: yum.conf里增加ip_resolve=4

徹底禁用ipv6


CentOS 6和CentOS 7相同: 在grub上增加ipv6.disable=1

查看是否徹底關閉: sysctl -a | grep -i ipv6如果沒有任何輸出,則表示徹底關閉

防火牆


CentOS 6

默認開啟iptables服務,只不過默認沒有條目

CentOS 7

默認安裝並開啟firewalld服務

默認不安裝iptables服務(yum install iptables-services)

NetworkManager


CentOS 6: 默認未安裝

CentOS 7: 默認安裝並啟動

網卡名


CentOS 6

– 系統安裝完,默認是em1開始,這其實是在裝機完成時在udev里做的綁定

– 把
/etc/udev/rules.d/70-persistent-net.rules內容清空,則恢復成eth0開始編號

CentOS 7

– 不再通過udev綁定網卡名,默認是em1開始,有的是eno、enp、ens等名字

– 如果想恢復eth0,則/etc/default/grub里增加net.ifnames=0 biosdevname=0

– 如果想讓CentOS 6的網卡名不受udev影響,達到CentOS 7的效果,則刪除3個文件即可

rm -f /etc/udev/rules.d/70-persistent-net.rulesa
rm -f /lib/udev/write_net_rules
rm -f /lib/udev/rules.d/75-persistent-net-generator.rules

網卡名規則(詳細參考:
https://www.cnblogs.com/chia/p/7379775.html)

eno:主板板載網卡
enp:獨立網卡(PCI網卡)
ens:熱插拔網卡(usb之類)

CPU頻率(performance)


CentOS 6: 始終2.1GHz

最詳細的CentOS 6與7對比(一):常見設置對比

CentOS 7: 空閑時候1.2GHz

最詳細的CentOS 6與7對比(一):常見設置對比

CentOS 7: sysbench 1線程壓測時一個物理cpu所有核的頻率瞬間增長,其中最高打到2.6GHz

最詳細的CentOS 6與7對比(一):常見設置對比

CentOS 7: sysbench 42線程壓測:所有cpu所有核的頻率全部達到2.4GHz

最詳細的CentOS 6與7對比(一):常見設置對比

若要和6一樣保持頻率,則在/etc/default/grub里增加intel_pstate=disable(不建議,因為性能沒有任何提升,還在某些情況下降)

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/275080.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-17 14:19
下一篇 2024-12-17 14:19

相關推薦

發表回復

登錄後才能評論