Linux学习笔记(19) Linux服务管理
1. 服务的分类
Linux服务可分为RPM包默认安装的服务和源码包安装的服务。前者可细分为独立的服务(直接作用于内存中)和基于xinetd服务。xinetd本身是独立的服务,其唯一的功能是管理其他服务。优点是管理的服务不占用内存,缺点是响应缓慢。
(1) 启动和自启动
服务启动就是在当前系统中让服务运行,并提供其功能。服务的自启动是指让服务在系统开机或重启之后,随着系统的启动而自动启动服务。
(2) 查询已安装的服务
RPM包安装的服务可通过chkconfig --list命令查看,其作用是查看服务自启动状态。该命令可以看到所有RPM包安装的服务,但看不到源码包安装的服务。
[root@localhost sh]# chkconfig --list
abrt-ccpp :off :off :off :on :off :on :off
abrtd :off :off :off :on :off :on :off
......
通过查看服务安装位置(一般在/usr/local目录下),可以查看源码包安装的服务。与RPM包安装的服务的区别在于,源码包安装在指定位置,而RPM包安装在默认位置下。
2. 独立服务的管理
RPM包安装的默认位置一般为:
/etc/init.d/-----启动脚本位置
/etc/sysconfig/-----初始化环境配置文件的位置
/etc/-----配置文件的位置
/etc/xinetd.con-----xinetd配置文件
/etc/xinetd.d/-----基于xinetd服务的启动脚本
/var/lib/-----服务产生的数据放在这里
/var/log/-----日志
(1) 独立服务的启动方法有两种:
()/etc/init.d/独立服务名 start|stop|restart|status
#查询apache的状态
[root@localhost sh]# /etc/init.d/httpd status
httpd (pid ) is running... ()service 独立服务名 start|stop|restart|status
#重启apache
[root@localhost sh]# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
[ OK ]
注:service命令是红帽专有命令,其他的unix系统中的服务操作可使用第一种方法执行。其次,service --status-all命令可以列出所有的RPM包安装服务的状态。
(2) 独立服务的自启动
可以通过三种方法来实现,推荐使用第二种方法。
① chkconfig [--level 运行级别] [独立服务名] [on|off]
例:设置apache自启动
[root@localhost sh]# chkconfig --list | grep httpd
httpd :off :off :off :off :off :off :off
[root@localhost sh]# chkconfig --level httpd on
[root@localhost sh]# chkconfig --list | grep httpd
httpd :off :off :on :on :on :on :off
② 修改/etc/rc.local文件,开机时输入账号之前,将会检查该文件,从而实现自启动。
例:在该文件中设置apache服务
[root@localhost sh]# vim /etc/rc.local
#!/bin/sh # 每次启动时,修改该文件的时间,因此可以查询系统的启动时间
touch /var/lock/subsys/local # apache自启动
/etc/rc.d/init.d/httpd start
③ 使用ntsysv命令管理自启动(红帽专有)
ntsysv 1.3.49.3 - (C) - Red Hat, Inc. ┌──────────────────┤ Services ├──────────────────┐
│ │
│ What services should be automatically started? │
│ │
│ [*] abrt-ccpp ↑ │
│ [*] abrtd ▮ │
│ [*] acpid ▒ │
│ [*] atd ▒ │
│ [*] auditd ▒ │
│ [*] autofs ▒ │
│ [*] blk-availability ▒ │
│ [*] certmonger ↓ │
│ │
│ ┌────┐ ┌────────┐ │
│ │ Ok │ │ Cancel │ │
│ └────┘ └────────┘ │
│ │
│ │
└────────────────────────────────────────────────┘
该命令的好处是不仅可以设置独立服务,也可以管理xinetd服务。
3. 基于xinetd服务的管理
除了不安全的telnet仍在使用xinetd服务进行管理,基于xinetd服务的使用越来越少,因此了解即可。
(1) 安装xinetd和telnet
[root@localhost sh]# yum -y install xinetd
[root@localhost sh]# yum -y install telnet-server
...
[root@localhost sh]# chkconfig --list
......
xinetd :off :off :off :on :on :on :off xinetd based services:
chargen-dgram: off
rsync: off
telnet: off
......
当用户访问rsync服务时,将先访问xinetd服务,然后xinetd服务调用rsync服务,rsync服务响应xinetd服务,再由xinetd响应客户端。
(2) xinetd服务的启动
启动telnet。将/etc/xinetd.d/telnet 中的"didable=yes"改为"disable=no"即可,随后重启xinetd服务。查看23端口存在时,telnet服务就启动了。
[root@localhost sh]# vim /etc/xinetd.d/telnet
# default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet #服务的名称为telnet
{
disable = no #服务不启动
flags = REUSE # 标志位REUSE,设定TCP/IP socket重用
socket_type = stream #使用TCP协议数据包
wait = no #允许多个连接同时连接
user = root #启动服务的用户为root
server = /usr/sbin/in.telnetd #服务的请程序
log_on_failure += USERID #登录失败后,记录用户的ID
} [root@localhost sh]# service xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
[root@localhost sh]# netstat -tlun | grep
tcp ::: :::* LISTEN
(3) xinetd服务的自启动
注意:xinetd服务的启动和自启动是通用的,即执行了启动,意味着自启动也执行了。
# () chkconfig telnet on|off
[root@localhost sh]# chkconfig telnet off
[root@localhost sh]# netstat -tlun | grep # () ntsysv
4. 源码包安装服务的管理
(1) 源码包安装服务的启动
使用绝对路径,调用启动脚本来启动。不同的源码包的启动脚本不同。可以查看源码包的安装说明,来查看启动脚本的方法。
例:启动Apache服务的方法:
/usr/local/apache2/bin/apachectl start|stop
再次使用RPM包安装的apache时,将显示80端口冲突额错误。
(2) 源码包服务的自启动
vi /etc/rc.d/rc.local
/usr/local/apache2/bin/apachectl start
(3) 让源码包服务被服务管理命令识别
让源码包的apache服务能被service命令管理启动
ln –s /usr/local/apache2/bin/apachectl /etc/init.d/apache
让源码包的apache服务能被chkconfig与ntsysv命令管理自启动
vi /etc/init.d/apache #指定httpd脚本可以被chkconfig命令管理,格式为chkconfig: 运行级别 启动顺序 关闭顺序 # 不能与现有的脚本的启动顺序与关闭顺序冲突 # chkconfig: # 说明,内容随意 # description: source package apache
然后执行:chkconfig –add apache
注意:不建议进行这样的操作,容易混淆
Linux学习笔记(19) Linux服务管理的更多相关文章
- [转帖]Linux学习笔记之rpm包管理功能全解
Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 ...
- linux学习笔记2 - linux常用命令
转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...
- linux学习笔记--程序与进程管理
.工作管理 1.前台程序放后台程序 命令后 加 & 2.任务执行时将前台任务任务放到后台中并[暂停] ctr + z 3.jobs 观察后台工作状态 及多少任务在执行,可以通过 help ...
- Linux学习笔记(20) Linux系统管理
1.进程管理 进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源. 进程管理的作用有判断服务器健康状态.查看系统中所有进程及杀死进程.一般都可以采用 ...
- Linux学习笔记之Linux相关知识
[想成为某一方面的大神,没有捷径可走,只能不断的记录.练习.总结.coding……] notes:主要从网上摘录了一些关于Linux的历史以及一些相关内容,以便对Linux系统有一定的了解.这不但可以 ...
- Linux学习笔记之Linux启动引导过程
早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...
- Linux学习笔记之Linux第一课-基本介绍
Linux简介 Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的. Linux是一套免费使用和自由传播的类Unix操作系统,是一个基 ...
- Linux学习笔记19-ssh远程管理
远程管理 服务器一般运行在IDC机房中,一般都是通过远程管理方式对服务器进程控制. 常见的远程管理工具: RDP(remote desktop protocol)协议,window远程桌面管理 Tel ...
- Linux学习笔记(21) Linux日志管理
1. 简介 (1) 日志服务 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日志文件的格式 ...
随机推荐
- gtk+-3.21.4 static build step in windows XP
In recent days the weather is very hot Unable to sleep properly Under the state of daze research gtk ...
- Shell编程—定时任务
应用:定时催收,定时下发,对新增内容入库同步, 时间:凌晨 服务器Reahat Linux: Bash HPUX:kbash? #!/bin/sh #!/bin/bash echo awk #输入重定 ...
- C#中XmlTextWriter读写xml文件详细介绍(转)
转自http://www.jb51.net/article/35230.htm .NET中包含了很多支持XML的类,这些类使得程序员使用XML编程就如同理解XML文件一样简单.在这篇文章中,我将给 ...
- sqlserver 动态行转列
DECLARE @SQL VARCHAR(8000)SET @SQL = 'select overcode 'SELECT @SQL = @SQL + ' , max(case header when ...
- 安装Django,运行django-admin.py startproject 工程名,后不出现指定的工程解决办法!!
第一次写博客,,,,, 在看我这篇教程的前提是你应该已经正确装好python和Django了,好了,废话不说了,正题走你!你现在是不是很纠结自己运行django-admin.py startpr ...
- tableview详细介绍
tableview详细介绍: https://www.baidu.com/link?url=MU5a5om66vYEKAcnvmXCeCwMGetezW5o2X11OUnwN7-fb_jWPx6xyv ...
- tableView设置首尾
[self.tableView setTableHeaderView:view]; [self.tableView setTableFooterView:view];
- iOS 全局禁止横屏,但UIWebView 全屏播放视频,横屏,解决办法(任意页面横竖屏或禁止)
iOS 全局禁止横屏,但UIWebView 全屏播放视频,横屏,解决办法 时间 2015-07-14 20:59:00 博客园-原创精华区 原文 http://www.cnblogs.com/fe ...
- python处理html的table标签
转载:http://www.xuebuyuan.com/583071.html python处理html的table标签 2012年01月06日 ⁄ 综合 ⁄ 共 5279字 ⁄ 字号 小 中 大 ⁄ ...
- 6个原因说服你选择PostgreSQL9.6
PostgreSQL9.6在前些日子发布了, 社区为该版本的重大更新付诸良多, 发布日志一如既往的长,我挑选了6个重要的更新, 这些或许能够帮助你更好的使用PostgreSQL. 并行: 并行应该是这 ...