第一部分:centos6和centos7的對比
第二部分:centos的簡單配置
1.對比文件系統
centos6.: EXT4
EXT4的單個文件系統的容量達到1EB,單個文件大小則達到16TB。
centos7.:XFS
XFS默認支持8EB減掉1字節的單個文件系統,最大支持的文件大小為9EB,最大文件系統支持18EB。
2.對比防火牆,內核版本,默認數據庫
centos6:
防火牆:iptables
內核版本:2.6.x-x
默認數據庫:MySQL
centos7:
防火牆:firewalld (也可以使用iptables)
內核版本:3.10.x-x (可以更好的支持docker)
默認數據庫:MariaDB (也可以用MySQL)
3.對比時間同步,修改時區,修改語言
centos6:
時間同步:ntpq -p
修改時區:/etc/sysconfig/clock
修改語言: /etc/sysconfig/i18n
centos7:
時間同步:chronyc sources
修改時區:timedatectl set-timezone Asia/Shanghai
修改語言: localectl set-locale LANG=zh_CN.UTF-8
但是我基本不用,記住修改后需要重啟。我常用:
# locale -a |grep CN 先查看有沒有zh_CN.utf-8 沒有就安裝
# yum install kde-l10n-Chinese -y ; yum groupinstall "fonts" -y
# vim /etc/locale.conf
#LANG="en_US.UTF-8" #英文
LANG="zh_CN.UTF-8" #修改后的中文
# source /etc/locale.conf
4.對比主機名
centos6.:
配置文件在/etc/sysconfig/network 這里永久設置主機名字
centos7.:
配置文件在/etc/hostname (永久設置)
hostnamectl set-hostname liych
5.對比網絡服務管理
centos6:
service 服務名 狀態
狀態:
status
start
stop
--status-all
chkconfig:
on
off
--list
centos7:
systemctl 服務名 狀態
狀態:
status
start
stop
list-units
enable
disable
list-units-files
6.對比網絡設置
centos6:
網卡名字是:eth0
centos7:
網卡名字是:ens33 ... enp4s0f0 ... eno1 ... eno167....
7.對比網絡配置的命令
centos6:
ifconfig 、setup
centos7:
ip 、nmtui
8.對比網絡的服務
centos6:
network
centos7:
networkmanager
第二部分:
1.修改centos7為eth0的網卡名字
# cd /etc/sysconfig/network-scripts/
# cp -a ifcfg-ens33 ifcfg-eth0
將網卡名字修改
NAME=eth0
DEVICE=eth0
修改grub配置文件
# vim /etc/defaule/grub
修改grub文件 在GRUB_CMDLINE_LINUX原有的參數后面加上"net.ifnames=0 biosdevname=0"
# grub2-mkconfig -o /boot/grub2/grub.cfg
# reboot
2.本節常用命令
whoami #查看當前用戶是誰
su - # 加-表示 帶環境變量切換
su root
3.添加一個普通的用戶
#useradd liych
#passwd liych
4.centos更換yum源
鏡像源:
搜狐:http://mirrors.sohu.com
網易:http://mirrors.163.com
阿里雲:https://opsx.alibaba.com/mirror
淘寶:http://npm.taobao.org
阿里雲鏡像站:https://opsx.alibaba.com/mirror (這里使用阿里雲提供的源,在做yum本地倉庫的是也推薦使用阿里源)
使用阿里雲源:
CentOS
1、備份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下載新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、之后運行yum makecache生成緩存
4、其他
非阿里雲ECS用戶會出現 Couldn't resolve host 'mirrors.cloud.aliyuncs.com' 信息,不影響使用。
用戶也可自行修改相關配置:
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
5.安裝必要的軟件包
yum install tree telnet dos2unix sysstat lrzsz -y
6.開機優化啟動項
將不常用的服務關閉掉:
# systemctl list-unit-files|egrep "^ab|^aud|^kdump|vm|^md|^mic|^post|lvm" |awk '{print $1}'|sed -r 's#(.*)#systemctl disable &#g'|bash
7.設置靜態地址
dhcp的地址總是變化,需要設置靜態地址,可以不變,方便連接使用。
配置文件路徑:cd /etc/sysconfig/network-scripts/
TYPE=Ethernet
BOOTPROTO=none #取消dhcp
NAME=eth0
DEVICE=eth0
ONBOOT=yes #設置開機啟動
IPADDR=172.16.0.5 #IP地址
NETMASK=255.255.255.0 #子網掩碼
GATEWAY=172.16.0.254 #網關
DNS1=114.114.114.114 #DNS
8.關閉防火牆和selinux
配置服務實驗環境,建議不啟用這些,必要時候需要配置防火牆。
關閉防護牆:
# systemctl stop firewalld
# systemctl disable firewalld.service
# systemctl status firewalld
關閉selinux:
# sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
# sestatus
9.優化VMware的SSH使其連接時候更快的連接
當時有CRT或Xshell連接虛擬機的時候,連接的速度很慢,會卡頓。
關閉登陸的時候客戶端需要對服務器端的IP地址進行反解析。
但是測試的是發現GSSAPIAuthentication是默認關閉的,所以可以只設置UseDNS no 就可以加速連接。
# sed -i '93s@GSSAPIAuthentication yes@GSSAPIAuthentication no@;129s@#UseDNS yes@UseDNS no@' /etc/ssh/sshd_config
為了避免迷惑解釋下 93s和129s的示意如下:
[root@liych ~]# cat 1.txt
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes
[root@liych ~]# sed '1s@Don@123@;2s@yes@456@' 1.txt
# 123't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts 456
[root@liych ~]# sed 's@Don@123@;s@yes@456@' 1.txt
# 123't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts 456
10.修改主機名
# hostnamectl set-hostname liych
11.host解析
# vim /etc/hosts
172.16.0.5 liych
12.更改SSH配置文件
配置文件:
# vim /etc/ssh/sshd_config
雖然是# 注釋了,默認的也是22端口。
#Port 22
Port 5127
更改root禁止登錄
#PermitRootLogin yes #表示遠程可以Root身份登錄,需要改為no,避免了,遠程的root連接高風險
PermitRootLogin no
禁止空密碼登錄
#PermitEmptyPasswords no
PermitEmptyPasswords no
重啟生效:
# /etc/init.d/sshd restart
注意這個修改后再生成遠程連接的時候,需要修改原配置為新配置即可。
命令集合:
Port 5127
PermitRootLogin no
PermitEmptyPasswords no
GSSAPIAuthentication no
UseDNS no
13.sudo 控制非root用戶使用命令visudo
控制普通用戶的命令使用權,visudo后續詳細解釋。
visudo相當於更改、/etc/sudoers
用戶 授權角色的權限 命令
#liych ALL=(ALL) NOPASSWD:ALL #相當於liych擁有root的權限
# 也可以使用%用戶組
命令集合:
# visudo
# 添加授權的命令,多個命令用逗號分開
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
liych ALL=(ALL) /usr/sbin/useradd #擁有useradd的權限
#普通用戶使用時:
# su liyc
# sudo useradd liych01
14.自定義命令
自定義一個命令,有的時候為了方便執行一個實時運行的狀態的腳本,還需要找路徑,索性就自建一個命令吧
which 可以查看到命令的路徑
命令集合:
[root@liych ~]# mkdir /home/liych
[root@liych ~]# cd /home/liych/
[root@liych liych]# touch 1 #1代表自定義命令的名字
[root@liych liych]# echo " echo 123" >/home/liych/1 #要執行1命令后的結果是什么
[root@liych liych]# PATH=/home/liych/:$PATH #加入到環境變量內,原來的環境變量也同時加入;臨時生效
[root@liych liych]# 1 #執行1命令后,返回命令結果
123
# 以下命名是永久生效,無論是重啟后,也會生效;
# 注意使用單引號做引用,強引用。
[root@liych liych]# echo 'PATH="/home/liych/:$PATH"' >> /etc/profile
[root@liych liych]# source /etc/profile
[root@liych liych]# 1 #執行1命令后,返回命令結果
123
15.時間同步方法
第一點:需要注意本機網絡通
第二點:/var/spool/cron/root #這個root 是必須的,可以使用crontab -l 查看到定時任務添加與否
# ntpdate cn.pool.ntp.org #(生效)執行這條命令即可,后端的域名要是失效了,百度搜下時間域名即可。
# echo '*/5 * * * * /usr/sbin/ntpdate cn.pool.ntp.org >/dev/null 2>&1' >>/var/spool/cron/root
# crontab -l #檢查定時任務是否添加完成。
centos7的時間服務詳見:https://www.cnblogs.com/liych/p/11747551.html
16.加大服務器文件描述符
ulimit -n 查看當前文件描述符。
文件描述符相當於創建一個文件或打開一個新文件,內核向進程返回的一個文件描述符。
# ulimit -HSn 65535 當前生效
永久生效:
[root@liych ~]# echo '* soft nofile 65535' >>/etc/security/limits.conf
[root@liych ~]# echo '* hard nofile 65535' >>/etc/security/limits.conf
17.調整內核參數
兩種修改內核參數方法:
1、使用echo value方式直接追加到文件里如echo "1" >/proc/sys/net/ipv4/tcp_syn_retries,但這種方法設備重啟后又會恢復為默認值
2、把參數添加到/etc/sysctl.conf中,然后執行sysctl -p使參數生效,永久生效
[root@liych ipv4]# vim /etc/sysctl.conf
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.ip_local_port_range = 4000 65000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_orphans = 16384
#以下參數是對iptables防火牆的優化,防火牆不開會提示,可以忽略不理。
net.ipv4.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_max=25000000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait=120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait=60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait=120
永久更改,重新登錄后有效
查看 tail -1 /etc/security/limits.conf
18.使用本地yum源
19.其他:
1.時間:
查看系統的開機時間:
systemd-analyze time
查看具體服務的運行時間:
systemd-analyze blame
輸出圖形展示:
# systemd-analyze plot >system_time.svg
2.清空版本
> /etc/issue
cat /dev/null >/etc/issue