linux命令之系统管理命令(下)
1.chkconfig:管理开机服务
该命令为linux系统中的系统服务管理工具,可以查询和更新不同的运行等级下系统服务的启动状态。
选项 | 说明 |
--list(常用) | 显示不同运行级别下服务的启动状态 |
--add(常用) | 添加一个系统服务 |
--del(常用) | 删除一个系统服务 |
--level(常用) | 指定运行级别 |
示例:
1)查看系统的服务状态
[root@boxiaoyuan ~]# chkconfig --list
NetworkManager :关闭 :关闭 :启用 :启用 :启用 :启用 :关闭
abrt-ccpp :关闭 :关闭 :关闭 :启用 :关闭 :启用 :关闭
abrtd :关闭 :关闭 :关闭 :启用 :关闭 :启用 :关闭
关于运行级别的说明:0表示关机;1表示单用户模式;2表示没有网络的多用户模式;3表示完全的多用户模式;4表示没有使用的级别;5表示图形界面多用户模式;6表示重启。
2)管理系统服务
[root@boxiaoyuan ~]# chkconfig --list sshd # 显示sshd不同运行级别下服务的启动状态
sshd :关闭 :关闭 :启用 :启用 :启用 :启用 :关闭
[root@boxiaoyuan ~]# chkconfig sshd off # 关闭2 5级别下开机自启动
[root@boxiaoyuan ~]# chkconfig --list sshd
sshd :关闭 :关闭 :关闭 :关闭 :关闭 :关闭 :关闭
[root@boxiaoyuan ~]# chkconfig sshd on # 打开2 5级别下开机自启动
[root@boxiaoyuan ~]# chkconfig --list sshd
sshd :关闭 :关闭 :启用 :启用 :启用 :启用 :关闭
[root@boxiaoyuan ~]# chkconfig sshd --level off # 关闭sshd服务5级别开机自启动
[root@boxiaoyuan ~]# chkconfig --list sshd
sshd :关闭 :关闭 :启用 :启用 :启用 :关闭 :关闭
[root@boxiaoyuan ~]# chkconfig sshd --level on # 打开sshd服务5级别开机自启动
[root@boxiaoyuan ~]# chkconfig --list sshd
sshd :关闭 :关闭 :启用 :启用 :启用 :启用 :关闭
3)了解chkconfig的原理
chkconfig是在runlevel级别的/etc/rc.d/rc*.d目录中将对应服务做一个以S或K开头的软链接。
[root@boxiaoyuan ~]# ls -l /etc/rc.d/rc3.d/ | grep sysstat # 运行级别3的目录rc3.d查看sysstat
lrwxrwxrwx. root root 10月 : S01sysstat -> ../init.d/sysstat # S是开启
[root@boxiaoyuan ~]# chkconfig --list sysstat
sysstat :关闭 :启用 :启用 :启用 :启用 :启用 :关闭
[root@boxiaoyuan ~]# chkconfig sysstat off
[root@boxiaoyuan ~]# chkconfig --list sysstat
sysstat :关闭 :启用 :关闭 :关闭 :关闭 :关闭 :关闭
[root@boxiaoyuan ~]# ls -l /etc/rc.d/rc3.d/ | grep sysstat
lrwxrwxrwx. root root 4月 : K99sysstat -> ../init.d/sysstat # K是关闭
下面对rc3.d目录进行试验,chkconfig的--level 2345是同时对rc2.d、rc3.d、rc4.d、rc5.d这四个目录进行操作。
[root@boxiaoyuan rc3.d]# ls -al /etc/rc.d/rc3.d/ | grep sysstat
lrwxrwxrwx. root root 4月 : K99sysstat -> ../init.d/sysstat
[root@boxiaoyuan rc3.d]# rm -rf K99sysstat
[root@boxiaoyuan rc3.d]# chkconfig --list sysstat
sysstat :关闭 :启用 :关闭 :关闭 :关闭 :关闭 :关闭
[root@boxiaoyuan rc3.d]# ln -s ../init.d/sysstat S01sysstat
[root@boxiaoyuan rc3.d]# chkconfig --list sysstat
sysstat :关闭 :启用 :关闭 :启用 :关闭 :关闭 :关闭
[root@boxiaoyuan rc3.d]# rm -rf S01sysstat
[root@boxiaoyuan rc3.d]# ln -s ../init.d/sysstat K99sysstat
[root@boxiaoyuan rc3.d]# chkconfig --list sysstat
sysstat :关闭 :启用 :关闭 :关闭 :关闭 :关闭 :关闭
[root@boxiaoyuan rc3.d]# cat /etc/rc.d/rc3.d/K99sysstat
#!/bin/sh
#
# chkconfig: 99 # 01和99的来源出自这里。
2.rpm:RPM包管理器
几乎所有的linux发行版本都是使用rpm命令进行管理,安装,卸载和更新软件。rpm命令包含了安装,卸载,升级,查询和验证等功能。
选项 | 说明 |
-q(常用) | 查询软件包 |
-p(常用) | 后接以".rpm"为后缀的软件包 |
-i(常用) | 如果配合-qp,则表示显示软件包的概要信息;如果是安装包,则表示安装 |
-l(常用) | 显示软件包中的所有文件列表 |
-R(常用) | 显示软件包的依赖环境 |
-v(常用) | 显示详细信息 |
-h(常用) | 用“#”显示安装进度条 |
-a(常用) | 与-q参数搭配使用,用于查询所有的软件包 |
-e(常用) | 卸载软件包 |
-f(常用) | 查询文件或命令属于哪个软件包 |
实例:
首先下载rpm包作为测试文件:https://mirrors.aliyun.com/centos/6.10/os/x86_64/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm
1)查看rpm包信息
[root@boxiaoyuan ~]# rpm -qpi lrzsz-0.12.-27.1.el6.x86_64.rpm
Name : lrzsz Relocations: (not relocatable)
Version : 0.12. Vendor: CentOS
Release : 27.1.el6 Build Date: 2010年08月19日 星期四 14时20分40秒
Install Date: (not installed) Build Host: c6b3.bsys.dev.centos.org
Group : Applications/Communications Source RPM: lrzsz-0.12.-27.1.el6.src.rpm
Size : License: GPLv2+
Signature : RSA/, 2011年07月03日 星期日 12时43分30秒, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem <http://bugs.centos.org>
URL : http://www.ohse.de/uwe/software/lrzsz.html
Summary : The lrz and lsz modem communications programs
Description :
Lrzsz (consisting of lrz and lsz) is a cosmetically modified
zmodem/ymodem/xmodem package built from the public-domain version of
the rzsz package. Lrzsz was created to provide a working GNU
copylefted Zmodem solution for Linux systems.
2)查看rpm包的内容
[root@boxiaoyuan ~]# rpm -qpl lrzsz-0.12.-27.1.el6.x86_64.rpm
/usr/bin/rb
/usr/bin/rx
/usr/bin/rz
/usr/bin/sb
/usr/bin/sx
/usr/bin/sz
/usr/share/locale/de/LC_MESSAGES/lrzsz.mo
/usr/share/man/man1/rz..gz
/usr/share/man/man1/sz..gz
3)查询rpm包的依赖
[root@boxiaoyuan ~]# rpm -qpR lrzsz-0.12.-27.1.el6.x86_64.rpm
libc.so.()(64bit)
libc.so.(GLIBC_2.)(64bit)
libc.so.(GLIBC_2.2.5)(64bit)
libc.so.(GLIBC_2.)(64bit)
libc.so.(GLIBC_2.3.4)(64bit)
libc.so.(GLIBC_2.)(64bit)
libc.so.(GLIBC_2.)(64bit)
libnsl.so.()(64bit)
rpmlib(CompressedFileNames) <= 3.0.-
rpmlib(FileDigests) <= 4.6.-
rpmlib(PartialHardlinkSets) <= 4.0.-
rpmlib(PayloadFilesHavePrefix) <= 4.0-
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-
4)安装rpm包
[root@boxiaoyuan ~]# rpm -ivh lrzsz-0.12.-27.1.el6.x86_64.rpm
Preparing... ########################################### [%]
package lrzsz-0.12.-27.1.el6.x86_64 is already installed
5)查看系统中是否安装指定的rpm包
[root@boxiaoyuan ~]# rpm -qa lrzsz
lrzsz-0.12.-27.1.el6.x86_64
6)卸载rpm包
[root@boxiaoyuan ~]# rpm -e lrzsz
[root@boxiaoyuan ~]# rpm -qa lrzsz
7)查看文件属于哪个包
[root@boxiaoyuan ~]# rpm -qf $(which ifconfig)
net-tools-1.60-.el6_2.x86_64
3.yum:自动化RPM包管理工具
yum主要用于自动安装,升级rpm软件包,它能自动查找并解决rpm包质检的依赖关系。
yum命令的常用参数为-y,表示确认操作,下面以安装httpd软件包为例,给出常用的yum命令。
命令 | 说明 |
yum install httpd | 安装httpd软件包 |
yum update httpd | 更新httpd软件包 |
yum list httpd | 列出软件包 |
yum search httpd | 如果不记得软件包的确切名称,可以使用该命令搜索 |
yum info httpd | 获取软件包的信息,需要在安装软件包之前知道它的信息 |
yum deplist httpd | 查看软件包的依赖 |
yum clean all | 清理所有YUM的缓存内容 |
yum history | 查看yum的历史记录 |
yum check-update | 检查是否有可用的更新rpm软件包 |
yum list installed | 列出所有已安装的软件 |
yum list | 列出所有可用软件 |
示例:
1)安装httpd软件包
[root@boxiaoyuan ~]# yum install httpd
已加载插件:fastestmirror, refresh-packagekit, security
设置安装进程
Loading mirror speeds from cached hostfile
* base: mirror.jdcloud.com
* epel: mirrors.yun-idc.com
* extras: mirror.jdcloud.com
* updates: mirror.jdcloud.com
解决依赖关系
--> 执行事务检查
---> Package httpd.x86_64 :2.2.-.el6.centos will be 升级
---> Package httpd.x86_64 :2.2.-.el6.centos will be an update
--> 处理依赖关系 httpd-tools = 2.2.-.el6.centos,它被软件包 httpd-2.2.-.el6.centos.x86_64 需要
--> 执行事务检查
---> Package httpd-tools.x86_64 :2.2.-.el6.centos will be 升级
---> Package httpd-tools.x86_64 :2.2.-.el6.centos will be an update
--> 完成依赖关系计算 依赖关系解决 =================================================================================================
软件包 架构 版本 仓库 大小
=================================================================================================
正在升级:
httpd x86_64 2.2.-.el6.centos base k
为依赖而更新:
httpd-tools x86_64 2.2.-.el6.centos base k 事务概要
=================================================================================================
Upgrade Package(s) 总下载量: k
确定吗?[y/N]:y
下载软件包:
(/): httpd-2.2.-.el6.centos.x86_64.rpm | kB :
(/): httpd-tools-2.2.-.el6.centos.x86_64.rpm | kB :
-------------------------------------------------------------------------------------------------
总计 kB/s | kB :
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
Warning: RPMDB altered outside of yum.
正在升级 : httpd-tools-2.2.-.el6.centos.x86_64 /
正在升级 : httpd-2.2.-.el6.centos.x86_64 /
清理 : httpd-2.2.-.el6.centos.x86_64 /
清理 : httpd-tools-2.2.-.el6.centos.x86_64 /
Verifying : httpd-tools-2.2.-.el6.centos.x86_64 /
Verifying : httpd-2.2.-.el6.centos.x86_64 /
Verifying : httpd-tools-2.2.-.el6.centos.x86_64 /
Verifying : httpd-2.2.-.el6.centos.x86_64 / 更新完毕:
httpd.x86_64 :2.2.-.el6.centos 作为依赖被升级:
httpd-tools.x86_64 :2.2.-.el6.centos 完毕!
2)检查httpd安装列表
[root@boxiaoyuan ~]# yum list httpd # 检查httpd安装列表
已加载插件:fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirrors.zju.edu.cn
* epel: ftp.riken.jp
* extras: mirrors.zju.edu.cn
* updates: ftp.sjtu.edu.cn
已安装的软件包
httpd.x86_64 2.2.-.el6.centos @base
[root@boxiaoyuan ~]# yum search httpd
已加载插件:fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirror.jdcloud.com
* epel: mirror.pregi.net
* extras: mirror.jdcloud.com
* updates: mirror.jdcloud.com
====================================== N/S Matched: httpd =======================================
iipsrv-httpd-fcgi.noarch : Apache HTTPD files for iipsrv
libmicrohttpd-devel.i686 : Development files for libmicrohttpd
libmicrohttpd-devel.x86_64 : Development files for libmicrohttpd
libmicrohttpd-doc.noarch : Documentation for libmicrohttpd
lighttpd-fastcgi.x86_64 : FastCGI module and spawning helper for lighttpd and PHP configuration
lighttpd-mod_authn_gssapi.x86_64 : Authentication module for lighttpd that uses GSSAPI
lighttpd-mod_authn_mysql.x86_64 : Authentication module for lighttpd that uses a MySQL database
lighttpd-mod_geoip.x86_64 : GeoIP module for lighttpd to use for location lookups
lighttpd-mod_mysql_vhost.x86_64 : Virtual host module for lighttpd that uses a MySQL database
httpd.x86_64 : Apache HTTP Server
httpd-devel.i686 : Development interfaces for the Apache HTTP server
httpd-devel.x86_64 : Development interfaces for the Apache HTTP server
httpd-itk.x86_64 : MPM Itk for Apache HTTP Server
httpd-manual.noarch : Documentation for the Apache HTTP server
httpd-tools.x86_64 : Tools for use with the Apache HTTP Server
libmicrohttpd.i686 : Lightweight library for embedding a webserver in applications
libmicrohttpd.x86_64 : Lightweight library for embedding a webserver in applications
lighttpd.x86_64 : Lightning fast webserver with light system requirements
mirmon-httpd.noarch : Apache configuration for mirmon
mod_auth_mellon.x86_64 : A SAML 2.0 authentication module for the Apache Httpd Server
mod_dav_svn.x86_64 : Apache httpd module for Subversion server
mod_dnssd.x86_64 : An Apache HTTPD module which adds Zeroconf support
python-mozhttpd.noarch : Basic Python webserver
python2-sphinxcontrib-httpdomain.noarch : Sphinx domain for documenting HTTP APIs
sysusage-httpd.noarch : Apache configuration for sysusage
viewvc-httpd.noarch : ViewVC configuration for Apache/mod_python
web-assets-httpd.noarch : Web Assets aliases for the Apache HTTP daemon Name and summary matches only, use "search all" for everything.
注:本文内容为《跟老男孩学linux运维 核心系统命令实践》的学习笔记。
linux命令之系统管理命令(下)的更多相关文章
- linux命令之系统管理命令(上)
1.lsof:查看进程打开的文件 该命令可以列举系统中已经被打开的文件,可以根据文件找到对应的进程信息,同时也可以根据进程信息找到进程打开的文件. 参数 说明 -c 进程名 显示指定的进程名打开的文件 ...
- Linux学习笔记3——Linux中常用系统管理命令
stat 显示指定文件的相关信息,比ls命令显示内容更多 who 显示在线登录用户 hostname 显示主机名称 uname显示系统信息 top 显示当前系统中耗费资源最多的进程 ps 显示瞬间的进 ...
- Linux必学的命令
Linux必学的命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正 ...
- linux常用60条命令 转
Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命 ...
- 入门学习Linux常用必会命令实例详解
Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统, ...
- 构建LINUX下的入侵检测系统——LIDS 系统管理命令--vlock
构建LINUX下的入侵检测系统——LIDS 系统管理命令--vlock http://blog.chinaunix.net/uid-306663-id-2440200.html LIDS官方网站: ...
- Linux文件系统管理命令(第二版)
Linux文件系统管理命令 常用命令 1.df命令 查看分区使用情况 常用选项 -h 比较人性化 -m 以兆字节显示分区使用情况 显示信息: Mounted on:挂载点 Filesystem:对应的 ...
- linux系统管理命令(五)
[教程主题]:1.系统管理命令 [1.1]用户和组管理 在Linux操作系统中,任何文件都归属于某一特定的用户,而任何用户都隶属于至少一个用户组.用户是否有权限对某文件进行访问.读写以及执行,受到系统 ...
- Linux系统管理命令
Linux系统管理命令 命令 说明 stat 显示指定文件的相关信息,比ls命令显示内容更多 who 显示在线登录用户 hostname 显示主机名称 uname 显示系统信息 top 显示当前系统中 ...
随机推荐
- shell编程——sed用法之参数详解
sed格式: sed 参数 '正则表达式' 文件名 sed的常见参数有以下几种: 1.-n, --quiet, --silent 取消自动打印模式 不加n默认打印整个文件: [root@localho ...
- Linux下的service命令和chkconfig命令的原理
CentOS下的service命令和chkconfig命令的原理 1.service命令的原理 service命令用来对服务进行启动和关闭,比如service mysqld start可以启动mysq ...
- Hash表算法详解
Hash表定义 散列表(Hash table,也叫哈希表),是根据关键字值(Key value)直接进行访问的数据结构.也就是说,它通过把关键字(关键字通过Hash算法生成)映射到表中一个位置来访问记 ...
- 利用fetch进行POST传参
fetch(config.host+"url",{ method:"POST", mode: 'cors',跨域请求 headers: { ...
- 【LA3415 训练指南】保守的老师 【二分图最大独立集,最小割】
题意 Frank是一个思想有些保守的高中老师.有一次,他需要带一些学生出去旅行,但又怕其中一些学生在旅行中萌生爱意.为了降低这种事情发生的概率,他决定确保带出去的任意两个学生至少要满足下面四条中的一条 ...
- 解决svn Key usage violation in certificate has been detected
ubuntu系统 #!/bin/shecho "This script will reconfigure subversion to work with certs correctly.&q ...
- cocos2dx 屏幕分辨率问题
做手机上的软件首先要考虑的就是屏幕分辨率怎么解决.coco2dx已经有了很好的解决方法. 用cocos2dx的python脚本创建工程时默认生成一个Helloworld的demo.我们就以这个demo ...
- 28-Truck History(poj1789最小生成树)
http://poj.org/problem?id=1789 Truck History Time Limit: 2000MS Memory Limit: 65536K Total Submiss ...
- [C++] c Struct VS c++ Struct
c Struct c语言生命变量要加上struct c语言结构体内部不能有函数 C语言结构体没有共有,私有和继承
- 快速求出n!的质因数的个数
一般做组合数的题目都要进行质因数的分解,我们一般是for循环对每个数进行质因数分解,大多数情况都不会超时,但极少数的情况下,题目会不允许这样的做法,所以我们需要学会一种更快的方法来求质因数. 我们一般 ...