RAID阵列概述 • 廉价冗余磁盘阵列 – 通过硬件/软件技术,将多个较小/低速的磁盘整合成一个大磁盘 – 阵列的价值:提升I/O效率、硬件级别的数据冗余 – 不同RAID级别的功能、特性各不相同
################################################### 进程管理
程序:静态没有执行的代码,占用磁盘空间
进程:执行的代码放入内存中运行,占用内存、cpu
PID:编号,标识进程
父进程、子进程
####################################################
查看进程树 • pstree — Processes Tree – 格式:pstree [选项] [PID或用户名] • 常用命令选项 – -a:显示完整的命令行 – -p:列出对应PID编号
systemd:内核直接运行的第一个进程,PID永远为1
[root@svr7 ~]# pstree [root@svr7 ~]# pstree lisi bash───vim [root@svr7 ~]# pstree -p lisi bash(30712)───vim(30751) [root@svr7 ~]# pstree -ap lisi
#################################################
• ps aux 操作 – 列出正在运行的所有进程
• ps -elf 操作 – 列出正在运行的所有进程
#################################################
• top 交互式工具 – 格式: top [-d 刷新秒数]
按大写的P cpu排序 按大写的M 内存排序
#######################################################
• pgrep — Process Grep – 用途:pgrep [选项]... 查询条件
• 常用命令选项 – -l:输出进程名,而不仅仅是 PID – -U:检索指定用户的进程 – -t:检索指定终端的进程
[root@svr7 ~]# pgrep log [root@svr7 ~]# pgrep -l log
[root@svr7 ~]# pgrep -U lisi [root@svr7 ~]# pgrep -lU lisi [root@svr7 ~]# pstree -ap lisi
[root@svr7 ~]# who #查看正在登陆的用户信息 [root@svr7 ~]# pgrep -lU lisi [root@svr7 ~]# pgrep -lU lisi -t pts/2
######################################################## 进程的调度(前后台)
放入后台启动 – 在命令行末尾添加“&”符号,正在运行的状态放入后台 – Ctrl + z 组合键,暂停的状态放入后台
[root@svr7 ~]# sleep 800 & #将前台的进程,正在运行放入后台 [root@svr7 ~]# jobs #查看后台进程
[root@svr7 ~]# jobs -l #查看后台进程,并且加上PID [root@svr7 ~]# sleep 700 ^Z #按Ctrl+z可以暂停放入后台 [2]+ 已停止 sleep 700 [root@svr7 ~]# jobs -l [root@svr7 ~]# bg 2 #将后台进程编号为2的,继续在后台运行 [2]+ sleep 700 & [root@svr7 ~]# jobs -l [root@svr7 ~]# fg 1 #将后台的进程恢复到前台 sleep 800 ^C #按Ctrl+c结束进程 [root@svr7 ~]# fg 2 sleep 700 ^C #按Ctrl+c结束进程 ######################################################### 杀死进程
– kill [-9] PID... – killall [-9] 进程名...
[root@svr7 ~]# sleep 900 & [root@svr7 ~]# sleep 900 & [root@svr7 ~]# sleep 900 & [root@svr7 ~]# sleep 900 & [root@svr7 ~]# jobs -l [root@svr7 ~]# kill 1928 [root@svr7 ~]# jobs -l [root@svr7 ~]# killall sleep [root@svr7 ~]# jobs -l
[root@svr7 ~]# killall -9 -u lisi #强制踢出一个用户
######################################################### 日志管理
• 系统和程序的“日记本” – 记录系统、程序运行中发生的各种事件 – 通过查看日志,了解及排除故障 – 信息安全控制的“依据
主要用途 /var/log/messages 记录内核消息、各种服务的公共消息 /var/log/dmesg 记录系统启动过程的各种消息 /var/log/cron 记录与cron计划任务相关的消息 /var/log/maillog 记录邮件收发相关的消息 /var/log/secure 记录与访问限制相关的安全消息
###################################################### tailf 实时跟踪 新增日值消息
####################################################### • users、who、w 命令 – 查看已登录的用户信息,详细度不同
• last、lastb 命令 – 查看最近登录成功/失败的用户信息
[root@svr7 ~]# users [root@svr7 ~]# who [root@svr7 ~]# w
[root@svr7 ~]# last -2 #最近两次登录成功 [root@svr7 ~]# lastb -2 #最近两次登录失败
#################################################### Linux内核定义的事件紧急程度
– 分为 0~7 共8种优先级别 – 其数值越小,表示对应事件越紧急/重要
0 EMERG(紧急) 会导致主机系统不可用的情况 1 ALERT(警告) 必须马上采取措施解决的问题 2 CRIT(严重) 比较严重的情况 3 ERR(错误) 运行出现错误 4 WARNING(提醒) 可能会影响系统功能的事件 5 NOTICE(注意) 不会影响系统但值得注意 6 INFO(信息) 一般信息 7 DEBUG(调试) 程序或系统调试信息等
• 提取由 systemd-journal 服务搜集的日志 • 常见用法 – journalctl | grep 关键词 – journalctl -u 服务名 [-p 优先级] – journalctl -n 消息条数 – journalctl --since="yyyy-mm-dd HH:MM:SS" -- until="yyyy-mm-dd HH:MM:SS"
[root@svr7 ~]# yum -y install httpd [root@svr7 ~]# systemctl restart httpd
[root@svr7 ~]# journalctl -u httpd -p 6
####################################################### systemctl控制
systemd • 一个更高效的系统&服务管理器 – 开机服务并行启动,各系统服务间的精确依赖 – 服务目录:/lib/systemd/system/
• 控制服务状态 – systemctl start|stop|restart 服务名...
• 查看服务的运行状态 – systemctl status|is-active 服务名...
[root@svr7 ~]# systemctl enable httpd #设置随机自起 [root@svr7 ~]# systemctl is-enabled httpd #查看是否随机自起 [root@svr7 ~]# systemctl disable httpd #设置随机不自起 [root@svr7 ~]# systemctl is-enabled httpd
#########################################################
graphical.target 图形模式 multi-user.target 文本模式
当前切换图形模式 [root@svr7 ~]# systemctl isolate graphical.target
每次开机都进入的模式,默认模式的修改 [root@svr7 ~]# systemctl get-default
[root@svr7 ~]# systemctl set-default graphical.target [root@svr7 ~]# systemctl get-default [root@svr7 ~]# reboot
######################################################
wc: 统计 [root@svr7 ~]# wc -l /etc/passwd #统计行数
请统计/etc/以“.conf” 结尾的文件有多少个?(不包括子目录) [root@svr7 ~]# ls -l /etc/*.conf | wc -l
请统计/etc/以“.conf” 结尾的文件有多少个?(包括子目录) [root@svr7 ~]# find /etc -name "*.conf" | wc -l
请统计/etc/以“.conf” 结尾的文件有多少个? [root@svr7 ~]# ls -l /etc/.conf | wc -l [root@svr7 ~]# find /etc -name ".conf" | wc -l
#################################################### find 查找:
-group :查找所属组
-mtime:按照时间去查找,过去时间
+10 :十天之前
-10 :十天之内
#####################################################