1. 程式人生 > >CentOS7.5安裝與初始化配置(做標準化)

CentOS7.5安裝與初始化配置(做標準化)

分配 同步服務 == ulimit 默認 ipad get aos ssa

本文分享CentOS的標準化安裝配置方法,方便集群批量裝機配置

------------------------- 完美的分割線 ----------------------------

1.安裝標準化

1.1.安裝期間的語言

中文-簡體中文,安裝完成也會默認支持中文輸出,便於管理

1.2.時區選擇

亞洲上海,CST時區

1.3.分區方式

掛載路徑  分區格式 分區大小 備註信息
swap分區 內存的2倍 交換分區,如果是虛擬機可以不創建
/boot 500MB 啟動分區,如果不分配磁盤被占滿會無法啟動系統
/ 剩余所有空間 後續有其他需求,可以增加磁盤獨立創建分區

1.4.安裝包的選擇

1)如果是一般的DVD鏡像,建議選擇最小化安裝,然後手動選擇安裝以下軟件包組:

類別 英文名稱 中文名稱 備註信息
基本系統(Base System) Base 基本 基本的系統組件
compatibility libraries 兼容程序庫 庫文件
Debugging Tools 調試工具 常用工具
開發(Development) Development Tools 開發工具 編譯工具cmake,gcc等
語言支持 English 英語
Chinese 漢語

2)如果是minimal的鏡像,基本沒什麽需要選擇的,需要的安裝包在裝完系統後安裝即可,系統會更加精簡一些,大約需要安裝292個軟件包

1.5.用戶

管理員用戶:root

普通用戶:自定義一個

1.6.安全選項

kdump:一般用不著關閉即可

# 以上是安裝系統時可以進行的配置選項,安裝完成還需要對系統做一些基礎的初始化優化配置

2.初始化CentOS7.5系統(優化配置)

2.1.修改網絡配置

1)修改IP地址為固定地址

# 可以使用圖形化界面配置

nmtui      # 這個是CentOS7版本下的setup命令,可以配置IP,主機名,DNS等信息

# 配置完成重啟網卡,進行測試

systemctl restart network
ip add
ping www.baidu.com

# 至此,可以使用CRT等軟件遠程連接進行配置

2)創建常用工作目錄

# 生產環境下必須有個固定的目錄存放一些安裝軟件和調試工具,否則每個管理員都隨意存放軟件,服務器的環境可以想而知

mkdir -p /server/{tools,scripts,backup}
cd /server/tools/

3)設置DNS和主機名

# 修改服務器主機名

vi /etc/hostname 
--------------------------------
demohost
--------------------------------

# 設置hosts域名解析

vi /etc/hosts
--------------------------------
192.168.1.200    demohost
--------------------------------

# 設置DNS解析

vi /etc/resolv.conf 
--------------------------------
nameserver 202.106.0.20
nameserver 8.8.8.8
--------------------------------

# 手動修改網卡配置文件,刪除UUID信息和MAC地址等方便克隆,禁用IPv6相關配置

vim /etc/sysconfig/network-scripts/ifcfg-eth0
------------------------------------
[root@demohost tools]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
NAME=eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
DEFROUTE=yes
IPADDR=192.168.1.200
PREFIX=24
GATEWAY=192.168.1.1
IPV4_FAILURE_FATAL=no
DNS1=202.106.0.20
DNS2=8.8.8.8
IPV6INIT=no
IPV6_AUTOCONF=no
IPV6_DEFROUTE=no
IPV6_PEERDNS=no
IPV6_PEERROUTES=no
IPV6_PRIVACY=no
IPV6_FAILURE_FATAL=no
ARPCHECK=no        # 禁用ARP檢查 --------------------------------------

# 配置完成重啟網卡,進行測試

systemctl restart network
ip add
ping www.baidu.com

2.2.安裝常用工具

# 安裝工具(wget,rz,sz,tree,dos2unix,ifconfig,nslookup等)

yum install gcc gcc-c++ cmake pcre pcre-devel zlib zlib-devel openssl openssl-devel vim wget telnet setuptool lrzsz dos2unix net-tools bind-utils tree screen iftop ntpdate tree lsof iftop iotop -y
yum groupinstall "Development tools" -y

2.3.配置yum源(阿裏雲)

1)配置阿裏雲base源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  
cat /etc/yum.repos.d/CentOS-Base.repo

2)配置阿裏雲epel源

mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup  
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup  
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
cat /etc/yum.repos.d/epel.repo

3)創建yum緩存進行測試

yum clean all
yum makecache fast

2.4.配置系統環境變量

1)修改記錄的歷史命令數量

sed -i s#HISTSIZE=1000#HISTSIZE=10000#g /etc/profile
cat /etc/profile|grep HISTSIZE=10000

2)設置超時自動註銷登陸

# 8h=28800s

echo " " >> /etc/profile
echo "# Auto-Logout for 4 hours by zhaoshuai on $(date +%F)." >> /etc/profile
echo "export TMOUT=28800" >> /etc/profile
tail -4 /etc/profile
source /etc/profile
echo $TMOUT

2.5.配置系統安全選項

1)修改ssh配置加速遠程連接

# 只監聽IPv4端口,關閉GSSAPI秘鑰認證,關閉DNS解析

sed -i s/#ListenAddress 0.0.0.0/ListenAddress 0.0.0.0/g /etc/ssh/sshd_config
grep ListenAddress /etc/ssh/sshd_config

sed -i s/GSSAPIAuthentication yes/GSSAPIAuthentication no/g /etc/ssh/sshd_config
grep GSSAPIAuthentication /etc/ssh/sshd_config

sed -i s/#UseDNS yes/UseDNS no/g /etc/ssh/sshd_config
grep UseDNS /etc/ssh/sshd_config

# 重啟sshd服務

/bin/systemctl restart  sshd.service
/bin/systemctl status  sshd.service

2)關閉selinux

# 立即關閉selinux(立即生效)

getenforce
setenforce 0
getenforce

# 返回信息如下

# Enforcing/enabled              # 執行,強制執行,開啟時狀態為1
# Permissive/disabled            # 許可的,自由的,關閉時狀態為0

# 永久關閉selinux(重啟也生效)

sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/selinux/config
cat /etc/selinux/config |grep SELINUX=disabled

3)關閉防火墻

# 內網一般不需要使用

systemctl stop firewalld
systemctl disable firewalld
systemctl status  firewalld

4)關閉其他不用的服務

# 郵箱服務,CentOS7默認安裝postfix,而不是sendmail

systemctl stop  postfix
systemctl disable  postfix
systemctl status  postfix
netstat -anptl

2.6.修改內核參數

1)修改文件句柄數

vim /etc/security/limits.conf 
-----------------------------------
# 系統最大連接數
*    soft    nofile    65535
*    hard   nofile    65535
*    soft    nproc    65535
*    hard   nproc    65535
-----------------------------------

# 修改完如下顯示

[root@demohost tools]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 15335
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 65535
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

2.7.配置時間同步

1)安裝ntp服務並配置開機自啟動

# CentOS7默認的時間同步服務是chrony,這裏為了方便使用ntp服務

yum -y install ntp
systemctl enable ntpd
systemctl start ntpd
systemctl status ntpd

2)手動進行時間同步

date
/usr/sbin/ntpdate ntp1.aliyun.com

3)配置自動同步時間

echo "# made for sync time by zhaoshuai on $(date +%F)">> /var/spool/cron/root
echo */5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1 >>/var/spool/cron/root
crontab -l

# 註意:中國的時區應該為CST,為中部時區,如果是EST則為東部時區,UTC開啟了夏時令也不合適,需要關閉
# 安裝CentOS系統時要去掉夏令時的選項,否則在夏令時的那一天會有時間的自動變換,
如果某個服務在時間上有要求就會導致該服務承載的業務出現問題,所以要關閉夏令時

2.8.更新系統內核

1)判斷是否需要更新
一般來說建議更新到最新的內核版本,防止已知的系統漏洞問題

如果要安裝指定版本的軟件也不能隨意升級內核版本

2)內核升級方法

# 升級前後需要查看內核版本

cat  /etc/redhat-release 

# 更新內核

yum update

# 內核升級完成需要重啟系統才可以生效

reboot

# 註意:
內核升級期間一定不可以中斷操作,否則重啟會無法進入系統
如果內核升級期間出錯,需要能連到tty終端手動調整開機需要啟動的內核
然後登陸系統手動修改內核啟動順序,防止重啟出錯,最後再次進行內核升級嘗試修復

3)拓展:yum update與upgrade的區別?

update會查詢互聯網上最新的內核軟件包進行升級
upgrade只查詢當前yum源中比目前已安裝軟件版本高的那些
總體來說update升級更加徹底

# 至此,CentOS7的系統初始化配置就完成了

======== 完畢,呵呵呵呵 ========

CentOS7.5安裝與初始化配置(做標準化)