Centos7变动
Nmtui:网络配置图形界面
Systemctl:管理systemd的单元
Service:系统服务
Socket:进程间的通信
Busname:
Target:多个unit构成的组,运行级别
Snapshot:systemd快照,yunxin运行级别
Snapshot:systemd快照,可以快速的切换某个快照
Device:硬件设备
Mount:文件系统挂载点
Automount:自动挂载点
Swap:swap的文件
Timer:定时器
Path:文件或者路径
Slice:进程组
Scope:不是由system启动的外部进程
Systemctl 查看所有对象
Systemctl -d 查看所有对象相关的内容
Systemctl is-active sshd 查看sshd服务是否开启
Systemd 好处
- 并行化功能。提高启动速度
- 按需启动守护进程。而不需要单独的服务
- 自动服务依赖关系管理系统。可以防止时间超时 例如:网络不可用的时候,不能启动网络服务
System 管理的内容叫对象 (也叫做单元)
Nice用法
id + 用户名 查看用户id
nice -n 5 httpd 调整httpd的优先级为5
取值范围 nice -20~19 越小优先级越高
普通用户 0-19
Root -20~19
systemd提供更优秀的框架以表示系统服务间的依赖关系
实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果
systemd的目标是:尽可能启动更少进程;尽可能将更多进程并行启动。
systemd尽可能减少对shell脚本的依赖。
systemd单位类型
(systemctl --type=单位类型,用来过滤单位):
服务(service):管理着后台服务;
挂载(mount)自动挂载(automount):用来挂载文件系统;
目票(target):运行级别;
套接字(socket):用来创建套接字,并在访问套接字后,立即利用依赖关系间接地启动另一单位;
开机服务管理
=================================================
systemd添加新的unit(daemon)
也就是采用systemd来管理,/sbin/chkconfig --add foo相当
把新生成的foo.service 放到/usr/lib/systemd/system/下面,然后采用load命令导入
systemctl load foo.service
删除unit(daemon)
删除一个unit没有相应的命令,通常的做法是停掉daemon,然后删除相应的配置文件。
开机启动unit
systemctl enable postfix.service
增加由/usr/lib/systemd/system/到/etc/systemd/system/multi-user.target.wants/下的软链接
ln -s '/usr/lib/systemd/system/postfix.service' '/etc/systemd/system/multi-user.target.wants/postfix.service'
开机不启动unit
systemctl disable httpd.service
删除/etc/systemd/system/multi-user.target.wants下的软链接
查看开机是否启动
systemctl is-enabled .service #查询服务是否开机启动
systemd查看开机自启动的程序
相当于chkconfig --list
ls /etc/systemd/system/multi-user.target.wants/
查看systemd单元加载及活动情况
systemctl
显示启动失败的单元
systemctl --failed
查看systemd管理的所有单元
systemctl list-unit-files
服务管理
=================================================
启动服务
systemctl start httpd.service
关闭服务
systemctl stop httpd.service
重启服务
systemctl restart httpd.service
重新加载
systemctl reload httpd.service
查看状态
systemctl status httpd.service
包括启动状态、启动时间、主进程及相关进程、相关日志
运行级别
=================================================
systemd用target替代了runlevel的概念,多个的 'target' 可以同时激活
systemd不使用/etc/inittab,如何查看系统默认的运行级别
ll /etc/systemd/system/default.target
查看这个软链接真正指向的文件
如何查看系统的当前运行级别
runlevel依然可用
systemd的方法是:systemctl list-units --type=target
改变当前target,重启无效
systemctl isolate graphical.target
修改默认运行级别
1.首先删除已经存在的符号链接
rm /etc/systemd/system/default.target
2.默认级别转换为3(文本模式)
systemctl enable multi-user.target
相当于ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
ln -s /lib/systemd/system/multi-user.target > /lib/systemd/system/default.target
3.重启
reboot
运行级别如下:
runlevel0.target -> poweroff.target
runlevel1.target -> rescue.target
runlevel2.target -> multi-user.target
runlevel3.target -> multi-user.target
runlevel4.target -> multi-user.target
runlevel5.target -> graphical.target
runlevel6.target -> reboot.target
pstree //pstree命令以树状图的方式展现进程之间的派生关系,显示效果比较直观
systemctl -t help //列出可管理的单元类型
systemctl --type=service //
systemctl list-unit-files //列出已安装的单元
systemctl is-active sshd //查看sshd目前是否为启动
使用說明
# systemctl --help
列出已安裝「php*」開頭的單元
# systemctl list-unit-files php*
將 php-fpm.service 設為開機自動啟動
# systemctl enable php-fpm.service
將 php-fpm.service 設為開機不自動啟動
# systemctl disable php-fpm.service
查看 php-fpm.service 目前是否設為開機自動啟動
# systemctl is-enabled php-fpm.service
啟動 php-fpm.service
# systemctl active php-fpm.service
停止 php-fpm.service
# systemctl stop php-fpm.service
查看 php-fpm.service 狀態
# systemctl status php-fpm.service
防火墙区域Zone 概念
丢弃drop:任何流入的方向都被丢弃,且不做出任何反馈。只允许流出方向。
阻塞block:任何流入方向都拒绝,但是返回icmp-host-prohibited错误
公开public:允许部分服务。和选中的服务流入
默认只允许DHCP 和SSH
外部external:用于路由器的伪装网络(俗称:SNAT)
默认入展只允许SSh
隔离DMZ:限制被外界网络访问。需要手动开转发
默认入站只允许SSH
工作work: 只允许被选中的链接
默认DHCP,IPP和SSH
家庭home: 只允许被选中的连接
默认DHCP DNS IPP samba SSH
内部internal:和home一样
信任trusted:完全允许所有。进出都一样的
一个请求时如何判断在那个区域呢?
1、如果源IP与zone的source相同,那么匹配该规则
2、如果客户端进入某个端口属于zone的interface,则属于这个规则
3、如果两个条件都不满足,进入default zone
防火墙用法策略及参数
firewall-config进入防火墙配置
firewall-cmd --list-all 查看配置
firewall-cmd --zone=public --list-all 查看某一区域的配置
firewall-cmd --get-zones查看当前能用的区域
firewalld-cmd --list-all-zones 查看所有区域
firewall-cmd -state 防火墙状态
firewall-cmd --get-active-zones 当前正在激活的区域
firewall-cmd --get-services 查看当前区域支持的服务
firewall-cmd --get-zone-of-interface=ens33 查看当前所在的区域
firewall-cmd --list-ports 查看端口
firewall-cmd --set-default-zone=internal 切换默认区域
firewall-cmd --zone=work --add-interface=ens33 将ens33放在那个区域
firewall-cmd --zone=work --add-service=http 增加服务到某个区域
firewall-cmd --zone=work --change-interface=enp0s4
firewall-cmd --zone=internal --list-all
firewall-cmd --zone=internal --remove-service=http 这个区域内允许通过http这个服务
firewall-cmd --zone=public --query-service=ssh 查看某个服务是否在这个区域
firewall-cmd --zone=work --add-port=80/tcp 增加tcp/80端口
firewall-cmd --zone=work --query-port=20-30/tcp 查看端口
firewall-cmd --zone=work --add-masquerade 添加启动上网
firewall-cmd --zone=work --query-masquerade 查看某个区域是否可以上网
firewall-cmd --zone=work --add-icmp-block=echo-reply 阻塞,区域内无法ping通
启用work区域客户端传入到80/tcp,就把数据转发给192.168.1.1的端口8080/tcp
firewall-cmd --zone=work --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.1
firewall-cmd --permanent --zone=public --add-source=192.168.1.0/24 源地址是这个就进入到public
富策略语法
Rule family=ipv4/ipv6
Source address=<ip/mask> invert=true
Destination address=ip/mask invert=true
Service name=<server-name>
Port=<port>protocol=<tcp/udp>
Drop/reject/accept/log/adit
firewall-cmd --permanent --add-rich-rule 'rule family=ipv4 source address=1.1.1.100/8 forward-port port=8888 protocol=tcp to-port=80'
- 开放端口或者权限,需要先看默认的zone是哪个然后在对应的zone里面添加port和source,这样才会有作用。
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd –reload 更新规则不重启服务
比如:默认端口是public,我们需要开放80对外访问
- 永久生效尽量使用
firewall-cmd --set-default-zone=internal 修改默认区域
firewall-cmd --get-default-zone 查看默认区域
每隔两分钟阻止某个ip访问某个区域
firewall-cmd --permanent --zone=dmz --add-rich-rule='rule family=ipv4 source address=192.168.1.100 service name=http log limit value=2/m'
阻止10网段的人访问我
firewall-cmd --add-rich-rule='rule family=ipv4 source address=10.0.0.0/24 drop'
允许在DMZ区域的人可以上网
firewall-cmd --permanent --zone=dmz --add-rich-rule='rule family=ipv4 source address=192.168.0.0/24 masquerade'
数据包转发语法:
firewall-cmd [--zone=<zone>] --add-forward-port=<port>[-<port>]:proto=<protocol>{:toport=<port>[-<port>] | toaddr=<address>}
例子:
启动work区域客户端传入到80/tcp数据包,转发到192.168.1.1的8080/tcp
[root@localhost ~]# firewall-cmd --zone=work --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.1
[root@localhost ~]# firewall-cmd --set-default-zone=public //设置默认区域为public
success
[root@localhost ~]# firewall-cmd --zone=public --change-interface=enp0s3 //修改public区域接口为enp03
success
[root@localhost ~]# firewall-cmd --zone=public --list-all //查看public区域所有
[root@localhost ~]# firewall-cmd --zone=dmz --change-interface=enp0s3
success
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-service=http
//给dmz区域添加http服务永久生效
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-rich-rule 'rule family=ipv4 source address=192.168.1.1 service name=http reject'
永久生效
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-rich-rule 'rule family=ipv4 source address=192.168.1.100 service name=http log limit value=2/m'
success
[root@localhost ~]# firewall-cmd --reload
Success
对所有区域生效
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-rich-rule 'rule family=ipv4 source address=10.0.0.0/24 drop'
success
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-rich-rule 'rule service name=ssh accept limit value=3/m'
Success
Dmz区域都可以上网
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-masquerade
Success
Dmz区域192.168.1.0网段可以上网
[root@localhost ~]# firewall-cmd --permanent --zone=dmz --add-rich-rule 'rule family=ipv4 source address=192.168.1.0/24 masquerade'
Success
恐慌模式:应急 断开一切链接
firewall-cmd --query-panic
firewall-cmd --panic-on 关闭 off
firewall-cmd --zone=work --add-masquerade 某个区域可以上网 remove 禁止上网
安装docker
先确认虚拟机能上网
Yum源文件:
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
Nmtui 修改成动态获取ip地址
Yum -y install docker-engine
Docker --version 查看版本是17以上的就成功
Systemctl restart docker.service 启动docker
Curl -sSl 加网址 //去https://www.daocloud.io/登陆点小火箭 选linux下的复制粘贴到虚拟机执行
System restart docker.Service
Docker pull centos
Docker images
Centos7变动的更多相关文章
- centos7 盘符变动 绑定槽位
服务器下的硬盘主有机械硬盘.固态硬盘以及raid阵列,通常内核分配盘符的顺序是/dev/sda./dev/sdb… ….在系统启动过程中,内核会按照扫描到硬盘的顺序分配盘符(先分配直通的,再分配阵列) ...
- 关于centos7的网络配置
1.DNS DNS是域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的.域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能 ...
- CentOS7下Firewall防火墙配置用法详解
官方文档地址: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide ...
- CentOs7下systemd管理知识要点
centOs7的一个巨大的变动就是用systemd取代了原来的System V init.systemd是一个完整的软件包,安装完成后有很多物理文件组成,大致分布为,配置文件位于/etc/system ...
- CentOS7.x安装MySQL5.7.25
mysql 5.7下载地址 社区版下载地址:https://dev.mysql.com/downloads/mysql/ 可能会有变动 找到5.7版本, 注:源码安装需要用到下面的包,可以先忽略,我安 ...
- CentOS7 Nginx安装及配置反向代理
背景: Mono (Mono JIT compiler version 5.4.0.201 ) jexus-5.8.2-x64(<CentOS7 安装 jexus-5.8.2-x64>) ...
- CentOS7之Rsync+Inotify架构实现实时同步文件和文件夹
简介:rsync是用来同步文件和文件夹的,inotify是用来实现监听变动而自动同步的 OS:Centos7.3 服务器端:172.16.13.157 客 户 端 :172.16.13.156 目 ...
- centos7安装mysql5.6(rpm包安装)
应用场景:日常需求安装数据库——MySQL. 安装环境:① 最小化安装的centos7.2(同版本RHEL7适用): ② MySQL 5.6: 具体步骤: 1. 下载mysql 5.6并解压(官网有时 ...
- centos7.2 安装 mysql5.7
一.MySQL 5.7 主要特性: 原生支持 Systemd 更好的性能:对于多核 CPU.固态硬盘.锁有着更好的优化更好的 InnoDB 存储引擎 更为健壮的复制功能:复制带来了数据完全不丢失的方案 ...
随机推荐
- 1+x学习日志——js获取随机颜色的几种实现方式
因为学习时间比较紧,所以也没多少时间发博客了.后续会慢慢补齐的,下面是代码 /// function randomColor(){ var r = parseInt(Math.random() * 2 ...
- SQL 基本概念、通用语法与分类
一.SQL 概念 1.什么是 SQL Structured Query Language 结构化查询语句 2.SQL 作用 (1)是一种所有关系型数据库的查询规范,不同的数据库都支持. (2)通用 ...
- SuperTab
Tab快捷键提示功能 下载 http://www.vim.org/scripts/script.php?script_id=1643 安装 # vi supertab.vmb : UseVimball ...
- spring的Autowired、Resource、Inject的使用
基本知识:spring最底层使用的是Map,id是bean的id,value是bean的class或者是实例. 1:bean的加载顺序. @Bean("testDao") publ ...
- java sql: PrepareStatement
参见菜鸟教程:JDBC 使用说明 增删改查: public class DbUtil { public static final String URL = "jdbc:mysql://loc ...
- c# Directory类的常用方法
- 【转】DATA_SECTION 和CODE_SECTION 的区别
请问#pragma DATA_ALIGN有什么作用? 下面是我在EDMA的一个例程中摘录的几句话:#pragma DATA_ALIGN(ping,128);#pragma DATA_ALIGN(pon ...
- CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager
CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.搭建CM私有仓库 详情请参考我的笔记: http ...
- sitemap怎么制作才适合蜘蛛抓取?
网站sitemap制作格式与要求 1.sitemap格式说明 <?xml version="1.0" encoding="utf-8"?> < ...
- npm安装模块没有权限解决办法
直接加上unsafe的参数即可 sudo npm install --unsafe-perm --verbose -g sails