【转】CentOS 7.X 系统安装及优化
centos的演变
启动流程sysvinit
串行启动:一次一个,一个一个启动
并行启动:全部的一起启动
init优点
运行非常良好。主要依赖于shell脚本
init缺点
1、启动慢
2、容易夯住,fstab与nfs挂载问题
upstart 技术
使用的版本:
centos6
ubuntu14
systemd技术
克服init固有缺点,提高系统的启动速度
降低迁移成本
三种启动技术对比
并行启动三大原理:
1、解决socket 依赖/端口依赖
socket 网络套接字文件
2、解决D-Bus
依赖:采用了D-Bus 为程序之间的通讯工具,类似消息队列,可以缓存信息
3、解决文件系统依赖、类似autofs机制
安装centos7系统
虚拟机选择
磁盘空间尽量大一些
系统安装
1)开机进入安装
2)按下TAB键
添加内核参数 让网卡名称变为eth
空格 输入 net.ifnames=0 biosdevname=0 然后回车
3)选择语言
4) 设置网络连接和主机名
5)注意勾选开机自启动
6) 设置ip地址
同样的方式将另外 一块网卡配置好
7) 修改主机名
8)选择安装的环境,选择最小化安装。
注意勾选依赖包
9)磁盘分区为自定义分区。
选择/boot挂载点的大小。这里设置为1g
添加swap挂载点
注意选择都为标准分区类型,直接写到磁盘
添加根分区后选择完成
关闭密码保护
选择关闭
关闭KDUMP功能
开始安装,注意为469个包
安装的过程中设置root的密码。
安装完成后的优化
查看系统版本
[root@CentOS7 ~]# cat /etc/redhat-release
CentOS Linux release 7.3. (Core)
修改yum源,base源
[root@CentOS7 ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
--:--:-- --:--:-- --:--:--
epel源
[root@CentOS7 ~]# curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
:: :: --:--:--
安装软件
yum install vim wget bash-completion lrzsz nmap nc tree htop iftop net-tools -y
bash-completion 补全命令参数的包
centos7 与centos 6的区别
解决更换网卡后名称变更的问题
更改名称的方法
修改CentOS7网卡名称为传统名称eth0格式 http://oldboy.blog.51cto.com/2561410/1722101
nmtui
centos7 上管理网路的图形化工具
主机名配置文件的区别
临时 hostname
永久 /etc/hostname
[root@CentOS7 ~]# cat /etc/hostname
CentOS7
一步到位
[root@CentOS7 ~]# hostnamectl
Static hostname: CentOS7
Icon name: computer-vm
Chassis: vm
Machine ID: 4ab1c20b25f64a38a7197b8453b04b2c
Boot ID: abd0a393540b4788bc1e571b413b33c4
Virtualization: vmware
Operating System: CentOS Linux (Core)
CPE OS Name: cpe:/o:centos:centos:
Kernel: Linux 3.10.-.el7.x86_64
Architecture: x86-
修改主机名
[root@CentOS7 ~]# hostnamectl set-hostname clsn
字符集
临时
[root@clsn ~]# echo $LANG
zh_CN.UTF-
永久
[root@clsn ~]# cat /etc/locale.conf
LANG="zh_CN.UTF-8"
一步到位
[root@clsn ~]# localectl
System Locale: LANG=zh_CN.UTF-
VC Keymap: cn
X11 Layout: cn
查看系统版本号
[root@clsn bin]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID=""
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION=""
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION=""兼容的rc.local
cat /etc/rc.local
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.
想要使用rc.local要给他可执行权限
[root@clsn bin]# chmod +x /etc/rc.d/rc.local
[root@clsn bin]# ll /etc/rc.d/rc.local
-rwxr-xr-x. root root 11月 /etc/rc.d/rc.local
运行级别Runlevel
之前的查看运行级别的方法依旧使用
[root@clsn init.d]# runlevel
N
原运行级别文件
[root@clsn ~]# ls -lh /usr/lib/systemd/system/runlevel*.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel6.target -> reboot.target
7中设置运行级别
root@clsn init.d]# systemctl get-default multi-user.target
systemctl get-default #查看运行级别
示例
[root@clsn ~]# systemctl get-default
multi-user.target
[root@clsn ~]# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
运行级别的变更
[root@clsn ~]# ls -lh /usr/lib/systemd/system/runlevel*.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. root root 11月 : /usr/lib/systemd/system/runlevel6.target -> reboot.target
systemd一统天下
系统启动文件的目录
[root@clsn init.d]# ls /usr/lib/systemd/system
启动命令示例
[root@clsn init.d]# cat /usr/lib/systemd/system/crond.service
[Unit]
Description=Command Scheduler
After=auditd.service systemd-user-sessions.service time-sync.target [Service]
EnvironmentFile=/etc/sysconfig/crond
ExecStart=/usr/sbin/crond -n $CRONDARGS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process [Install]
WantedBy=multi-user.target
语法格式 http://www.jinbuguo.com/systemd/systemd.service.html
管理服务
关闭防火墙服务及开机自启动
systemctl stop postfix.service
systemctl disable postfix.service
关闭防火墙详细过程
[root@clsn ~]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@clsn ~]# systemctl stop firewalld.service
[root@clsn ~]# systemctl status firewalld.service
systemctl:融合service和chkconfig的功能于一体,兼容SysV和LSB的启动脚本,而且够在进程启动过程中更有效地引导加载服务。。
命令对比
systemctl start crond.service和systemctl start crond效果一样。
开机时间优化
systemd-analyze time
systemd-analyze blame
systemd-analyze plot >bootime.avg
开机启动时间
[root@clsn system]# systemd-analyze time
Startup finished in 387ms (kernel) + .406s (initrd) + .831s (userspace) = .626s
查看具体的使用时间
[root@clsn system]# systemd-analyze blame
.812s sshd-keygen.service
.758s abrt-ccpp.service
.395s chronyd.service
……
生产图表
[root@clsn tmp]# systemd-analyze plot >bootime.svg
[root@clsn tmp]# sz bootime.svg
开机启动项优化
[root@kickstart ~]# systemctl list-unit-files|egrep "^ab|^aud|^kdump|vm|^md|^mic|^post|lvm" |awk '{print $1}'|sed -r 's#(.*)#systemctl disable &#g'|bash
Removed symlink /etc/systemd/system/multi-user.target.wants/abrt-ccpp.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/abrt-oops.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/abrt-vmcore.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/abrt-xorg.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/abrtd.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/auditd.service.
Removed symlink /etc/systemd/system/basic.target.wants/microcode.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/vmtoolsd.service.
Removed symlink /etc/systemd/system/vmtoolsd.service.requires/vgauthd.service.OpenStack部署优化环境
修改网卡配置文件
# 第一个里程碑:重启完成之后,登录系统 #
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=4bf2af89-5f6d--83e9-df6ce1c3cc41
DEVICE=eth0
ONBOOT=no
# 第二个里程碑: 删掉多余的行,只留以下内容 #
TYPE=Ethernet
BOOTPROTO=dhcp
NAME=eth0
DEVICE=eth0
ONBOOT=no
# 第三个里程碑:在以上基础上,继续配置 #
# 红色为修改和增加部分
# 以下代码为优化后的网卡全部配置 #
TYPE=Ethernet
BOOTPROTO=none #取消dhcp
NAME=eth0
DEVICE=eth0
ONBOOT=yes #设置开机启动
IPADDR=10.0.0.11 #IP地址
NETMASK=255.255.255.0 #子网掩码
GATEWAY=10.0.0.254 #网关
DNS1=223.5.5.5 #DNS
# 说明 :与/etc/init.d/network restart 效果一致
# 第五个里程碑:检查 ping 一下网关10.0.0.254测试网络连通性 #
ping 10.0.0.254 -c2
到这里,ok,可以愉快的使用xshell了
系统的优化
# 登录xshell开始优化 #
防火墙的优化
systemctl disable firewalld.service
systemctl stop firewalld
Selinux的优化
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
ssh的优化
# 修改完成后为红色部分 #
vi /etc/ssh/sshd_config
93行: GSSAPIAuthentication no
129行: UseDNS no
sed -i '93s@GSSAPIAuthentication yes@GSSAPIAuthentication no@;129s@#UseDNS yes@UseDNS no@' /etc/ssh/sshd_config
# 重启ssh #
systemctl restart sshd
hosts的优化
vi /etc/hosts
# 增加2行
10.0.0.11 controller
10.0.0.31 compute1
10.0.0.32 compute2
修改主机名
hostnamectl set-hostname controller
yum源优化
# 使用光盘搭建本地yum源
umount /mnt
cd /etc/yum.repos.d/
mkdir test -p
\mv *.repo test
echo '[local]
name=local
baseurl=file:///mnt
gpgcheck=0' >local.repo
mount /dev/cdrom /mnt
yum makecache
其他优化
# 关闭网卡图形化设置模式 #
systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
# 关闭邮件服务
systemctl stop postfix.service
systemctl disable postfix.service
# 下载tab补全命令 #
yum install -y bash-completion.noarch
# 下载 常用命令 #
yum install -y net-tools vim lrzsz wget tree screen lsof tcpdump
# 至此;模板机优化完成;关机开始克隆 #
shutdown -h now
参考文献
https://access.redhat.com/documentation/zh-CN/Red_Hat_Enterprise_Linux/7/index.html
【转】CentOS 7.X 系统安装及优化的更多相关文章
- CentOS 7.X 系统安装及优化
centos的演变 启动流程sysvinit 串行启动:一次一个,一个一个启动 并行启动:全部的一起启动 init优点 运行非常良好.主要依赖于shell脚本 init缺点 1.启动慢 2.容易夯住, ...
- 【转】CentOS 6.5 生产环境优化指南
原文链接:https://www.deepwebcn.com/82.html centos6.5 CentOS 6.5 系统安装之后并不能立即投入生产环境使用,常常需要先经过我们运维人员的优化才行.优 ...
- CentOS 6.5系统安装配置图解教程
说明: 截止目前CentOS 6.x最新版本为CentOS 6.5,下面介绍CentOS 6.5的具体安装配置过程 服务器相关设置如下: 操作系统:CentOS 6.5 64位 IP地址:192.16 ...
- CentOS 7.0系统安装配置图解教程
转自:http://www.osyunwei.com/archives/7829.html 操作系统:CentOS 7.0 64位 IP地址:192.168.21.128 网关:192.168.21. ...
- CentOS 7.4 系统安装 git
CentOS 7.4 系统安装 git 一.使用 yum 安装 1.查看系统是否已经安装 git [root@localhost ~]# git --version 2.yum 安装 git [roo ...
- Linux(Centos )的网络内核参数优化来提高服务器并发处理能力【转】
简介 提高服务器性能有很多方法,比如划分图片服务器,主从数据库服务器,和网站服务器在服务器.但是硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题 ...
- Linux安全调优1:CentOS防火墙的设置与优化
CentOS防火墙的设置与优化 时间:2014-09-11 02:11来源:blog.csdn.net 作者:成长的小虫 的BLOG 举报 点击:4908次 一.设置主机防火墙. 开放: 服务器的:w ...
- Centos 7.x 系统基础优化
Centos 7.x 系统基础优化 1.更换国内yum源 删除系统带的centos官方yum源 rm -rf /etc/yum.repos.d/* 使用国内阿里云源 curl -o /etc/yum. ...
- centos 6.x 系统基础优化简版
Centos 6.x 系统基础优化 1.更换国内yum源 删除系统带的centos官方yum源 rm -rf /etc/yum.repos.d/* 使用国内阿里云源 curl -o /etc/yum. ...
随机推荐
- 【BZOJ4671】异或图(斯特林反演)
[BZOJ4671]异或图(斯特林反演) 题面 BZOJ Description 定义两个结点数相同的图 G1 与图 G2 的异或为一个新的图 G, 其中如果 (u, v) 在 G1 与 G2 中的出 ...
- 自学Linux Shell6.1-环境变量概念
点击返回 自学Linux命令行与Shell脚本之路 6.1-环境变量概念 环境变量 在Linux中,很多程序和脚本都通过环境变量来获取系统信息.存储临时数据和配置信息: bash shell使用环境变 ...
- 教你如何开启/关闭ubuntu防火墙
目录 [隐藏] 1 安装方法 2 使用方法 3 推荐设置 4 详细使用说明 安装方法 sudo apt-get install ufw 当然,这是有图形界面的(比较简陋),在新立得里搜索gufw试 ...
- Zabbix监控mysql主从(二)
二.Zabbix-server-web端配置 1:创建一个监控项作为mysql主从 2.创建mysql主从监控图形 三.创建触发器,实现主从异常报警 测试: [root@mysql-slave ...
- ztree更换节点图标
首先需要注意一点,如果有研究过树形菜单,就会发现实现删除和修改功能特别简单,但是增加却有一点复杂.造成这个现象是ztree树形菜单的历史遗留问题.大概是之前的版本没有增加这个功能,后来的版本加上了这个 ...
- 解决Win8.1 IE11兼容性问题的方法
装了64位win8.1企业版,IE11出现了一些兼容性问题,如个别网银网页兼容问题,还有office.迅雷.adobe reader.旋风等等插件不兼容不能加载的问题. 折腾了一天总算全部解决了,主要 ...
- python爬虫爬取页面源码在本页面展示
python爬虫在爬取网页内容时,需要将内容连同内容格式一同爬取过来,然后在自己的web页面中显示,自己的web页面为django框架 首先定义一个变量html,变量值为一段HTML代码 >&g ...
- 多线程Java Socket编程
采用Java 5的ExecutorService来进行线程池的方式实现多线程,模拟客户端多用户向同一服务器端发送请求. 1.服务端 package localSocket; import java.i ...
- Scala进阶之路-Scala中的Ordered--Ordering
Scala进阶之路-Scala中的Ordered--Ordering 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 说道对象的比较,在Java中大家最熟悉不过的就是实现类本身实 ...
- 网络编程基础【day09】:解决socket粘包之大数据(七)
本节内容 概述 linux下运行效果 sleep解决粘包 服务端插入交互解决粘包问题 一.概述 刚刚我们在window的操作系统上,很完美的解决了,大数据量的数据传输出现的问题,但是在Linux环境下 ...