Linux(四)——CROND和磁盘分区与挂载

CROND 任务调度

crond是linux系统中用来定期执行命令或者指定程序任务的一种服务或者软件。

任务调度分为系统工作用户工作。系统工作是指linux系统中某些重要的工作必须周而复始地执行,比如病毒扫描。而用户工作是指个别用户希望执行的某些程序,比如数据的备份等。

  • 语法:crontab [选项]

  • 常用选项:

选项解释
-e编辑定时任务
-r删除当前用户的所有crontab任务
-l查询当前用户的所有crontab任务

linux中设置任务调度两种方法:/etc/crontab文件和crontab -e命令。修改/etc/crontab这种方法只有root用户能用,功能更加强大和方便。普通用户使用crontab -e命令即可。

  • 快速入门
    设置个人任务调度。执行crontab –e命令。输入任务到调度文件,如: */1 * * * * ls –l /etc/ >> /tmp/to.txt 意思说每小时的每分钟执行ls –l /etc/ >> /tmp/to.txt命令。
  1. 输入crontab -e进入编辑页面(vim模式)
  2. 按 i 进入编辑模式,输入/1 * * * * ls –l /etc/ >> /tmp/to.txt,Esc:wq退出保存。
  3. 任务调度完成。可以进入/tmp目录查看文件。
  • 参数细节说明
    首先要明确,crontab -e 进入编辑模式后,关键是对与定时的编辑,上述的*/1 * * * *代表的意思就是每分钟执行一次后面的命令脚本(脚本要提前写好)。从左到右分别代表分钟,小时,日,月,周。注意,日和周最好不要同时出现,它们都是精确到日的,很容易引起混乱。
    在这里插入图片描述
    还有一些特殊符号也是为了编写定时任务而制定的:
    在这里插入图片描述
    举几个例子:
    在这里插入图片描述

  • 案例

案例1:每隔1分钟,就将当前的日期信息,追加到 /tmp/mydate 文件中

  1. 新建/home/doDate.sh文件,写入date >> /tmp/mydate,退出保存
  2. 修改doDate.sh文件使其拥有可执行权限:chmod 770 /home/doDate.sh
  3. 输入crontab -e 输入 */1 * * * * /home/doDate.sh,退出保存

案例2:每隔1分钟, 将当前日期和日历都追加到 /home/mycal 文件中

  1. 参照上个案例,在shell文件中修改。

案例3: 每天凌晨2:00 将mysql数据库 testdb ,备份到文件中。

  1. 参照上个案例,shell中写/usr/local/mysql/bin/mysqldump -u root -proot testdb > /tmp/mydb.bak
  2. 修改文件权限,拥有x
  3. 输入crontab -e 输入 0 2 * * * /home/doMysql.sh,退出保存。

案例做完之后记得执行crond -r 删除调度任务。service crond restart重启调度任务。

Linux磁盘分区,挂载

磁盘分区基础知识

磁盘分区方式主要有两种:

  • mbr分区:
    1.最多支持四个主分区
    2.系统只能安装在主分区
    3.扩展分区要占一个主分区
    4.MBR最大只支持2TB,但拥有最好的兼容性
  • gtp分区:
    1.支持无限多个主分区(但操作系统可能限制,比如 windows下最多128个分区)
    2.最大支持18EB的大容量(1EB=1024 PB, 1PB=1024 TB )
    3.windows7 64位以后支持gtp

相对而言,gtp分区更加先进强大,也是现在主流的磁盘分区方式,它支持无限分区,并且支持更大的容量。

对于linux来说,无论有几个分区,分给哪个目录使用,归根到底都属于一个根目录。linux的根目录是一个独立且唯一的文件结构,每个分区只能组成整个文件系统的一部分。

对于存储设备,linux使用了一种“载入”的处理方法,即将存储设备和一个目录联系起来,通过这个目录去访问存储设备内部,这个过程称为挂载。相反的过程叫做卸载

linux 硬盘分为IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。

驱动器标识符为四位_ _ _ _。前两位表示分区所在设备的类型,hd表示IDE硬盘,sd表示SCSI硬盘。第三位表示盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘……),第四位表示分区,用数组1,2,3……表示。比如:hda3就表示第一块(a)IDE硬盘(hd)上的第三个主分区或扩展分区。

查看分区和挂载情况 lsblk

这个命令有些长,list block,可以简记为‘老师不离开’:
在这里插入图片描述
NAME就是驱动器标识符,sr0表示光驱。加上-f选项可以列出文件系统信息。
在这里插入图片描述
使用这个命令就可以详细显示当前电脑的磁盘分区情况,可以看到,这台电脑上只有一块磁盘sda,两个主分区sda1和sda2,sda2下有有两个逻辑分区,列表的最后一项也可以看到分区的挂载点。UUID是不重复的40位字符,是分区的唯一标识。FSTYPE是分区类型。

为linux添加硬盘

在lliux下添加一块磁盘并不容易,大概有一下几个步骤:

  1. 添加硬盘
    注意,重启系统才能识别新硬盘。新装入的硬盘一般会被 /dev 目录识别,并为其自动添加标识符,标识符的添加规则参照上面。比如我之前只有一块硬盘是sda,那么新添加的硬盘就叫sdb。重启后使用lsblk -f 命令查看详情。也可以切换到/dev下查看:
    在这里插入图片描述

  2. 分区
    fdisk 是linux的磁盘分区表工具,使用命令fdisk 装置名称 就可以进入操作页面。分区命令fdisk /dev/sdb,输入后进入:
    在这里插入图片描述
    按下 n新增一块分区:
    在这里插入图片描述
    按p表示新增主分区,e表示扩展分区。按p:
    在这里插入图片描述
    之后分别是分区号,以及使用空间的设置,一路回车使用默认即可。最后按下w写入分区然后退出,分区结束。
    在这里插入图片描述

  3. 格式化
    磁盘分割完毕后自然就是要进行文件系统的格式化,格式化的命令非常的简单,使用 mkfs(make filesystem) 命令。
    语法是:mkfs [-t 文件系统格式] 装置文件名。我们上面使用了默认命令,只分了一个区,那么标识符就是 sdb1,不信可以lsblk -f 查看:
    在这里插入图片描述
    输入mkfs -t ext4 /dev/sdb1格式化,ext4表示第四代扩展文件系统,不要更改:
    在这里插入图片描述

  4. 挂载
    格式化之后就可以将硬盘挂载到某个目录上,之后就可以进行操作了。挂载分为临时挂载和永久挂载。
    使用命令挂载:mount 设备 挂载目录 ,对应的过程叫卸载,使用umount 设备 挂载目录即可。仅本次开机有效,机器重启后会失效
    修改文件挂载:这种修改方式为永久挂载,开机会自动执行,不需要我们再输入命令挂载。使用vim /etc/fstab对文件进行编辑实现挂载,添加完成后 执行mount –a即刻生效。加入我们把这个设备要挂载到/home/newdisk目录下,就要先创建这个目录。
    在这里插入图片描述
    如图更改文件即可,退出保存后执行mount -a,大功告成。通过lsblk -f查看,可以发现已经成功挂载上了:
    在这里插入图片描述

Linux磁盘管理

Linux磁盘管理常用三个命令为df、du和fdisk。

df [选项] [目录]:检查整个文件系统的磁盘空间占用情况

选项与参数:

-a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
-k :以 KBytes 的容量显示各文件系统;
-m :以 MBytes 的容量显示各文件系统;
-h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
-H :以 M=1000K 取代 M=1024K 的进位方式;
-T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
-i :不用硬盘容量,而以 inode 的数量来显示

du:Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看

选项与参数:

-a :列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。
-h :以人们较易读的容量格式 (G/M) 显示;
-s :列出总量而已,而不列出每个各别的目录占用容量;
-S :不包括子目录下的总计,与 -s 有点差别。
-k :以 KBytes 列出容量显示;
-m :以 MBytes 列出容量显示;
-c :添加汇总值

示例:查询 /opt 目录的磁盘占用情况,深度为1
du -ach --max-depth=1 /opt

实际中比较常用的查看命令:

  1. 统计/home文件夹下文件的个数 ls -l /home | grep "^-" | wc -l

解释一下,这里使用了两个管道符,ls -l /home 先查询,再用 grep 过滤, "^-"表示以-打头(即文件),过滤后再统计,即wc -l

  1. 统计/home文件夹下目录的个数ls -l /home | grep "^d" | wc -l

-改为d即可。

  1. 统计/home文件夹下文件的个数,包括子文件夹里的ls -lR /home | grep "^-" | wc -l

加上-R选项。

  1. 统计文件夹下目录的个数,包括子文件夹里的ls -lR /home | grep "^d" | wc -l

  2. 以树状显示目录结构tree

这里要先下载yum install tree,ubantu使用apt-get tree

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值