lesson - 6 课程笔记
作用:
显示磁盘分区上的可使用的磁盘空间, 默认显示单位为kb . 可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间的等信息。
选项:
-a :包含全部的文件系统-h :以可读性较高的方式显示信息 单位显示G,M,KB
-H:与-h 参数相同, 但在计算时以1000Bytes 为换算单位, 不是1024Bytes
-i: 显示inode的信息
-k:kilobytes制定区块大小为1024字节
-l:仅显示本地端的文件系统
-m:megabytes 制定区块大小为1048576字节 兆字节
-P --portability 使用POSIX的输出格式
-t --type:仅显示指定文件系统类型的磁盘信息
-T --print -type:显示文件系统的类型
-x --exclude-type:不要显示制定文件系统类型的磁盘信息
--block-size :以指定区块大小显示区块数目
--sync :取得磁盘使用信息前,先执行sync 指令
--no-sync: 取得磁盘使用信息前, 不执行sync 指令。此为预设值
/dev/shm: 实际上是内存虚拟化出来的一个虚拟的文件系统。 文件速度快并不重要的可以写入该目录里
二、du
du : show disk usage作用:统计目录或文件所占用磁盘空间的大小。
语法:du 参数 选项参数:-a 为每个制定文件显示磁盘使用情况, 或者为目录中每个文件显示各自磁盘使用情况-b 显示目录或文件大小时, 以byte 为单位-c 除了显示目录或文件的大小外, 同时也显示所有目录和文件的总和-D deferenc -args 显示指定符号链接的源文件大小-h humanreadable 以K,M,G 为单位,提高信息的可读性-H 以K,M,G为单位, 以1000 换算而不是1024-k kilobytes-l count-lines 重复计算硬件链接的文件-L 显示选项中符号链接的源文件大小-m megabytes 为单位-s summarize 显示当前目录大小-S 显示每个目录的大小,不包含子目录-x one-file-xystem 以一开始处理的文件系统为准, 其他不同目录略过-X exclude-from 制定目录或文件实例:
du /home/linux :显示一个目录树以及每个子目录的磁盘使用情况du -k /home/linux :以KB 为单位显示一个目录以及子目录的磁盘使用情况、du -m /home/linux :以MB 为单位显示一个目录以及子目录的磁盘使用情况du -g /home/linux :以GB 为单位显示一个目录以及子目录的磁盘使用情况du -h . :查看当前目录下所有的目录以及子目录的大小du -h --max-depth=0 user: 查看第n层目录,即0不深入到子目录du -h --exculde='*xyz*' :列出当前目录下目录名不包括xyz字符串的目录的大小du -sh user :查看当前目录下user目录的大小du -ah user :列出user目录以及子目录下所有目录和文件的大小du -0 user :没列出一个目录的信息,不换行直接输出下一个目录的信息du -s user :只显示一个目录树的全部磁盘使用情况
三、fdisk
作用: 查看磁盘实体使用情况,也可对硬盘分区。
选项:
-b 分区大小
-l 列出指定的外围设备的分区表状况
-s 分区编号, 将指定的分区大小输出到标准输出上, 单位为区块
-u 搭配-l 显示,会用分区数目取代柱面数目,来表示每个分区的起始地址
-v 显示版本信息
实例:
*选择要进行操作的磁盘:fdisk /dev/sdb*输入m 列出可以执行的命令:command (m for help) :m
a toggle a bottable flagb edit bsd disklabelc toggle the dos compatibility flagd delete a partitionl list known partition typem print this menun add a new partitiono create a new empty DOS partition tablep print the partition tableq quit without saving changess create a partition's systemt change a partition's system idu change display /entry unitsv verify the partition tablew write table to disk and exitx extra functionality (experts only)*输入p 列出磁盘目前的分区情况:
*输入d 选择分区,删除现有分区
*查看分区情况,确认分区已删除 print
*输入n 建立新的磁盘分区
e extendedp primary partition (1-4)p //建立主分区1 //分区号1 //分区起始位置默认1100 // 分区结束位置+100M //分区结束位置,以M为单位。*确认分区成功: p
*创建扩展分区; e
*在扩展分区中创建逻辑分区: l logical
主分区和扩展分区的磁盘号位1-4,也就是说最多有4个主分区或者扩展分区,逻辑分区开始的磁盘号为5,因此在这个实验中试没有sdb4的.*最后保存分区操作: w
*分区格式化后使用磁盘:
在sdb1 建立ext2 分区:mkfs.ext2 /dev/sdb1
在sdb6 建立ext3分区:
mkfs.ext3 /dev/sdb6
格式化分区:
mke2fs -t ext4 -b 4096 -m 0.1 /dev/sdb1 -L aming
5.00% reserved for the super user : 保留空间为超级用户
*建立两个目录/oracle /web 将新建好的两个分区挂载到系统
mkdir /oracle
mkdir /web
mount /dev/sdb1 /oracle
mount /dev/sdb6 /web
重新挂载只读,noatime
mount -oremount,ro noatime /dev/sdb6 /web
/dev/sdb1 1019M 35M 984M 4% /oarcle
*取消挂载
unmount /oracle
unmount /web
*重新根据配置文件挂载
mount -a
* 检查分区, 可能会丢失数据
fsck -y /dev/sdb1
*查看分区挂载情况
df -h
* 如果需要每次开机自动挂载则需修改/etc/fstab文件。
/dev/sdb1 /oracle ext2 defaults 0备份日志 0检测磁盘分区坏道
/dev/sdb6 /web ext3 defaults 0 0
/etc/rc.d/rc.local
四、dd
dd 是一个Unix和类Unix系统中的命令, 主要功能为转换和赋值文件。在Unix和类Unix系统上, 硬件的设备驱动(如硬盘) 和特殊设备文件(如/dev/zero, /dev/random) 就像普通文件一样, 出现在文件系统中, 只要在各自的驱动程序中实现了对应的功能, dd 也可以读取或者写入这些文件。 dd 也可以用在备份硬件的引导扇区, 获取一定数量的随机数据等等的一些任务。 dd 程序也可以再复制时处理数据。 例如转换字节序, 或在ASCII和EBXCDIC编码间转换。
用法:
dd 的命令行语句与其他的程序不同,因为它的命令选项格式为 选项=值, dd 默认从标准输入中读取,并写到标准输出中, 可以使用选择if (input file ) 和of (output file) 。
块的概念:
块是衡量一次读取,写入和转换字节的单位, 命令行选项可以为输入/读取(ibs) 和输出/写入(obs)指定一个不同的块大小, 选项会覆盖ibs 和obs 选项, 输入和输出的默认块大小为512字节(传统的磁盘块以及POSIX规定的块的大小) 复制的count选项。 读取的(skip)选项和 写入(seek)选项都是以块为单位的。 转换操作也瘦“转换块大小(cbs)”影响。w
表示2倍,b
表示512倍,k
表示1024倍,M
表示1024 × 1024倍,G
表示1024 × 1024 × 1024倍
用途:
*数据转换:dd 可以在文件、设备、分区和卷之间复制数据。数据可以从其中任何地方输入和输出;但输出到分区时有重要差异。此外在传输过程中,数据可以用conv 选项以适应介质。 如何最后一个块有意外长度,试图使用cp 复制整个磁盘可能会遗漏掉,dd 却可能成功。源文件和目标磁盘应具有相同的大小。dd if =/dev/sr0 of=myCD.iso bs =2048 conv =noerror, sync // 从CD-ROM中创建ISO磁盘镜像dd if =/dev/sda2 of =/dev/sdb2 bs=4096 conv=noerror //克隆一个分区到另一个dd if =/dev/ad0 of =/dev/ad1 bs=1M conv noerror //克隆硬盘ad0到ad1noerror 如果发生错误,程序继续进行, sync 填充每个块到指定字节*备份和恢复主引导记录: 可以修复主引导记录。主引导记录可以转换到文件,或从总转移出来。dd if =/dev/fd0 of =MBRboot.img bs=512 count=2 //要复制软盘的前两个扇区:dd if =/dev/sda of =MBR.img bs =512 count =1 //创建整个x86主引导记录的镜像(包括MS-DOS分区表和MBR字节)dd if = /dev/sda of =MBR_boot.img bs=446 count =1 //创建仅含主引导记录代码的镜像*数据修改:dd可以直接修改数据dd if=/dev/zero of=path/to/file bs=512 count=1 conv=notrunc //空字节覆盖文件的前512 字节,notrunc 表示不缩减输出文件, 如果存在文件,只修改相应字节的数据,如果不存在,则创建512字节的文件。当dd的输出文件为块设备时,无效果。dd if=/dev/sdb2 of=partition.img bs=4096 counv=noerror //在不同的分区中复制磁盘分区到磁盘映像文件中。*磁盘擦除: 出于安全方面考虑,有时需要擦除丢弃的磁盘。dd if=dev/sda // 检查驱动器上是否有数据,并将其输出到标准输出dd if=/dev/zero of =/dev/sda bs=4k //用零擦除磁盘*驱动器性能基准测试: 对驱动器进行基准测试, 使用1024字节块分析连续系统读取和写入的性能:dd if =/dev/zero bs=1024 count=1000000 of=file_1GBdd if =file_1GB of=/dev/null bs=1024*用随机数据生成文件dd if=/dev/urandom of=myrandom bs=100 count=1 //使用内核随机数驱动,用100 个随机字节生成文件*将文件转换为大写dd if =filename of=filename1 conv=ucase*创建任意大小的空文件dd if=/dev/zero of=mytestfile.out bs=1 seek =1G //创建1G的稀疏文件,或增加现有文件的大小。
参数:
if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写 入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs)。
cbs = bytes 一次转换bytes字节。
count = blocks 只拷贝输入的blocks块。
conv = ASCII 把EBCDIC码转换为ASCII码。
conv = ebcdic 把ASCII码转换为EBCDIC码。
conv = ibm 把ASCII码转换为alternate EBCDIC码。
conv = blick 把变动位转换成固定字符。
conv = ublock 把固定们转换成变动位
conv = ucase 把字母由小写变为大写。
conv = lcase 把字母由大写变为小写。
conv = notrunc 不截短输出文件。
conv = swab 交换每一对输入字节。
conv = noerror 出错时不停止处理。
conv = sync 把每个输入记录的大小都调到ibs的大小(用ibs填充)。
lesson - 6 课程笔记的更多相关文章
- lesson - 12 课程笔记
一.w 命令 作用: 用于显示已经登录系统的用户列表, 并显示用户正在执行的指令. 执行这个命令可得知目前登入系统的用户有哪些人, 以及他们正在执行的程序. 单独执行w 命令会显示所有的用户, 您也 ...
- lesson - 11 课程笔记
一.sed 作用: sed 是一种流编辑器,它是文本处理中非常重要的工具, 能够完美的配合正则表达式使用.处理时,把当前处理的行存储在临时缓冲区中, 称为“模式空间(pattern space)”, ...
- lesson - 9 课程笔记
一. yum 作用: yum 命令是在Fedora 和RedHat 以及SUSE 中基于rpm 的软件包管理器,它可以使系统管理人员交互和自动 ...
- lesson - 8 课程笔记 tar / gzip /bzip2 / xz /
作用:为linux的文件和目录创建档案,也可以在档案中改变文件,或者向档案中加入新的文件即用来压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的 语法:tar[必要参数][选择参数][ ...
- lesson - 7 课程笔记 vim
vim :修改文件 模式: 默认进来是一般模式.i 编辑模式.esc 退出编辑 .shift+: 底行模式 参数: w: write/q:quit/! force 编辑模式: /a:光标之后插入内容 ...
- lesson - 10 课程笔记
CTRL+C CTRL+D :前者用于结束一个程序,后者用于结束终端输入. --符号 *:匹配任意长度的任意字符 ?:匹配任意一个字符 #: shell 中表注释 \: 脱意符号 []:任意属于字符组 ...
- lesson - 5 课程笔记 which/ type / whereis /locate /pwd / etc/passwd/ shadow/ group / gshadow /useradd /usermod /userdel /passwd / su sudo
一.which 作用: which 命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录, which 命令会在环境变量$PATH 设置的目录里查找符合条件的文件.也 ...
- 《Neural Networks and Deep Learning》课程笔记
Lesson 1 Neural Network and Deep Learning 这篇文章其实是 Coursera 上吴恩达老师的深度学习专业课程的第一门课程的课程笔记. 参考了其他人的笔记继续归纳 ...
- Linux内核分析课程笔记(一)
linux内核分析课程笔记(一) 冯诺依曼体系结构 冯诺依曼体系结构实际上就是存储程序计算机. 从两个层面来讲: 从硬件的角度来看,冯诺依曼体系结构逻辑上可以抽象成CPU和内存,通过总线相连.CPU上 ...
随机推荐
- ctags-vim代码间快速跳转
ctags-vim代码间快速跳转 1.说明 在Linux环境下使用vim进行驱动程序编写和维护的时候,会经常需要调用Linux内核的函数或宏定义,在驱动程序和kernel代码之间频繁跳转是件很繁琐的事 ...
- 计算出前N项的数据
#include<iostream> #include<algorithm> #include<numeric> using namespace std; ; in ...
- 简单的Spring Web工程跳转且传参Demo
jdbc.properties jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://192.168.1.136:3306/ ...
- python 正则的使用 —— 编写一个简易的计算器
在 Alex 的博客上看到的对正则这一章节作业是编写一个计算器,要求能计算出下面的算式. 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 + ...
- Uva 12436 Rip Van Winkle's Code
Rip Van Winkle was fed up with everything except programming. One day he found a problem whichrequir ...
- linux命令的排列、替换与别名
命令的排列; 1.使用";" 命令语法: 命令1;命令2 当运行该命令时,无论命令1是否出错.接下来就运行命令2 2.使用"&&" 命令语法:命 ...
- Java中string 创建对象时 “”和null的差别
null和""的差别 问题一: null和""的差别 String s=null; string.trim()就会抛出为空的exception String s ...
- File attachment or query results size exceeds allowable value of 1000000 bytes.
今天早晨,收到了作业执行失败的邮件(前几天还能正常执行该作业.不知为何今天出错) 邮件显示,作业的第三个步骤报错. step3内容: msdb.dbo.sp_send_dbmail @prof ...
- 原来你是这样的JAVA[01]-基础一瞥
1.Java是什么呢? Java不仅是一门语言,而且是一个完整的平台,有一个庞大的库,其中包含了很多可重用的代码和一个提供安全性.跨操作系统的可移植性以及自动垃圾收集等服务的执行环境. 2.JDK 和 ...
- Lua的数学函数
ua5.1中数学库的所有函数如下表: math.pi 为圆周率常量 = 3.14159265358979323846 函数名 函数功能 示例 示例结果 abs 取绝对值 math.abs(-15) ...