Linux学习笔记之超详细基础linux命令
by:授客 QQ:1033553122
---------------------------------接Part 11------------------------------
方法1:rpm
-V
软件包
方法2:rpm
-V[选项]
主要选项:
-a(all)
验证所有的已安装软件包
-f(file)
文件
验证指定文件所属的软件包
功能:验证软件包是否正常,若一切正常则不输出任何内容。否则输出8位字符串。字符串中的字符表示某项验证失败,字符及含义说明如下:
S(size)
文件大小不同
M(mode)
文件权限和文件类型不同
5 MD5校验码不同
D(device)
设备的标识符号不同
L(link)
文件的链接路径不同
U(user)
文件所有者用户不同
G(group)
文件所属组群不同
T(time)
文件修改时间不同
例子:验证samba软件包
[laiyu@localhost ~]$ rpm -V
samba-common-3.5.10-125.el6.i686
missing
/var/log/samba/old (Permission denied)
[laiyu@localhost ~]$
su
Password:
[root@localhost laiyu]# rpm
-V samba-common-3.5.10
备注:软件包应该写是软件名称或软件名称加上版本编号
方法:rpm
-e
软件包
功能:删除RPM软件包
说明:删除软件包时,参数不能使用rpm软件包的完整文件名,只能使用软件名称或软件名称加上版本编号。如果将删除的软件包与其它已安装软件包存在依赖关系,
那么系统会显示提示信息并终止删除操作。
例子:删除vsftpd软件包
[laiyu@localhost ~]$ rpm -e
vsftpd
--启动进程与作业
进程与作业的启动方式
1.1手动启动
前台启动
方法:Shell命令
【Enter】键
前台作业:运行在于前台,用户正对其进行交互操作。
后台启动
方法:Shell命令
&
【Enter】键
备注:后台作业:运行于后台,不接收终端的输入,但向终端输出执行结果。
1.2.调度启动
at调度,batch调度,cron调度
备注:进程的状态:
就绪状态:进程已经活得除CPU以外的运行所需要的全部资源
运行状态:进程占用CPU正在运行
等待状态:进程正在等待某个事件或某一资源
除了上述基本的三种状态以外,Linux还描述进程的以下状态
挂起状态:正在运行的进程,因为某个原因失去了CPU而暂时停止运行
终止状态:进程已经结束
休眠状态:进程主动暂时停止运行
僵死状态:进程已经停止允许,但是相关控制信息仍然保留
备注:进程的优先级:Linux中进程优先级取值范围:-20
~19之间的整数,取值越低,优先级越高。默认0
作业的前后台切换
bg命令
格式:bg
[作业号]
功能:将前台作业切换到后台运行。说若没有指定作业号,则将当前作业切换到后台。
备注:一个或多个相关进程可以形成一个作业。用管道,如ls | more
作业可以启动多个ls
,more多个进程。
例:使用vi编辑f1文件,然后使用【Ctrl+Z】组合键挂起vi,再切换到后台
[laiyu@localhost ~]$ vi
file2
【Ctrl+z】
[1]+ Stopped
vim file2
[laiyu@localhost ~]$ bg
1
[1]+ vim file2
&
[1]+ Stopped
vim file2
fg命令
方法:fg
[作业号]
功能:将后台作业切换到前台运行。若没有指定作业号,则将后台作业序列中的第一个作业切换到后台运行。
例子:将上例中的作业号为1的作业切换到前台继续编辑
[laiyu@localhost ~]$ fg
1
--管理进程与作业的Shell命令
jobs命令
方法:jobs
[选项]
功能:显示当前所有的作业
主要选项:
-p(process)
仅显示进程号
-l(list)
同时显示进程号和作业号
例子:显示所有的作业,一并显示其进程
[laiyu@localhost ~]$ vi
file2
[1]+ Stopped
vim file2
[laiyu@localhost ~]$ jobs
-l
[1]+ 3357
Stopped
vim file2
ps命令
方法:ps
[选项]
功能:显示进程的状态,无选项时显示当前用户在当前终端启动的进程
主要选项:
-a(all)
显示当前终端上所有的进程,包括其它用户的进程信息
-e
显示系统中所有的进程,包括其它用户进程和系统进程的信息
-l(list)
显示进程的详细信息,包括父进程号、进程优先级
-u(used)
显示进程的详细信息,包括CPU和内存的使用情况
-x
显示后台进程的信息[包括没有终端的进程信息]
-t
终端号
显示指定终端上的进程信息
例子:使用-l选项显示当前进程的详细信息
[laiyu@localhost ~]$ ps
-l
F S
UID
PID
PPID C
PRI NI ADDR
SZ WCHAN
TTY
TIME CMD
0 S
500
2870
2868
0
80 0
- 1310
-
pts/0
00:00:00 bash
0 T
500
3357
2870
0
80 0
- 2725
-
pts/0
00:00:00 vim
0 R
500
3359
2870
0
80 0
- 1216
-
pts/0
00:00:00 ps
说明:
主要输出项:
S(State)
进程状态,其中R(Running)表示运行状态,S(Suspended)表示休眠状态,T(Time
out)表示暂停或终止状态;Z表示僵死状态
UID(User ID)
进程启动者的用户ID
PID(Process ID)
进程号
PPID(Parents Process
ID)
父进程的进程号
NI(Nice)
进程的优先级
SZ(Size)
进程占用内存大小,以KB为单位
TTY(Terminal)
进程所在终端的终端号,其中桌面环境的终端窗口
TIME
进程已经运行的时间
CMD
启动该进程的Shell命令
例子:使用“u”选项显示当前进程的详细信息
[laiyu@localhost ~]$ ps
-u
Warning: bad syntax,
perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
USER
PID %CPU %MEM
VSZ RSS
TTY
STAT START TIME
COMMAND
laiyu
2870
0.0
0.0
5240 1724
pts/0
Ss
21:14 0:00
bash
laiyu
3357
0.0
0.0
10900 3196
pts/0
T
22:21 0:00
vim file2
laiyu
3362
0.0
0.0
4916 1064
pts/0
R+
22:22 0:00
ps -u
主要输出项:
%CPU
CPU的使用情况
%MEM(Memory)
内存的使用率
STATE(State)
进程的状态
START
进程的开始时间
例子:切换到其它终端,查看进程的详细信息
[laiyu@localhost ~]$ ps -l
-t tty1
F S
UID
PID
PPID C
PRI NI ADDR
SZ WCHAN
TTY
TIME CMD
4 S
0
2347
2345
5
80 0 -
14373 ?
tty1
00:03:44 Xorg
kill命令
方法:kill
[选项]
进程号
方法:kill
%
作业号
功能:终止正在运行的进程或作业。超级用户可以终止所有的进程。普通用户只能终止自己启动的进程
主要选项:
-9
当无选项的kill命令不能终止进程时,可以-9强制终止进程
例子:假设某进程的进程号为3357,终止此进程
[laiyu@localhost ~]$ ps
-u
Warning: bad syntax,
perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
USER
PID %CPU %MEM
VSZ RSS
TTY
STAT START TIME
COMMAND
laiyu
2870
0.0
0.0
5240 1724
pts/0
Ss
21:14 0:00
bash
laiyu
3357
0.0
0.0
10900 3196
pts/0
T
22:21 0:00
vim file2
laiyu
3365
0.0
0.0
4916 1048
pts/0
R+
22:23 0:00
ps -u
[laiyu@localhost ~]$ kill -
9 3357
bash: kill: : invalid
signal specification
[laiyu@localhost ~]$ kill
-9 3357
[laiyu@localhost ~]$ ps
-u
Warning: bad syntax,
perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
USER
PID %CPU %MEM
VSZ RSS
TTY
STAT START TIME
COMMAND
laiyu
2870
0.0
0.0
5240 1724
pts/0
Ss
21:14 0:00
bash
laiyu
3367
0.0
0.0
4916 1044
pts/0
R+
22:24 0:00
ps -u
[1]+ Killed
vim file2
nice命令
方法:nice
[-优先级值]
命令
功能:指定将启动的进程的优先级。不指定优先级时,将优先级设置为10.
[laiyu@localhost ~]$ nice
-5 ftp
nice: ftp: No such file or
directory
renice命令
方法:renice
优先级值
参数
修改运行中的进程的优先级,设置指定用户或组群的进程优先级。
主要参数:
-p(process)
进程号
修改指定进程的优先级
-u(user)
用户名
修改指定用户所启动进程的默认优先级
-g(group)
组群号
修改指定组群中所有用户的所启动进程的默认优先级
例子:将laiyu用户的进程优先级调高为5
[laiyu@localhost ~]$ renice
-5 -u laiyu
renice: 500: setpriority:
Permission denied
[laiyu@localhost ~]$
su
Password:
[root@localhost laiyu]#
renice -5 -u laiyu
500: old priority -5, new
priority -5
[root@localhost laiyu]#
renice 5 -u laiyu
500: old priority -5, new
priority 5
[root@localhost
laiyu]#