Linux service、systemctl、telnet、chkconfig、top、netstat、ping命令(服务管理、进程管理等)

版权声明:最终解释权归属Hern、HernSong(hernsong)、苍鹭、www.hernsong.com所有! https://blog.csdn.net/qq_36761831/article/details/90033713

service命令

service命令用于对系统服务进行管理,比如启动(start)、停止(stop)、重启(restart)、查看状态(status)等。 相关的命令还包括chkconfig、ntsysv等,chkconfig用于查看、设置服务的运行级别,ntsysv用于直观方便的设置各个服务是否自动启动。 service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务。

常见命令:

  • service <service> 打印指定服务<service>的命令行使用帮助。
  • service <service> start 启动指定的系统服务<service>
  • service <service> stop 停止指定的系统服务<service>
  • service <service> restart 重新启动指定的系统服务<service>,即先停止(stop),然后再启动(start)。
  • chkconfig --list 查看系统服务列表,以及每个服务的运行级别。
  • chkconfig <service> on 设置指定服务<service>开机时自动启动。
  • chkconfig <service> off 设置指定服务<service>开机时不自动启动。
  • ntsysv 以全屏幕文本界面设置服务开机时是否自动启动。

强烈建议大家将service命令替换为/etc/init.d/mysqld stop (因为有一些linux的版本不支持service)

Usage: service < option > | –status-all | [ service_name [ command | –full-restart ] ]

service oracle start   传递参数start
service oracle stop   传递参数为stop
service oracle restart   传递参数为restart
service oracle status  传递参数为status

service --status-all   显示所有服务的状态

service tomcat status 查看单个服务的状态

systemctl命令

其实我们使用很多次systemctl命令来管理服务,对于RHEL 7以上来说,只要是service以及其它类型的unit的文件,都是由systemd进行管控的,而且还能兼容/etc/init.d/目录下的各个服务脚本,而且对于命令的使用也很好掌握。

启动:service NAME start ==> systemctl start NAME.service
停止:service NAME stop ==> systemctl stop NAME.service
重启:service NAME restart ==> systemctl restart NAME.service
状态:service NAME status ==> systemctl status NAME.service
条件式重启:service NAME condrestart ==> systemctl try-restart NAME.service
重载或重启服务:systemctl reload-or-restart NAME.service
重载或条件式重启服务:systemctl reload-try-restart NAME.service

查看某服务当前激活与否的状态:systemctl is-active NAME.service
查看所有已激活的服务:systemctl list-units --type service
查看所有服务(已激活及未激活): chkconfig --list ==> systemctl list-units -t service --all
查看某服务是否能开机自启:chkconfig --list NAME ==> systemctl is-enable NAME.service

禁止某服务设定为开机自启:systemctl mask NAME.service
取消此禁止:systemctl umask NAME.service

扫描二维码关注公众号,回复: 6218296 查看本文章

查看服务的依赖关系:systemctl list-dependencies NAME.service

# 重启系统

sudo systemctl reboot

# 关闭系统,切断电源

sudo systemctl poweroff

# CPU停止工作

sudo systemctl halt

# 暂停系统

sudo systemctl suspend

# 让系统进入冬眠状态

sudo systemctl hibernate

# 让系统进入交互式休眠状态

sudo systemctl hybrid-sleep

# 启动进入救援状态(单用户状态)

sudo systemctl rescue

telnet命令

telnet命令用于远端登入。执行telnet指令开启终端机阶段作业,并登入远端主机。语法:

telnet [-8acdEfFKLrx]
[-b<主机别名>]
[-e<脱离字符>]
[-k<域名>]
[-l<用户名称>]
[-n<记录文件>]
[-S<服务类型>]
[-X<认证形态>]
[主机名称或IP地址<通信端口>]

参数说明

  • -8 允许使用8位字符资料,包括输入与输出。
  • -a 尝试自动登入远端系统。
  • -b<主机别名> 使用别名指定远端主机名称。
  • -c 不读取用户专属目录里的.telnetrc文件。
  • -d 启动排错模式。
  • -e<脱离字符> 设置脱离字符。
  • -E 滤除脱离字符。
  • -f 此参数的效果和指定"-F"参数相同。
  • -F 使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。
  • -k<域名> 使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。
  • -K 不自动登入远端主机。
  • -l<用户名称> 指定要登入远端主机的用户名称。
  • -L 允许输出8位字符资料。
  • -n<记录文件> 指定文件记录相关信息。
  • -r 使用类似rlogin指令的用户界面。
  • -S<服务类型> 设置telnet连线所需的IP TOS信息。
  • -x 假设主机有支持数据加密的功能,就使用它。
  • -X<认证形态> 关闭指定的认证形态。

 例如:登录远程主机192.168.17.28命令:telnet 192.168.17.28

chkconfig命令

chkconfig命令用于检查,设置系统的各种服务。这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。语法:

chkconfig [--add][--del][--list][系统服务] 

或 
chkconfig [--level <等级代号>][系统服务][on/off/reset]

命令选项 

  • --add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
  • --del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
  • --level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。

例如

1、列出chkconfig所知道的所有命令:chkconfig -list

2、开启服务命令:chkconfig 服务名称 on 

3、关闭服务命令:chkconfig 服务名称 off

top命令

top命令用于实时显示 process 的动态。语法:

top [选项]

命令选项:

  • -d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
  • -q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
  • -c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S : 累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来
  • -s : 安全模式,将交谈式指令取消, 避免潜在的危机
  • -i : 不显示任何闲置 (idle) 或无用 (zombie) 的行程
  • -n : 更新的次数,完成后将会退出 top
  • -b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内

例如:

1、显示进程信息命令:top

2、显示完整命令:top -c

3、以批处理模式显示程序信息命令:top -b

4、以累积模式显示程序信息命令:top -S

5、设置信息更新次数命令:top -n 2 //表示更新两次后终止更新显示

6、设置信息更新时间命令:top -d 3 //表示更新周期为3秒

7、显示指定的进程信息命令:top -p 139 //显示进程号为139的进程信息,CPU、内存占用率等

8、显示更新十次后退出命令:top -n 10

9、使用者将不能利用交谈式指令来对行程下命令:top -s

10、将更新显示二次的结果输入到名称为 top.log 的档案里命令:top -n 2 -b < top.log

netstat命令

netstat命令用于显示网络状态。利用netstat指令可让你得知整个Linux系统的网络情况。语法:

netstat [选项]

命令选项

  • -a或--all 显示所有连线中的Socket。
  • -A<网络类型>或--<网络类型> 列出该网络类型连线中的相关地址。
  • -c或--continuous 持续列出网络状态。
  • -C或--cache 显示路由器配置的快取信息。
  • -e或--extend 显示网络其他相关信息。
  • -F或--fib 显示FIB。
  • -g或--groups 显示多重广播功能群组组员名单。
  • -h或--help 在线帮助。
  • -i或--interfaces 显示网络界面信息表单。
  • -l或--listening 显示监控中的服务器的Socket。
  • -M或--masquerade 显示伪装的网络连线。
  • -n或--numeric 直接使用IP地址,而不通过域名服务器。
  • -N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。
  • -o或--timers 显示计时器。
  • -p或--programs 显示正在使用Socket的程序识别码和程序名称。
  • -r或--route 显示Routing Table。
  • -s或--statistice 显示网络工作信息统计表。
  • -t或--tcp 显示TCP传输协议的连线状况。
  • -u或--udp 显示UDP传输协议的连线状况。
  • -v或--verbose 显示指令执行过程。
  • -V或--version 显示版本信息。
  • -w或--raw 显示RAW传输协议的连线状况。
  • -x或--unix 此参数的效果和指定"-A unix"参数相同。
  • --ip或--inet 此参数的效果和指定"-A inet"参数相同。

例如

1、显示详细的网络状况命令:netstat -a

2、显示当前户籍UDP连接状况命令:netstat -nu

3、显示UDP端口号的使用情况命令:netstat -apu

4、显示网卡列表命令:netstat -i

5、显示组播组的关系命令:netstat -g

6、显示网络统计信息命令:netstat -s

7、显示监听的套接口命令:netstat -l

ping命令

ping命令用于检测主机。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。语法:

ping [选项] [主机名称或IP地址]

命令选项:

  • -d 使用Socket的SO_DEBUG功能。
  • -c<完成次数> 设置完成要求回应的次数。
  • -f 极限检测。
  • -i<间隔秒数> 指定收发信息的间隔时间。
  • -I<网络界面> 使用指定的网络接口送出数据包。
  • -l<前置载入> 设置在送出要求信息之前,先行发出的数据包。
  • -n 只输出数值。
  • -p<范本样式> 设置填满数据包的范本样式。
  • -q 不显示指令执行过程,开头和结尾的相关信息除外。
  • -r 忽略普通的Routing Table,直接将数据包送到远端主机上。
  • -R 记录路由过程。
  • -s<数据包大小> 设置数据包的大小。
  • -t<存活数值> 设置存活数值TTL的大小。
  • -v 详细显示指令的执行过程。

例如

1、检测是否与主机连通命令:ping IP地址、网址等

2、指定接收包的次数命令(收到几次包后主动退出):ping -c 次数 IP地址、网址等

猜你喜欢

转载自blog.csdn.net/qq_36761831/article/details/90033713