[Linux]服务管理:rpm包, 源码包
|--- 1. 独立的服务
|---- RPM包(二进制包)默认安装的服务 |--- 2. 基于xinetd服务
linux服务分类: |
|---- 源码包安装的服务
查询已安装的服务:
RPM包安装的服务:chkconfig --list( 查看服务自启动状态,可以看到所有RPM包安装的服务 )
( 7个运行级别,0代表关机,1代表单用户,2代表不完全多用户,3代表字符界面,4未分配,5图形界面,6重新启动 ,如果2 3 4 5 任意一个启用,代表服务会随系统下次启动进入2 3 4 5级别时而启动 )
源码包安装的服务:查看服务安装位置,一般是 /usr/local 下
RPM安装服务 和 源码包 安装服务的区别就是安装位置的不同(导致管理方式的不同):
RPM包安装在默认位置中;源码包安装在指定位置,一般是/usr/local/
1. RPM服务的管理 - 独立服务管理
RPM包安装的默认位置:
/etc/init.d -> /etc/rc.d/init.d #启动脚本位置
/etc/sysconfig/ # 初始化环境配置文件位置
/etc/ # 配置文件位置
/etc/xinetd.conf # xinetd配置文件
/etc/xinetd.d/ # 基于xinetd服务的启动脚本
/var/lib/ # 服务产生的数据放在这里
/var/log/ # 日志
安装:rpm -ivh [--nodeps] 包全名
升级:rpm -Uvh [--nodeps] 包全名
卸载:rpm -e [--nodeps] 包名 (查找完整包名:rpm -qa | grep 包名)
校验:rpm -V 包名 (验证RPM软件包安装后是否有修改)
文件提取:rpm -qf /bin/ls (查询 ls 属于哪个软件包);
mv /bin/ls /tmp (模拟 ls 命令误删除);
rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-18.el7.x86_64.rpm | cpio -idv ./bin/ls (提取RPM包中的 ls 命令到当前目录的 bin/ls 下)
cp ./bin/ls /bin (把 ls 命令复制回 /bin 目录,修复文件丢失)
注意 --nodeps 应该只在实验环境用,否则安装的软件包可能缺少功能或者直接不能用。
校验信息的含义

命令丢失的情况也可以重装软件包解决。
独立服务的 启动:
① /etc/init.d/独立服务名 start|stop|status|restart # 绝对路径方式启动。(推荐方式)
② service 独立服务名 start|stop|restart|status # redheat专有命令,自动在启动脚本内寻找;(等同Centos7中的 systemctl start 服务名.service)
独立服务的 自启动:
① chkconfig [--level 2345] 独立服务名 on|off # 等同Centos7中的 systemctl enable 服务名.service
② 修改 /etc/rc.d/rc.local 文件,只要标准命令写入文件,保证开机自启动。(推荐方式)
③ 使用ntsysv命令管理自启动 # redheat专有命令
#!/bin/bash
# 一份常用的自启动脚本(/etc/rc.d/rc.local)
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf & service mysql start & /usr/local/php/sbin/php-fpm & /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf & /usr/local/xunsearch/bin/xs-ctl.sh restart &
2. RPM服务的管理 - 基于xinetd服务管理
安装xinetd:yum -y install xinetd (安装完后,chkconfig --list 可以看到基于xinetd的服务)
基于xinetd服务的 启动:chkconfig telnet on / chkconfig telnet off (如果装了telnet服务的话)
基于xinetd服务的 自启动:编辑/etc/xinetd.d/下的基于xinetd服务的配置文件
重启xinetd服务:service xinetd restart
缺点:基于xinetd的服务启动与自启动是关联的,启动后同样自启动,关闭自启动同样关闭了基于xinetd的服务。
3. 源码包服务管理
源码包安装服务的 启动:使用绝对路径,调用启动脚本来启动,不同的源码包的启动脚本不同。
(可以通过查看 源码包的安装说明,查看启动脚本的方法)
源码包服务的自启动:脚本 /etc/rc.d/rc.local 加入启动命令
让源码包服务被服务管理命令识别:ln -s /usr/local/nginx/sbin/nginx /etc/init.d/nginx (不建议使用,不利于后面的人识别服务的安装方式)
- 总结 -

Link:http://www.cnblogs.com/farwish/p/4856631.html
@黑眼诗人 <www.farwish.com>
[Linux]服务管理:rpm包, 源码包的更多相关文章
- 『学了就忘』Linux服务管理 — 79、源码包安装的服务管理
目录 1.源码包服务的启动管理 2.源码包服务的自启动管理 3.让源码包服务被服务管理命令识别 1.源码包服务的启动管理 # 通过源码包的安装路径,找到该服务的启动脚本, # 也就是获得该服务的启动脚 ...
- Linux系列(37) - 源码包与RPM包区别(1)
源码包是不能使用[service]命令来启动服务,因为源码包的安装位置由用户指定 源码包一般安装在: /usr/local/软件名/ ,源码包安装的服务,只能用绝对路径进行服务的管理 rpm包安装后, ...
- 【程序包管理】Linux软件管理之src源码安装编译
在很多时候我们需要自定义软件的特性,这时就需要用到源码安装.那么,网上有很多编译源码的工具,那么,我们怎么知道别人使用的是什么工具呢.其实我也不知道(*^▽^*). 那么本篇博客主要是写C代码的源码安 ...
- yum更换国内源 yum下载rpm包 源码包安装
7.6 yum更换国内源 7.7 yum下载rpm包 7.8/7.9 源码包安装 yum更换国内源 cd /etc/yum.repo.d/ 删除源 rm -f dvd.repo rm -f C ...
- RedHat系列软件管理(第二版) --源码包安装
RedHat系列软件管理 --源码包安装 源码包特点: 拥有广泛的平台支持性,可以装在所有的类UNIX操作系统上,不用考虑CPU架构. 灵活性,可以在安装过程中指定特有的选项. 定制度非常高,可以自己 ...
- Linux系列(38) - 源码包安装(2)
安装前准备 安装C语言编译器"gcc" yum -y install gcc --c 源码包语言编译器 下载源码包 安装注意事项 源代码保存位置:/usr/local/src/ 软 ...
- Android的Context Manager(服务管理器)源码剖析-android学习之旅(99)
Context Manager介绍 Context Manager对应的进程是servicemanager进程,它先于Service Server和服务客户端运行,进入接收IPC数据的待机状态,处理来 ...
- Linux系列教程(十三)——Linux软件包管理之源码包、脚本安装包
上篇博客我们讲解了网络yum源和光盘yum源的搭建步骤,然后详细介绍了相关的yum命令,yum 最重要是解决了软件包依赖性问题.在安装软件时,我们使用yum命令将会简单方便很多.我们知道yum命令只能 ...
- Linux软件包管理之源码包、脚本安装包
目录 1.源码包和RPM包的区别 RPM包和源码包默认安装位置: 由于安装位置不同带来的影响 2.源码包安装 ①.安装准备 ②.安装注意事项 ③.安装源码包 3.源码包卸载 4.脚本安装包 5.总结 ...
随机推荐
- Biological Filtration
http://www.fishyou.com/filtration-biological.php Biological Filtration Biological filtration is the ...
- 飞凌OK6410开发板SDIO无线8189WIFI模块驱动移植
为什么要移植?开发板不是已经提供了无线驱动吗? 貌似是这样的..本来是好用的.加入自己第三方驱动后发现WIFI用不了...最后发现飞凌提供的内核里面没有8189芯片的代码...问售后他们说那边是好的. ...
- using
using关键字有两个主要用途: 作为指令,为命名空间创建别名或导入其他命名空间中的类型. 作为语句,定义一个范围,在此范围的末尾将释放对象. using指令 using指令有两个用途: 导入其他命名 ...
- 2016-07-07: 重新编译时vc90.pdb不是创建此预编译头时使用的pdb文件
使用VS2008在一个解决方案中包含多个项目时,当设置多个项目的中间目录为同一个目录时,在增量编译时出现"重新编译时vc90.pdb不是创建此预编译头时使用的pdb文件,请重新创建预编译头问 ...
- MySQL安装过程net start mysql 启动失败 报“错误2,系统找不到文件”的解决办法
MySQL安装过程net start mysql 启动失败 报“错误2,系统找不到文件”的解决办法 错误2,系统找不到文件. 开始...运行... regedit 注册表项: HKEY_LOCAL_ ...
- MSsql bcp
--将test_1表导出在F盘根目录下/ reconfigure EXEC master..xp_cmdshell 'bcp test.dbo.test_1 out f:\abc.txt -c -q ...
- SQL笔记 [长期更新] (-2015.4)
[遍历所有表,复制表结构,复制表数据] --插入语句SELECT * INTO A FROM B 是在还没有A表的情况下,直接通过B表创建并把B表数据复制到A表里面,之后A,B表的结构和数据完全一样. ...
- Windows:文件服务器,访问进去不能查看到完整的文件
文件服务器,访问进去不能查看到完整的文件:别人访问却可以查看到完整的所有文件 可能是登录的帐号串掉导致,删除文件服务器帐号,重新访问: cmd: net use /delete *
- jQuery ajax()使用serialize()提交form数据
jQuery的serialize()方法通过序列化表单值,创建URL编码文本字符串,我们就可以选择一个或多个表单元素,也可以直接选择form将其序列化 <form action="&q ...
- A required class was missing while executing org.apache.maven.plugins:maven-war-plugin:2.1.1:war
完美解决方案: http://stackoverflow.com/questions/18442753/a-required-class-was-missing-while-executing-org ...