Linux初学—Linux系统中的磁盘与进程管理
一、磁盘和文件系统管理
1、基本磁盘分区
磁盘分区工具
fdisk命令:查看或管理磁盘分区
fdisk -l [磁盘设备]
或
fdisk [磁盘设备]
交互模式中的常用指令:
m :查看操作指令的帮助信息
t:变更分区类型
p :列表查看分区信息
w :保存分区设置并退出
n :新建分区
q :放弃分区设置并退出
d :删除分区
创建文件系统:
mkfs命令:Make Filesystem,创建文件系统
mkfs -t 文件系统类型 分区设备
注:文件系统类型:作为其他几个分区命令的前端工具,通过"-t .."选项指定文件系统类型
例:
[rootdlocalhost ~]# ls / sbin/mkfs*
/sbin/mkfs.cramfs /sbin/mkfs.minix
/sbin/mkfs.btrfs /sbin/mkfs .ext2 /sbin/mkfs.ext4 /sbin/mkfs.xfs
[rootdlocalhost ~]# mkfs -t xfs /dev/sdb1
增加文件交换分区
mkswap命令:创建交换文件系统
语法:mkswap分区设备
挂载与卸载
mount命令:挂载文件系统、ISO镜像到指定文
mount [-t类型]存储设备 挂载点目录
mount -o loop Iso镜像文件 挂载点目录
umount命令:卸载已挂载的文件系统
umount 存储设备位置
umount 挂载点目录
查看分区空间使用情况
df命令
语法:df [选项] [分区文件]
2、LVM和磁盘配额
LVM:Logical Volume Manager ,即逻辑卷管理,动态调整磁盘容量,从而提高磁盘管理的灵活性。需要注意的是/boot分区用于存放引导文件,不能基于LVM创建图形界面管理工具。
LVM机制的基本概念:PV(物理卷)、VG(卷组)、LV(逻辑卷)
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
---|---|---|---|
scan扫描 | pvscan | vgscan | lvscan |
create建立 | pvcreate | vgcreate | lvcreate |
display显示 | pvdisplay | vgdisplay | lvdisplay |
remove删除 | pvremove | vgremove | lvremove |
extend扩展 | vgextend | lvextend | |
reduce减少 | vgreduce | lvreduce |
主要命令:
pvcreate 设备名1 [设备名2]
vgcreate 卷组名 物理卷名1 物理卷名2
Ivcreate -L 容量大小 -n 逻辑卷名 卷组名
vgextend 卷组名 物理卷名1
lvextend -L +大小 /dev/卷组名/逻辑卷名
resize2fs 挂载点
vgdisplay
磁盘配额概述
实现磁盘限额的条件:需要Linux内核支持;安装xfsprogs与quota软件包
Linux磁盘限额的特点:作用范围:针对指定的文件系统(分区);限制对象:用户帐号、组帐号
限制类型 | 限制类型 |
---|---|
磁盘容量(默认单位为KB) | 软限制 |
文件数量 | 硬限制 |
检测磁盘配额并创建配额文件:使用quotacheck命令创建配额文件
语法:
-u、-g:检测用户、组配额
-C:创建配额数据文件
-V :显示执行过程信息
-a :检测所有可用的分区
编辑用户和组帐号的配额设置:使用edquota命令编辑配额设置
语法:edquota -U 用户名
edquota -g 组名
启用、关闭文件系统的配额功能:使用quotaon、quotaoff 命令
查看配额使用情况:侧重用户、组帐号角度:使用quota命令
●quota -u用户名
●quota -g组名
侧重文件系统角度:使用repquota
3、进程和计划任务管理
程序和进程的关系
ps命令:查看静态的进程统计信息
进程:在CPU及内存中运行的程序代码
注:每个进程可以创建一个或多个进程
程序:保存在硬盘、光盘等介质中的可执行代码和数据静态保存的代码
[root@localhost~]# ps -elf
按照某种排序输出进程信息
按照内存占用量降序排列:[root@localhost ~]# ps aux -sort-=-rss
按照cpu占用量降序排列:[root@localhost ~]# ps aux --sort= -%cpu
top命令:查看动态的进程排名信息
[root@localhost ~]# top
pgrep命令:根据特定条件查询进程PID信息
常用命令选项:
-l:显示进程名
-U:指定特定用户
-t:指定终端
pstree命令:以树形结构列出进程信息
常用命令选项:
-a:显示完整信息
-u:列出对应用户名
-p:列出对应PID号
进程的启动方式
手工启动:前台启动:用户输入命令,直接执行程序
后台启动:在命令行尾加入“&"符号
例:[root@localhost ~]# cp /dev/cdrom mycd.iso &
[1] 28454
调度启动
使用at命令,设置一次性计划任务
使用crontab命令,设置周期性计划任务
进程的前后台调度
Ctrl+Z组合键:将当前进程挂起,即调入后台并停止执行
jobs命令:查看处于后台的任务列表
fg命令(bg命令):将后台进程恢复到前台运行,可指定任务序号
终止进程的运行
CtrI+C组合键:断正在执行的命令
kill、killall 命令
kill用于终止指定PID号的进程
killall用于终止指定名称的所有进程
-9选项用于强制终止
pkill命令:根据特定条件终止相应的进程
常用命令选项
●-U :根据进程所属的用户名终止相应进程
●-t: 根据进程所在的终端终止相应进程
计划任务管理
at命令:一次性计划任务
例:at [HH:MM] yyy-mm-dd]
crontab命令:按照预先设置的时间周期(分钟、小时、天… )重复执行用户指定的命令操作,属于周期性计划任务
主要设置文件:
全局配置文件,位于文件: /etc/crontab
系统默认的设置,位于目录: /etc/cron.*/
用户定义的设置,位于文件: /var/spool/cron/用户名
管理cron计划任务:
编辑计划任务:crontab -e [-u 用户名]
查看计划任务:crontab -1 [-u 用户名]
删除计划任务:crontab -e [-u用户名]
注:
root用户可以管理指定用户的计划任务
普通用户只能管理自己的计划任务
时间数值的特殊表示方法:
*表示该范围内的任意时间
,表示间隔的多个不连续时间点
-表示一个连续的时间范围
/表示指定间隔的时间频率
应用案例
0 17 * * 1-5 周一到周五每天17:00
30 8 * * 1,3,5 每周一、三、五的8点30分
0 8-18/2 * * * 8点到18点之间每2小时
0 * */3 * * 每3天
示例 ( root用户):
每天早上7:50自动开启sshd服务,22点50时关闭
每隔5天清空一-次FTP服务器公共目录/var/ftp/pub
每周六的7:30时,重新启动httpd服务
每周一、三、五的17:30时,打包备份/etc/httpd目录
[root@localhost root]# crontab -e
50 7 * * * /sbin/service sshd start
50 22* * * /sbin/service sshd stop
0 0 */5 * * /bin/rm -rf /var/ftp/pub/*
30 7 * * * 6 /sbin/service httpd restart
30 17 * * 1,3,5 /bin/tar jcf httpdconf.tar.bz2 /etc/httpd/