dms centos(CentOS Stream)

本篇文章给大家谈谈dms centos,以及CentOS Stream对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

CentOS如何运行与控制后台进程

我们经常会碰到这样的问题,用ssh登录了远程的Linux服务器,运行了一些耗时较长的任务,结果却由于网络等的不稳定导致任务中途失败。

这是由于在用户注销(logout)或者网络断开时,终端会收到 HUP(hangup)信号从而关闭其所有子进程。

解决办法有两种:让进程忽略HUP信号,或让进程运行在新的会话里从而成为不属于此终端的子进程。

下面是对Linux下运行与控制后台进程的各种方法的介绍:

1.nohup

顾名思义,nohup的用途就是让提交的命令忽略所有的hangup信号。

使用方法:nohup COMMAND [ARG]...

2.setsid

在一个新的会话中运行命令,从而可以避开当前终端发出的HUP信号。

使用方法:setsid COMMAND [ARG]...

3.&

可以结合()产生一个新的子shell并在这个子shell中将任务放置到后台运行,从而不受当前shell终端的HUP信号影响。

使用方法:(COMMAND [ARG]...&)

而我通常的使用方式为:

nohup./filename.sh> filename.log 2>&1&

nohup./filename.sh&> filename.log&

三点理由:

1)nohup保障进程不会被hangup信号异常中断;

2)将任务放置到后台运行,不占用当前的终端;

3)将错误输出也打印到log中,默认>只有标准输出,错误输出没有。

4.控制进程

通过以下命令,我们可以对放入到后台的命令进行控制

查看当前终端下的后台进程:

直接执行:jobs

将查看到的某个后台进程放回到前台:

直接输入:fg{jobid}//这里的{jobid}是通过jobs命令中看到的进程前[]中的数字。

将当前正在前台运行的进程放到后台运行:

先敲下快捷键:ctrl+z//暂停当前正在运行的进程。

再执行:bg

终止当前正在前台运行的进程:

直接敲下快捷键:ctrl+c

5.disown

亡羊补牢,为没有使用nohup与setsid的进程加上忽略HUP信号的功能。

使用方法:

将当前正在前台运行的进程放到后台运行;

然后执行disown-h%{jobid}//这里的{jobid}是通过jobs命令中看到的进程前[]中的数字。

6.通过screen来实现稳定的后台运行

screen是建立一个新的全屏虚拟会话终端,这个会话只有在手动输入exit的时候才会退出,在这个会话里执行的命令不用担心HUP信号会对我们的进程造成影响,因此也不用给每个命令前都加上“nohup”或“setsid”了,非常适合我们有规划的执行大量的后台任务,可以非常方便的让我们对这些后台任务进行管理。

使用方法:

screen//立即创建并进入一个会话。

screen-dmS{name}//建立一个处于断开模式下的会话,并根据我们的需要指定其会话名称。

screen-list//列出所有会话。

screen-r{name}//以独占方式进入指定会话。

screen-x{name}//以并行方式进入指定会话。

ctrl+ad//输入快捷键ctrl+a和d,可暂时退出当前会话。

exit//进入指定会话后执行exit即可关闭该会话。

CentOS7使用hostapd实现无AP模式的详解

这篇是 linux下使用hostapd实现无线接入点 AP模式的另一种实现方式:hostapd路由模式配置。

对于软硬件的基本配置及 hostapd安装在《CentOS 7之 hostapd AP模式配置》的前半部分内容中有说明,可以先看看那篇,再看本文。

hostapd的AP模式配置需要的有线网卡和无线网卡进行桥接,那路由模式配置主要就是将无线网卡的数据通过有线网卡进行伪装、转发两个方面,也就不再需要将有线和无线网卡进行桥接。

配置这种路由模式就类似一台普通的无线路由器,有线网口就相当于普通无线路由器的 WAN接口,无线网卡就负责发送广播无线信号供手机、笔记本的无线设备接入实现网络访问。

但也有区别的地方就是跟普通无线路由器相比,这种实现方式没有四个普通的 LAN接口,不能供其它台式机等进行有线连接。

实际上 linux作为网络功能为主的操作系统也是可以连接的,只是需要交换机等设备等,会复杂些。我这里的配置就当作是没有四个 LAN接口的普通无线路由器。

hostapd.conf配置

这里只是一个最小化的配置:

#/etc/hostapd/hostapd.conf最小化配置

interface=wlp2s0

#bridge=br0#不再需要桥接,将这行注释就可以

driver=nl80211

ssid=test

hw_mode=g

channel=1

auth_algs=3

ignore_broadcast_ssid=0#是否广播,0广播

wpa=3

wpa_passphrase=12345678#无线连接密码

配置跟AP模式配置文件类似,只要注释掉 bridge=br0选项就可以。

有线接口配置

首先我们需要正确配置有线接口并且可以正常上网。最简单的是方式就是从路由器那自动获取IP地址、网关、DNS。如果没有路由器的话那就需要手动设置有线接口的上网方式,例如常用的PPPOE方式、静态IP地址方式、动态获取IP地址方式等。反正动态获取IP地址的最简单。

无线接口设置使用 ip addr add命令

使用 ip addr add命令设置无线网卡的IP地址,重启后就会失效。例如172.16.0.1/24或其他私有地址,还有就是不要与有线网卡处在同一个网段。一般有线网卡从路由器获取的IP地址是 192.168.1.0/24网段地址。

ipaddradd172.16.0.1/24devwlp2s0

坑提示:目前 CentOS 7默认使用的是 NetworkManager套件作为网络配置工具。这里遇到一个问题就是,NetworkManager套件其提供的 nmcli命令并不支持给无线网卡设置静态的 IP地址,这就需要使用 ip addr add命令手动设定无线网卡的 IP地址或者在/etc/sysconfig/network-scripts/文件夹下面新建配置文件,这是比较老且经典的一种接口配置方式。

使用网络配置文件

如要想想保存设置,可以新建一个文件/etc/sysconfig/network-scripts/ifcfg-static-wlp2s0,文件名以 ifcfg前缀。

vi/etc/sysconfig/network-scripts/ifcfg-static-wlp2s0

[root@server~]#vi/etc/sysconfig/network-scripts/ifcfg-static-wlp2s0

#TYPE=Ethernet

#BOOTPROTO=none

#DEFROUTE=yes

#IPV4_FAILURE_FATAL=no

#IPV6INIT=yes

#IPV6_AUTOCONF=yes

#IPV6_DEFROUTE=yes

#IPV6_FAILURE_FATAL=no

#NAME=static-wlp2s0

#UUID=a036678e-8fdf-48f3-8693-961bb6326i744

DEVICE=wlp2s0#指定无线网卡的接口

ONBOOT=yes#开机就进行设置

IPADDR=172.16.0.1#指定IP地址

PREFIX=24#指定掩码长度

#GATEWAY=192.168.10.254#其他用不着注释掉

#DNS1=127.0.0.1

#DNS2=192.168.10.254

#IPV6_PEERDNS=yes

#IPV6_PEERROUTES=yes

保存后需要先停止 NetworkManager.service服务,最好禁止开机启动,不然还是会有问题。主要表现为开机时 network.service无法启动。

禁止NetworkManager.service服务开机启动

systemctldisableNetworkManager.service

停止NetworkManager.service服务

systemctlstopNetworkManager.service

想看看有没有生效可以重启 network.service服务或直接重启系统。

systemctlrestartnetwork.service

启用转发和配置接口伪装启用转发

使用 sysctl-w重启后会失效

sysctl-wnet.ipv4.ip_forward=1

[root@server~]#sysctl-wnet.ipv4.ip_forward=1

net.ipv4.ip_forward=1

启用IP转发重启后不会失效使用下面方法,系统重启后会自动加载/etc/sysctl.d/文件夹下的设置。

vi/etc/sysctl.d/ip_forward.conf

[root@server~]#vi/etc/sysctl.d/ip_forward.conf

net.ipv4.ip_forward=1

配置接口伪装

CentOS 7中使用 firewalld和 iptables都能做到接口伪装。CentOS 7中默认启用的是 firewalld.service服务。iptables服务和 firewalld服务冲突,两者只能启用其中一个。

使用 firewalld配置接口伪装

如果能使用图形界面配置的话更加简单明了,这里仅使用 firewalld-cmd命令方式配置。

如果没有启动 firewalld.service服务,需要先启动 firewalld.service服务。

systemctlstartfirewalld.service

将无线接口加入到 trust区域,并保存配置。默认情况下所有接口属于 public区域,连接限制比较严格,会导致无法连接。

firewall-cmd--zone=trusted--add-interface=wlp2s0--permanent

[root@server~]#firewall-cmd--zone=trusted--add-interface=wlp2s0--permanent

success

对有线接口所在的区域启用伪装,并保存配置,默认情况下有线接口属于 public区域。

firewall-cmd--zone=public--add-masquerade--permanent

[root@server~]#firewall-cmd--zone=public--add-masquerade--permanent

success

重启 firewalld服务

systemctlrestartfirewalld.service

使用 iptables配置接口伪装

如果习惯使用 iptables,需要安装 iptables-services这个包,里面包含 iptables.service和 ip6tables.service这两个服务,分别用于 ipv4和 ipv6。

要使用 iptables需要先停止并禁用 firewalld.service服务

systemctlstopfirewalld.service

systemctldisablefirewalld.service

再启用 iptables.service服务,因为目前还是主要使用 ipv4所以只启用 iptables.service就可以。如果使用 iptables同样需要设置开机启动 iptables.service服务。

systemctlenableiptables.service

启动 iptables.service服务

systemctlstartiptables.service

接口伪装

iptables-tnat-APOSTROUTING-op2p1-jMASQUERADE

一般来说配置上面的命令就可以了,如果防火墙设置比较严格需要添加允许转发无线网卡接口wlp2s0。

iptables-tfilter-AFORWARD-iwlp2s0-jACCEPT

dnsmasq配置 dnsmasq软件安装

dnsmasq主要负责分配客户端IP地址及DNS解析服务。

没有安装的话先安装 dnsmasq软件

yuminstalldnsmasq

设置开机自动启动 dnsmasq服务

systemctlenablednsmasq.service

dnsmasq.conf配置

vi/etc/dmsmasq.conf

[root@server~]#vi/etc/dnsmasq.conf

#指定接口,指定后同时附加lo接口,可以使用'*'通配符

interface=wlp2s0

#绑定接口

bind-interfaces

#DHCP地址池从172.16.0.100到172.16.0.200

dhcp-range=172.16.0.100,172.16.0.200,255.255.255.0,1h

启动 dnsmansq服务需要无线网卡已经正确设置了 ip地址。dnsmasq会自动将当前的无线网卡地址 172.16.0.1设置为客户端的网关地址和DNS地址。

systemctlstartdnsmasq.service

最后重新启动 hostapd服务

systemctlrestarthostapd.service

centos怎么配置dhcp服务 linux下怎么用dhcp

dhcp服务器是用来动态分配内网IP的,咗嚛搭建一个dhcp服务器可以用于自动分配局域网IP。当然很多路由器都有这个功能了,这里以centos系统为例

查找确认dhcp服务,通过rpm-qa查询

如果没有安装的话,通过 yum install dhcp即可安装

编辑dhcp服务器主配置文件,默认是空的。我们可以去拷贝一个模板,路径在/usr/share/doc/dhcp*/dhcp.config.sample

然后我们编辑/etc/dhcp/dhcp.conf文件,具体参考如下范例。range分配的地址池, optiondms dns服务器地址,option routers网关地址,然后是租约的时间等

配置好之后,重启dhcp服务。/etc/init.d/dhcpd restart如果是centos7系统,通过systemctl来重启服务

查看dhcp服务器地址,通过ifconfig确认

linux客户端怎么用dhcp服务器找到同一个网段的电脑,修改网卡配置文件,吧bootroto改成dhcp类型

然后重启网卡服务,就会自动去获取dhcp服务器的地址了

等待片刻之后,再次查看IP已经分配为dhcp地址池的地址了

dhcp客户端查看,可以通过dhclient命令查看

如果是win系统,通过ifconfig/renew获取地址。当然要改成自动获取模式哈

阅读剩余
THE END