第一部分: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