热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux系统配置(服务控制)详细介绍_Linux

大家好,本篇文章主要讲的是Linux系统配置(服务控制)详细介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收

前言

     Linux操作系统中包含了大量的服务程序,这些服务程序在切换运行级别时根据预设的状态进行启动或终止,其中有不少系统服务可能并不是用户需要的,但是默认也运行了

一、系统服务控制

1、systemctl

     在CentOS系统中,各种系统服务的控制脚本默认放在usr/lib/systemd目录下,通过systemctl命令工具可以实现对指定系统服务的控制,语法格式如下

systemctl 控制类型 服务名称

     对于大多数系统服务来说,常见的几种控制类型如下

start(启动):运行指定的系统服务程序,实现服务功能
stop(停止):终止指定的系统服务程序,关闭相应的功能
restart(重启):先退出,再重新运行指定的系统服务程序
reload(重载):不退出服务程序,只是刷新配置,在某些服务中与restart的操作相同
status(查看状态):查看指定的系统服务的运行状态及相关信息

     对于在实际生产环境中运行的服务器,不要轻易执行stop或restart操作,以免造成客户端访问中断,带来不必要的损失,若只是要为系统服务启用新的配置,可以采用相对温和一些的“reload”参数重新加载配置,而不是生硬地执行“restart”,例如,对于正在为用户提供Web访问的httpd服务,当需要应用新的配置时,建议执行“systemctl reload httpd.service”命令来重新载入配置,而不是执行"systemctl restart httpd.service"

2、target

(1)查看target

     明确当前系统所在的target将有助于管理员排除一些应用故障,若未能确知当前所处的目标,可以直接执行“runlevel”命令进行查询,显示结果中的两个字符分别表示切换前的目标和当前的目标,若之前尚未切换过运行级别,则第1列将显示“N”

     若用户想查看系统启动时默认运行的target,可以执行“systemctl get-default”命令以显示系统默认的target

运行级别systemd的target说明0target使用该级别会关闭主机1rescue.target单用户模式,不需要密码验证即可登录系统,多用于系统维护2multi-user.target用户定义/域特定运行级别,默认等同于33multi-user.target字符界面的完整多用户模式,大多数服务器主机运行在此级别4multi-user.target用户定义/域特定运行级别,默认等同于35graphical.target图型界面的多用户模式,提供了图形桌面操作环境6reboot.target重新启动,使用该级别时将会重启主机

(2)切换target

     当用户需要将系统转换为其他的target时,可以通过传统的init程序进行,只要使用与运行级别相对应的数字(0-6)作为命令参数即可,或者使用systermctl命令进行目标切换,例如,为了节省系统资源,将系统运行的target由图形模式(5)切换为字符模式(3) ,可以执行“init 3”或“systemctl isolate multi-user. target”命令,将系统切换到字符模式以后,图形桌面环境不再可用,这时按Alt+F7组合键也无法恢复图形桌面环境,需要再次使用图形桌面时,可以执行“init 5”或者“systermctl isolate graphical target”命令切换回去

     通过切换target的操作,还可以实现两个特殊的功能,那就是关机和重启,运行级别0和6分别对应关机和重启这两个特殊模式,因此只要执行“init 0”或“init 6”命令就可以实现相应的关机或重启操作了,运行级别0、6又分别对应着systemd的“poweroff.target”和“reboot.target”目标,因此执行“systemctl poweroff”与“systemctl reboot”命令也可以实现相应的关机、重启操作

     若要永久切换运行级别,可执行如下命令可将当前系统的开机默认运行级别从graphical.target更改为multi-user.target

systemctl set-default runlevel3.target

     使用以下命令让开机界面切换回图形界面模式

systemctl set-default runlevel5.target

3、常见系统服务

     在CentOS系统中,默认安装的系统服务多达100多种,这些系统服务为用户提供了丰富的应用服务,只有了解各个系统服务的用途,才能有选择地进行优化操作,实现按需启用Linux服务

     CentOS系统中常见的系统服务

服务名称用途atd延期、定期执行任务bluetooth发现、认证蓝牙相关设备crond按预定周期执行计划任务irqbalance多核心CPU处理器的调度支持kdump记录内核奔溃时的内存信息lvm2-monitorLVM管理及监控netfs访问共享文件夹等网络文件系统network配置及使用网卡、网络地址restorecondSELinux安全机制的文件监控和恢复功能rhnsd访问Red Hat Network,获取通知、提交订阅等rpcgssd管理NFS(Network File Systeam,网络文件系统)访问中的客户程序语境saslauthd基于文本的身份认证smartd监控本地硬盘的状态并发送故障报告smb文件共享服务sshd提供远程登陆和管理Linux主机的功能rsyslog记录内核、系统的日志信息vsftpd通过FTP(File Transfer Protocol,文件传输协议)提供文件上传、下载功能

     必须强调的是,这些服务到底是选择开启还是关闭,应根据主机的实际功能需求来定,例如,如果当前的Linux主机用来向局域网提供文件共享服务,那么smb服务应开启,而不能关闭

4、开机自启服务管理

     Linux操作系统在每次开机后会进入默认的systemd运行目标(如字符模式或图形模式),并运行该目标中默认设为启动的各种系统服务,若要禁止某些系统服务自动运行,可以使用ntsysv或者systemctl工具进行优化

(1)使用ntsysv

     ntsysv工具可以在字符模式中运行,为用户提供一个仿图形的交互式操作界面,专门用于集中配置各种系统服务的启动状态,当需要同时设置多个服务的启动状态时,使用ntsysv工具会非常方便,单独执行“ntsysv”命令时仅用于管理当前运行目标中的服务,通过“--level”选项可以对指定运行目标(级别)中的服务进行管理,例如,执行“ntsysv --level 35” 命令可以打开 ntsysv 管理程序,操作时按方向键来选择不同的系统服务,按Space(空格)键设置服务的默认启动状态([*]表示启动, “[]”表示关闭),如果要查看所选定服务的说明信息,按F1键可以获取帮助

(2)使用systemctl

     systemctl工具与ntsysv的功能类似,但是systemctl不提供交互式的操作界面,它用于查询或设置系统服务的默认启动状态,当需要设置某一个服务在当前运行目标中的默认启动状态时,使用systemetl工具会更有效率

     常用的选项有三种

enable:开机自动启动
disable:开机自动关闭
is-enable:查看开机启动状态

     在当前系统下执行“systemctl list-units --type=service”命令可以查看当前系统中所有已激活的系统服务

二、服务管理

1、防火墙与核心防护

     通常情况下不建议关闭防火墙与核心防护

     防火墙操作

systemctl status firewalld.service 查看防火墙状态
systemctl stop firewalld 关闭防火墙
systemctl start firewalld 开启防火墙
systemctl disable firewalld 开机自动关闭防火墙
systemctl enable firewalld 开机自动启动防火墙

     核心防护操作

setenforce 0临时关闭Selinux防护,重启或关机后失效vim /etc/sysconfig/selinux打开selinux文件"修改SELINUX=disable"保存退出,永久关闭Selinux防护vim /etc/selinux/config打开config文件"修改SELINUX=disable"保存退出,永久关闭Selinux防护

2、时间管理

     安装ntpdate服务

yum -y install ntp ntpdate

     设置与网络时间同步

ntpdate 时间服务器(ntp1.aliyun.com ,time.nist.gov,time.nuri.net)

hwclock --systohc 将系统时间写入硬件(BIOS)
timedatectl 查看系统时间
date 查看Centos的当前系统时间命令


3、SSH服务

     SSH是较可靠的专为远程登录会话和其他网络服务提供安全性的协议,利用SSH协议可以有效防止远程管理过程中的信息泄露问题,可通过建立SSH连接来远程管理Linux,开启SSH方法如下

vim /etc/ssh/sshd_config

     去掉PasswordAuthentication前边的#号,将后面修改为yes

service ssh start 启动SSH服务
netstat -anptu | grep sshd 查看服务进程状态
service ssh status 验证SSH服务状态
update-rc.d ssh enable 设置SSH开机自启

结语

     不同的target代表系统不同的运行状态,所启用的服务或程序也不一样,例如,对于互联网中的网站、电子邮件等服务器来说,只需要运行在文本模式就可以了,无须启用图形桌面程序

前言

     Linux操作系统中包含了大量的服务程序,这些服务程序在切换运行级别时根据预设的状态进行启动或终止,其中有不少系统服务可能并不是用户需要的,但是默认也运行了

一、系统服务控制

1、systemctl

     在CentOS系统中,各种系统服务的控制脚本默认放在usr/lib/systemd目录下,通过systemctl命令工具可以实现对指定系统服务的控制,语法格式如下

systemctl 控制类型 服务名称

     对于大多数系统服务来说,常见的几种控制类型如下

start(启动):运行指定的系统服务程序,实现服务功能
stop(停止):终止指定的系统服务程序,关闭相应的功能
restart(重启):先退出,再重新运行指定的系统服务程序
reload(重载):不退出服务程序,只是刷新配置,在某些服务中与restart的操作相同
status(查看状态):查看指定的系统服务的运行状态及相关信息

     对于在实际生产环境中运行的服务器,不要轻易执行stop或restart操作,以免造成客户端访问中断,带来不必要的损失,若只是要为系统服务启用新的配置,可以采用相对温和一些的“reload”参数重新加载配置,而不是生硬地执行“restart”,例如,对于正在为用户提供Web访问的httpd服务,当需要应用新的配置时,建议执行“systemctl reload httpd.service”命令来重新载入配置,而不是执行"systemctl restart httpd.service"

2、target

(1)查看target

     明确当前系统所在的target将有助于管理员排除一些应用故障,若未能确知当前所处的目标,可以直接执行“runlevel”命令进行查询,显示结果中的两个字符分别表示切换前的目标和当前的目标,若之前尚未切换过运行级别,则第1列将显示“N”

     若用户想查看系统启动时默认运行的target,可以执行“systemctl get-default”命令以显示系统默认的target

运行级别systemd的target说明0target使用该级别会关闭主机1rescue.target单用户模式,不需要密码验证即可登录系统,多用于系统维护2multi-user.target用户定义/域特定运行级别,默认等同于33multi-user.target字符界面的完整多用户模式,大多数服务器主机运行在此级别4multi-user.target用户定义/域特定运行级别,默认等同于35graphical.target图型界面的多用户模式,提供了图形桌面操作环境6reboot.target重新启动,使用该级别时将会重启主机

(2)切换target

     当用户需要将系统转换为其他的target时,可以通过传统的init程序进行,只要使用与运行级别相对应的数字(0-6)作为命令参数即可,或者使用systermctl命令进行目标切换,例如,为了节省系统资源,将系统运行的target由图形模式(5)切换为字符模式(3) ,可以执行“init 3”或“systemctl isolate multi-user. target”命令,将系统切换到字符模式以后,图形桌面环境不再可用,这时按Alt+F7组合键也无法恢复图形桌面环境,需要再次使用图形桌面时,可以执行“init 5”或者“systermctl isolate graphical target”命令切换回去

     通过切换target的操作,还可以实现两个特殊的功能,那就是关机和重启,运行级别0和6分别对应关机和重启这两个特殊模式,因此只要执行“init 0”或“init 6”命令就可以实现相应的关机或重启操作了,运行级别0、6又分别对应着systemd的“poweroff.target”和“reboot.target”目标,因此执行“systemctl poweroff”与“systemctl reboot”命令也可以实现相应的关机、重启操作

     若要永久切换运行级别,可执行如下命令可将当前系统的开机默认运行级别从graphical.target更改为multi-user.target

systemctl set-default runlevel3.target

     使用以下命令让开机界面切换回图形界面模式

systemctl set-default runlevel5.target

3、常见系统服务

     在CentOS系统中,默认安装的系统服务多达100多种,这些系统服务为用户提供了丰富的应用服务,只有了解各个系统服务的用途,才能有选择地进行优化操作,实现按需启用Linux服务

     CentOS系统中常见的系统服务

服务名称用途atd延期、定期执行任务bluetooth发现、认证蓝牙相关设备crond按预定周期执行计划任务irqbalance多核心CPU处理器的调度支持kdump记录内核奔溃时的内存信息lvm2-monitorLVM管理及监控netfs访问共享文件夹等网络文件系统network配置及使用网卡、网络地址restorecondSELinux安全机制的文件监控和恢复功能rhnsd访问Red Hat Network,获取通知、提交订阅等rpcgssd管理NFS(Network File Systeam,网络文件系统)访问中的客户程序语境saslauthd基于文本的身份认证smartd监控本地硬盘的状态并发送故障报告smb文件共享服务sshd提供远程登陆和管理Linux主机的功能rsyslog记录内核、系统的日志信息vsftpd通过FTP(File Transfer Protocol,文件传输协议)提供文件上传、下载功能

     必须强调的是,这些服务到底是选择开启还是关闭,应根据主机的实际功能需求来定,例如,如果当前的Linux主机用来向局域网提供文件共享服务,那么smb服务应开启,而不能关闭

4、开机自启服务管理

     Linux操作系统在每次开机后会进入默认的systemd运行目标(如字符模式或图形模式),并运行该目标中默认设为启动的各种系统服务,若要禁止某些系统服务自动运行,可以使用ntsysv或者systemctl工具进行优化

(1)使用ntsysv

     ntsysv工具可以在字符模式中运行,为用户提供一个仿图形的交互式操作界面,专门用于集中配置各种系统服务的启动状态,当需要同时设置多个服务的启动状态时,使用ntsysv工具会非常方便,单独执行“ntsysv”命令时仅用于管理当前运行目标中的服务,通过“--level”选项可以对指定运行目标(级别)中的服务进行管理,例如,执行“ntsysv --level 35” 命令可以打开 ntsysv 管理程序,操作时按方向键来选择不同的系统服务,按Space(空格)键设置服务的默认启动状态([*]表示启动, “[]”表示关闭),如果要查看所选定服务的说明信息,按F1键可以获取帮助

(2)使用systemctl

     systemctl工具与ntsysv的功能类似,但是systemctl不提供交互式的操作界面,它用于查询或设置系统服务的默认启动状态,当需要设置某一个服务在当前运行目标中的默认启动状态时,使用systemetl工具会更有效率

     常用的选项有三种

enable:开机自动启动
disable:开机自动关闭
is-enable:查看开机启动状态

     在当前系统下执行“systemctl list-units --type=service”命令可以查看当前系统中所有已激活的系统服务

二、服务管理

1、防火墙与核心防护

     通常情况下不建议关闭防火墙与核心防护

     防火墙操作

systemctl status firewalld.service 查看防火墙状态
systemctl stop firewalld 关闭防火墙
systemctl start firewalld 开启防火墙
systemctl disable firewalld 开机自动关闭防火墙
systemctl enable firewalld 开机自动启动防火墙

     核心防护操作

setenforce 0临时关闭Selinux防护,重启或关机后失效vim /etc/sysconfig/selinux打开selinux文件"修改SELINUX=disable"保存退出,永久关闭Selinux防护vim /etc/selinux/config打开config文件"修改SELINUX=disable"保存退出,永久关闭Selinux防护

2、时间管理

     安装ntpdate服务

yum -y install ntp ntpdate

     设置与网络时间同步

ntpdate 时间服务器(ntp1.aliyun.com ,time.nist.gov,time.nuri.net)

hwclock --systohc 将系统时间写入硬件(BIOS)
timedatectl 查看系统时间
date 查看Centos的当前系统时间命令


3、SSH服务

     SSH是较可靠的专为远程登录会话和其他网络服务提供安全性的协议,利用SSH协议可以有效防止远程管理过程中的信息泄露问题,可通过建立SSH连接来远程管理Linux,开启SSH方法如下

vim /etc/ssh/sshd_config

     去掉PasswordAuthentication前边的#号,将后面修改为yes

service ssh start 启动SSH服务
netstat -anptu | grep sshd 查看服务进程状态
service ssh status 验证SSH服务状态
update-rc.d ssh enable 设置SSH开机自启

结语

     不同的target代表系统不同的运行状态,所启用的服务或程序也不一样,例如,对于互联网中的网站、电子邮件等服务器来说,只需要运行在文本模式就可以了,无须启用图形桌面程序


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • Linux一键安装web环境全攻略
    摘自阿里云服务器官网,此处一键安装包下载:点此下载安装须知1、此安装包可在阿里云所有Linux系统上部署安装,此安装包包含的软件及版本为& ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • 小程序自动授权和手动接入的方式及操作步骤
    本文介绍了小程序支持的两种接入方式:自动授权和手动接入,并详细说明了它们的操作步骤。同时还介绍了如何在两种方式之间切换,以及手动接入后如何下载代码包和提交审核。 ... [详细]
  • 图像因存在错误而无法显示 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了markdown[软件代理设置]相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
  • DockerDataCenter系列(四)-离线安装UCP和DTR,Go语言社区,Golang程序员人脉社 ... [详细]
author-avatar
pz51747pz你
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有