大作业10- Linux服务管理

本文详细介绍了Linux系统中服务管理的核心方法,包括查看已启动软件、rpm安装软件管理、源码包服务配置、系统运行级别的设定及修改。涵盖netstat、service、chkconfig、systemctl等关键命令的使用,以及如何设置服务自启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux服务管理-慕课网Tony老师
重点
1.查看已启动的软件:netstat -an 查看所有端口,查看已连接端口 ;netstat -tulnp 查看已开启的监听状态的端口
2.rpm安装软件查看:chkconfig –list启动:service httpd start|stop|restart|status
   自启动:chkconfig [–level] [2345] [独立服务名] [on|off]
3.源码包安装软件:a.启动脚本放在/etc/init.d/ (/etc/init.d 是 指向  /etc/rc.d/init.d 的软链接);b.启动service httpd start|stop|restart|status
   自启动:将启动命令追加到文件末尾即可。或 chkconfig 命令:chkconfig --add mysqld;chkconfig mysqld on

systemctl融合service和chkconfig功能

systemctl的使用例如
# 开启服务   :systemctl start sshd.service
# 设置开机启动   :systemctl enable sshd.service
# 本质上是建立一个软链接 ln -s /usr/lib/systemd/system/sshd.service /etc/systemd/system/multi-user.target.wants/sshd.se

系统运行级别

runlevel 查看运行级别;init num 设置运行级别   运行级别含义

0 关机
1 单用户模式,可以想象为安全模式,主要用户系统修复
2 不完全的命令行模式
3 完全的命令行模式,标准字符界面
4 系统保留
5 图形模式
6 重启动

修改默认运行级别传统方式是更改/etc/inittab文件。但是在Centos7中,该文件的内容:
[root@localhost ~]# init 3
[root@localhost ~]# runlevel
5 3

# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main tar
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
#
# To view current default target, run:
# systemctl get-default
#
# To set a default target, run:
# systemctl set-default TARGET.target

表示该文件已经不起作用,可以使用命令方式修改:
multi-user.target: runlevel 3
graphical.target: runlevel 5

使用 systemctl get-default 获取默认级别。
使用 systemctl set-default TARGET.target 设置默认级别

[root@localhost etc]# systemctl get-default  #获得默认运行级别:
graphical.target

[root@localhost etc]# 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/syste

查看自启动状态

chkconfig –list  查看服务自启动状态,可以看到所有RPM包安装的服务

[root@localhost rc.d]# chkconfig --list
NetworkManager 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
abrt-ccpp 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭
abrtd 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭
acpid 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
atd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
auditd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
autofs 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭

查看已启动的软件

netstat -an 查看所有端口,查看已连接端口
netstat -tulnp 查看已开启的监听状态的端口

rpm如何启动软件

通过绝对路径启动(标准启动方式)

/etc/init.d/httpd start
/etc/rc.d/init.d/httpd start

service 命令启动(rethat系统专有命令)

service httpd start|stop|restart|status

设置自启动状态

chkconfig [–level] [2345] [独立服务名] [on|off]

[root@localhost rc.d]# chkconfig --level 2345 httpd on
[root@localhost rc.d]# chkconfig --list | grep httpd
httpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

修改/etc/rc.d/rc.local 文件:

系统启动时会最后执行文件中的内容,可以加上启动特定服务的命令。最后执行
的文件。(shell基础知识,全局变量开机启动顺序)
1、设置环境变量的脚本,可以放在profile.d目录下面,但开机执行任务不应该放在profile.d目录下,因为每次登陆都会执行profile.d目录下的文件,会导致重复执行;
2、设置开机启动任务,应该放在rc.local中执行,它只会在系统启动时执行一次。

bash shell处理文件的顺序如下:

  1. /etc/profile #常见的环境变量PATH、HOME、MAIL、SHELL、HISTSIZE
  2. /etc/profile.d/ #目录,应用程序所需的启动脚本
  3. $HOME/.bash_profile
  4. $HOME/.bash_login
  5. $HOME/.profile
  6. $HOME/.bashrc  #交互式非登录shell执行脚本,设置alias,解释你的意图

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
# 自启动命令
/etc/init.d/httpd start

ntsysv [级别号] 图形化工具,作用和chkconfig相同。
chkconfig 和 ntsysv 做出的更改会同步,但是在rc.local文件中做出的修改,在chkconfig中无法
查看到

源码包的自启动

更改 /etc/rc.d/rc.local 文件

将启动命令追加到文件末尾即可。 chkconfig 命令不能识别源码包服务。

让源码包被service识别

将源码包的启动脚本复制到init.d目录下,改脚本需要能接受相关参数,比如start|stop等

让源码包的服务能被chkconfig 与ntsysv命令管理

  • 在init.d 目录下的脚本中起始处添加 # chkconfig: 35 86 76

chkconfig: 运行级别 启动顺序 关闭顺序 (/etc/rc3.d/)

  • 在脚本中添加 # description: ..

说明, 内容随意

chkconfig --add 脚本名称 将init.d下的启动脚本加入chkconfig到命令

xinetd守护进程......

systemctl融合service和chkconfig功能

systemctl的使用例如
# 开启服务
systemctl start sshd.service
# 设置开机启动
systemctl enable sshd.service
# 本质上是建立一个软链接 ln -s /usr/lib/systemd/system/sshd.service /etc/systemd/system/multi-user.target.wants/sshd.se

 

Tony老师的Linux服务列表

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值