一、CentOS7介绍

1、CentOS7使用起来最大的变化就是服务管理

2、systemd是linux下的一种init软件,开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降低shell系统开销的效果,最终代替现在常用的system v与init程序

3、systemd的特点

并发启动原理之一:解决 socket 依赖/端口依赖
并发启动原理之二:解决 D-Bus 依赖:采用了D-Bus作为程序之间的通信工具,类似消息队列,可以缓存信息
并发启动原理之三:解决文件系统依赖:类似autofs机制

二、CentOS6服务管理与CentOS7区别之处

CentOS6服务管理命令

CentOS7服务管理命令

备注

service crond start

systemctl start crond.service

启动服务

service crond stop

systemctl stop crond.service

停止服务

service crond restart

systemctl restart crond.service

重启服务

service crond reload

systemctl reload crond.service

平滑重启,无需中断操作

service crond status

systemctl status crond.service

查看服务运行状态

chkconfig –list

systemctl list-unit-files

各个运行级别下服务的状态

chkconfig crond on

systemctl enable crond.service

设置服务开机启动

chkconfig crond off

systemctl disable crond.service

设置服务开机不启动

chkconfig –list crond

systemctl is-enable crond.service

检查服务当前配置为启用还是禁用

chkconfig –add crond

systemctl daemon-reload

添加新服务或者变更时使用

三、CentOS7使用与变化之处

1、更改yum源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

2、安装常用小软件

yum -y install lrzsz nmap nc tree htop wget vim net-tools  bash-completion

3、网络配置命令

steup——>nmtui

4、主机名配置文件

/etc/sysconfig/network ——>/etc/hostname

CentOS7:hostnamectl set-hostname moban #永久生效,不支持大写

5、字符集

/etc/sysconfig/i18n ——>/etc/locale.conf

CentOS7:localectl set-locale LANG="en_US.UTF-8" #永久生效

6、查看系统版本

[root@CentOS7 ~]# 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/"

CentOS7新加的文件,对所有linux系统都可以查看

7、兼容的/etc/rc.local

chmod +x /etc/rc.d/rc.local#默认是关闭的,想使用需加执行权限
Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure

8、运行级别

/etc/inittab——>ls -lh /usr/lib/systemd/system/runlevel*.target

9、启动脚本

/etc/init.d/——>ls /usr/lib/systemd/system

10、关闭防火墙与selinux

#关闭防火墙
systemctl disable firewalld.service
systemctl stop firewalld.service
#关闭selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#' /etc/selinux/config
setenforce

11、查看系统启动时间

systemd-analyze time
systemd-analyze blame#详细查看
systemd-analyze plot > bootime.svg#生成系统启动时间图

四、Centos7基础优化

1、修改网卡名称

cd  /etc/sysconfig/network-scripts/
vim ifcfg-eno16777729
TYPE=Ethernet
BOOTPROTO=static
IPADDR=10.0.1.201
NETMASK=255.255.255.0
GATEWAY=10.0.0.254
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
NAME=eth0
UUID=efd17b9a-a5ab-4c94-be62-d2c32eb48a7e
DEVICE=eth0
ONBOOT=yes
DNS1=223.5.5.5
DNS1=223.6.6.6

修改内核参数

mv  ifcfg-eno16777729  ifcfg-eth0
vi /etc/sysconfig/grub
GRUB_TIMEOUT=
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0 rhgb quiet" #添加 net.ifnames= biosdevname=
GRUB_DISABLE_RECOVERY="true" #生成启动菜单#
grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.-.el7.x86_64
Found initrd image: /boot/initramfs-3.10.-.el7.x86_64.img
Found linux image: /boot/vmlinuz--rescue-e8675ae79abd41309dac42388f8d9116
Found initrd image: /boot/initramfs--rescue-e8675ae79abd41309dac42388f8d9116.img reboot

2、安装Yum源

#安装163源#
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum clean all
yum makecache

3、yum安装常用软件包

yum install gcc cmake bzip2-devel curl-devel db4-devel libjpeg-devel libpng-devel freetype-devel libXpm-devel gmp-devel libc-client-devel openldap-devel unixODBC-devel postgresql-devel sqlite-devel aspell-devel net-snmp-devel libxslt-devel libxml2-devel pcre-devel mysql-devel pspell-devel libmemcached libmemcached-devel zlib-devel  vim wget   lrzsz  tree -y

4、优化SSHD

sed -i -e '49s/^#//g' /etc/ssh/sshd_config            ##启用49行配置
sed -i -e '49s/yes/no/g' /etc/ssh/sshd_config ##禁止root使用ssh登录
sed -i -e '129s/#/ /g' /etc/ssh/sshd_config ##禁止UseDNS
sed -i -e '129s/yes$/no/g' /etc/ssh/sshd_config
sed -i '/^GSS/s/yes/no/g' /etc/ssh/sshd_config ##禁用GSSAPI认证加快登录速度 systemctl restart sshd ##重新启动服务
systemctl enable sshd ##设置为开机启动
systemctl status sshd ##查看状态
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: active (running) since 一 -- :: CST; 1min 3s ago

5、加大文件描述符

ulimit -n
ulimit -a
vi /etc/security/limits.conf
最后添加
* soft nofile
* hard nofile
hive - nofile
hive - nproc
#用户进程限制#
sed -i 's#4096#65535#g' /etc/security/limits.d/-nproc.conf #加大普通用户限制 也可以改为unlimited
egrep -v "^$|^#" /etc/security/limits.d/-nproc.conf
* soft nproc
root soft nproc unlimited reboot

6、优化内核

cat /etc/sysctl.conf
#CTCDN系统优化参数
#关闭ipv6
net.ipv6.conf.all.disable_ipv6 =
net.ipv6.conf.default.disable_ipv6 =
#决定检查过期多久邻居条目
net.ipv4.neigh.default.gc_stale_time=
#使用arp_announce / arp_ignore解决ARP映射问题
net.ipv4.conf.default.arp_announce =
net.ipv4.conf.all.arp_announce=
net.ipv4.conf.lo.arp_announce=
# 避免放大攻击
net.ipv4.icmp_echo_ignore_broadcasts =
# 开启恶意icmp错误消息保护
net.ipv4.icmp_ignore_bogus_error_responses =
#关闭路由转发
net.ipv4.ip_forward =
net.ipv4.conf.all.send_redirects =
net.ipv4.conf.default.send_redirects =
#开启反向路径过滤
net.ipv4.conf.all.rp_filter =
net.ipv4.conf.default.rp_filter =
#处理无源路由的包
net.ipv4.conf.all.accept_source_route =
net.ipv4.conf.default.accept_source_route =
#关闭sysrq功能
kernel.sysrq =
#core文件名中添加pid作为扩展名
kernel.core_uses_pid =
# 开启SYN洪水攻击保护
net.ipv4.tcp_syncookies =
#修改消息队列长度
kernel.msgmnb =
kernel.msgmax =
#设置最大内存共享段大小bytes
kernel.shmmax =
kernel.shmall =
#timewait的数量,默认180000
net.ipv4.tcp_max_tw_buckets =
net.ipv4.tcp_sack =
net.ipv4.tcp_window_scaling =
net.ipv4.tcp_rmem =
net.ipv4.tcp_wmem =
net.core.wmem_default =
net.core.rmem_default =
net.core.rmem_max =
net.core.wmem_max =
#每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目
net.core.netdev_max_backlog =
#限制仅仅是为了防止简单的DoS 攻击
net.ipv4.tcp_max_orphans =
#未收到客户端确认信息的连接请求的最大值
net.ipv4.tcp_max_syn_backlog =
net.ipv4.tcp_timestamps =
#内核放弃建立连接之前发送SYNACK 包的数量
net.ipv4.tcp_synack_retries =
#内核放弃建立连接之前发送SYN 包的数量
net.ipv4.tcp_syn_retries =
#启用timewait 快速回收
net.ipv4.tcp_tw_recycle =
#开启重用。允许将TIME-WAIT sockets 重新用于新的TCP 连接
net.ipv4.tcp_tw_reuse =
net.ipv4.tcp_mem =
net.ipv4.tcp_fin_timeout =
#当keepalive 起用的时候,TCP 发送keepalive 消息的频度。缺省是2 小时
net.ipv4.tcp_keepalive_time =
net.ipv4.tcp_keepalive_probes =
net.ipv4.tcp_keepalive_intvl =
#允许系统打开的端口范围
net.ipv4.ip_local_port_range =
#修改防火墙表大小,默认65536
net.netfilter.nf_conntrack_max=
net.netfilter.nf_conntrack_tcp_timeout_established=
# 确保无人能修改路由表
net.ipv4.conf.all.accept_redirects =
net.ipv4.conf.default.accept_redirects =
net.ipv4.conf.all.secure_redirects =
net.ipv4.conf.default.secure_redirects = sysctl -p #生效

7、时间同步

ntpdate  time.nist.gov
hwclock -w #先同步一遍时间到硬件时间

linux运维、架构之路-CentOS7的更多相关文章

  1. linux运维架构师职业规划

    1.假如你从来未接触过Linux的话,首先要做的就找一本指导书来学习.现在公认的Linux的入门书籍是“鸟哥的私房菜”,讲的很全面,鸟哥的私房菜一共分为两部,一部是基础篇,一部是服务器篇.“鸟哥的私房 ...

  2. 从苦逼到牛逼,详解Linux运维工程师的打怪升级之路

    做运维也快四年多了,就像游戏打怪升级,升级后知识体系和运维体系也相对变化挺大,学习了很多新的知识点. 运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感 ...

  3. Nginx+Lua+Redis整合实现高性能API接口 - 网站服务器 - LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区! - Powered by Discuz!

    Nginx+Lua+Redis整合实现高性能API接口 - 网站服务器 - LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区! - Powered by Disc ...

  4. Linux运维企业架构实战系列

    Linux运维企业架构项目实战系列 项目实战1-LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2-LVS.nginx实现负载均衡系列 2.1 项目实战2.1-实现基于LVS负载均衡集 ...

  5. Linux运维企业架构项目实战系列

    Linux运维企业架构项目实战系列 项目实战1—LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2—LVS.nginx实现负载均衡系列2.1 项目实战2.1—实现基于LVS负载均衡集群 ...

  6. Linux 运维入门到跑路书单推荐

    一.基础入门 <鸟哥的Linux私房菜基础学习篇>:最具知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>,全面而详细地介绍了Linux操作系统. https://b ...

  7. Linux运维:安装CentOS7图解

    Ago linux运维群: 93324526 笔者QQ:578843228 此篇博文针对最小化安装,和只有图解.有不懂地方,欢迎加群询问. 此篇以CentOS7.2为例

  8. Linux运维:安装CentOS7.2-图解

    矮哥linux运维群: 93324526 笔者QQ:578843228 此篇博文针对最小化安装,和只有图解.有不懂地方,欢迎加群询问.

  9. linux运维中的命令梳理(一)

    在linux日常运维中,我们平时会用到很多常规的操作命令. 下面对常用命令进行梳理: 命令行日常系快捷键(不分大小写)CTRL + A 移动光标到行首CTRL + E 移动光标到行末CTRL + U ...

  10. Linux运维工程师成长必经之路

    本路线图是从0基础开始,全方位由浅入深,按照多年Linux培训经验和优秀教学方法制定的学习思路和学习方法,路线图包括初级入门.中级进阶.高级提升和资深冲刺四个阶段,每阶段对应着不同优秀的课程和学习方法 ...

随机推荐

  1. Matlab与C++混合编程 1--在C++中调用自己写的matlab函数

    在Visual Studio中使用C++中调用MATLAB程序 在matlab中可以通过mbuild工具将.m文件编译成dll文件供外部的C++程序调用,这样就可以实现matlab和C++混合编程的目 ...

  2. win10安装Tensorflow1.9GPU版本

    前言 看到DateWhale出了一篇安装教程(微信公众号DateWhale),决定体验一下Tensorflow1.9的GPU版本..其实一开始装的是2.0,但是tf.Session()就报错了,说是2 ...

  3. centos 7 中如何提取IP地址

    ifconfig |grep -Eo "(([1-9)?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|1[0-9]{2}|2[0-4][0 ...

  4. 多线程13-CountdownEvent

        );         ));             ));             t1.Start();             t2.Start();             _coun ...

  5. sql limit order by and where

    1 sql limit limit size,返回前size行. limit offset , size,返回offset开始的size行,offset从0行开始. 2 sql limit with ...

  6. 转:mysql datetime类型精确到毫秒、微秒的问题

    原文地址:mysql datetime类型精确到毫秒.微秒的问题 mysql里面的datetime类型的精确度是可以到1/ 10 ^ 6 秒的某些客户端(如navicat for mysql)的显示经 ...

  7. [FJOI2007]轮状病毒 题解(dp(找规律)+高精度)

    [FJOI2007]轮状病毒 题解(dp(找规律)+高精度) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1335733 没什么好说的,直接把规律找出来,有 ...

  8. HTML中button标签点击实现页面跳转

    方法1:使用onclick事件 <input type="button" value="按钮" onclick="javascrtpt:wind ...

  9. LeetCode 235. 二叉搜索树的最近公共祖先

    235. 二叉搜索树的最近公共祖先 题目描述 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个结点 p.q,最近公共祖先 ...

  10. c++ Socket客户端和服务端示例版本三(多线程版本)

    客户端 #include <stdio.h> #include <stdlib.h> #include <errno.h> #include <sys/soc ...