文件系统命令(十六)

文件系统命令:du,df,fdisk,parted,blkid,lsblk

16.1.du

功能:估算文件空间使用情况

语法:

du [OPTION]... [FILE]...

du [OPTION]... --files0-from=F

常用选项:

-a或-all  递归指定目录或多个目录中所有文件的统计结果

-b或-bytes  以bytes为单位显示

-c–total  产生一个总大小,除了显示目录和文件的大小外,同时还显示所有目录或文件的总和

-h  人性化显示(K,M,G)

-k  单位KB显示

-m  单位MB显示

-s  只显示总大小,不含子文件

--max-depth=<目录层数>,超过层数的目录忽略

--exclude=file 排除文件或目录

--time  显示大小和创建时间

示例:

[[email protected] scripts]# du  -sh /etc   #查看etc目录大小
28M/etc
[[email protected] tmp]# du -sh /tmp
13G/tmp
[[email protected] tmp]# du -sh --exclude=test.12 /tmp  #排除test.12文件查看tmp目录大小
1.2M/tmp
[[email protected] tmp]# du -sh --time /tmp
13G    2017-06-20 11:07    /tmp
[[email protected] tmp]# du -ah --max-depth=1 /etc/  #选择层数查看,不能使用s,因为s是不显示子目录和文件的
0/etc/grub.conf
116K/etc/lvm
8.0K/etc/xinetd.d
16K/etc/gnome-vfs-2.0
48K/etc/polkit-1
28K/etc/iproute2

16.2.df

功能:报告文件系统磁盘空间使用情况

语法:df [OPTION]... [FILE]...

常用选项:

-a  显示所有文件系统的磁盘使用情况,包含虚拟文件系统及伪文件系统

-h 人性化显示

-i  显示block使用的inode信息

-k  KB显示

-P  使用POSIX格式输出

-t  输出指定文件系统类型的磁盘使用情况

-x 列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反)

-T  打印文件系统类型

示例:

[[email protected] ~]# df -ah  #查看所有文件系统磁盘使用情况
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       18G   14G  3.0G  82% /
proc                     0     0     0    - /proc
sysfs                    0     0     0    - /sys
devpts                   0     0     0    - /dev/pts
tmpfs                 491M     0  491M   0% /dev/shm
/dev/sda1             477M   28M  425M   6% /boot
none                     0     0     0    - /proc/sys/fs/binfmt_misc
/dev/mapper/VolGroup-lv01
                      4.8G   19M  4.6G   1% /data

[[email protected] ~]# df -i   #打印inode号
Filesystem            Inodes IUsed   IFree IUse% Mounted on
/dev/mapper/VolGroup-lv_root
                     1152816 58106 1094710    6% /
tmpfs                 125543     1  125542    1% /dev/shm
/dev/sda1             128016    38  127978    1% /boot
/dev/mapper/VolGroup-lv01
                      327680    10  327670    1% /data

[[email protected] ~]# df -k  #以kb为单位打印
Filesystem           1K-blocks     Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root
                      18003272 13974776   3107308  82% /
tmpfs                   502172        0    502172   0% /dev/shm
/dev/sda1               487652    27678    434374   6% /boot
/dev/mapper/VolGroup-lv01
                       5029504    19236   4748124   1% /data

[[email protected] ~]# df -Ph  #使用posix格式输出,整齐多了
Filesystem                    Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root   18G   14G  3.0G  82% /
tmpfs                         491M     0  491M   0% /dev/shm
/dev/sda1                     477M   28M  425M   6% /boot
/dev/mapper/VolGroup-lv01     4.8G   19M  4.6G   1% /data
[[email protected] ~]# df -Th
Filesystem           Type   Size  Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root   #打印文件系统类型
                     ext4    18G   14G  3.0G  82% /
tmpfs                tmpfs  491M     0  491M   0% /dev/shm
/dev/sda1            ext4   477M   28M  425M   6% /boot
/dev/mapper/VolGroup-lv01
                     ext4   4.8G   19M  4.6G   1% /data

[[email protected] ~]# du -ah /etc |sort -nrk 1 |head -n 10   #打印指定目录中最大的10个目录或文件
984K    /etc/pki/tls/certs/ca-bundle.trust.crt
772K    /etc/pki/tls/certs/ca-bundle.crt
628K    /etc/services
620K    /etc/pki/ca-trust/extracted/pem
384K    /etc/selinux/targeted/contexts
352K    /etc/sysconfig
324K    /etc/pki/ca-trust/extracted/openssl
316K    /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt
300K    /etc/selinux/targeted/contexts/files
296K    /etc/gconf

[[email protected] tmp]# find . -type f -exec du -k {} \;|sort -nrk 1 |head  #查找指定目录中最大的10个目录或文件
12582916    ./test.12
1000    ./123.log
100    ./456.log
12    ./123
4    ./user.log
4    ./passwd.bak
4    ./passwd
4    ./newetcdir
0    ./yum.log

16.3.fdisk

功能:linux分区表操作器

语法:

fdisk [-uc] [-b sectorsize] [-C cyls] [-H heads] [-S sects] device

fdisk -l [-u] [device...]

fdisk -s partition...

fdisk -v

fdisk -h

示例:

# fdisk -l  查看磁盘的详细信息
磁盘大小=盘面数 X 扇区数 X 柱面数 X 每扇区大小(512字节)
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders  255个磁头 63个扇区 2610个柱面
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000dc9a4
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64        2611    20458496   8e  Linux LVM
 
Disk /dev/mapper/vg_node1-lv_root: 18.8 GB, 18798870528 bytes
255 heads, 63 sectors/track, 2285 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512
bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
 
Disk /dev/mapper/vg_node1-lv_swap: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

磁盘分区:

fdisk /dev/sdb
 
Command (m for help): m 打印帮助
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition  删除一个分区
   l   list known partition types  查看所有分区类型
   m   print this menu
   n   add a new partition 添加新分区
   o   create a new empty DOS partition table
   p   print the partition table 打印分区表
   q   quit without saving changes 退出不保存
   s   create a new empty Sun disklabel
   t   change a partition‘s system id  更改分区的系统类型(id)
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit  保存且退出
   x   extra functionality (experts only)
 
 
Command (m for help): n
Command action
   e   extended  扩展分区
   p   primary partition (1-4) 主分区 分区编号
p
Partition number (1-4): 1
First cylinder (1-2610, default 1):  起始柱面(默认)
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): +2G  数字代表结束柱面;+size代表最终指定大小
 
分区:如果你要分四个以上分区,请把第四个分为extended扩展分区
     而且扩展分区把多余的所有空间都划分进去,否则会造成空间的浪费
 
格式化成某种文件系统:
mkfs.ext4 /dev/sdb1
或者
mkfs -t ext4 /dev/sdb1
 
查看文件系统:
df -lhT
通过挂载方式使用:
手动挂载:
mkdir /u01 创建空的挂载点
mount /dev/sdb1 /u01

16.4.parted

功能:GNU分隔-分区操作程序

语法:parted [options] [device [command [options...]...]]

常用选项:

-h, --help 显示此求助信息 

-l, --list 列出所有设别的分区信息

-i, --interactive 在必要时,提示用户 

-s, --script 从不提示用户 

-v, --version 显示版本


两种分区:

gpt    没有主分区,扩展分区,逻辑扩展分区的概念,支持单个分区最大超过2TB

msdos    有主分区,扩展分区,逻辑扩展分区的概念

 

bios

EFI/UEFI

 

fdisk只能分msdoc分区,而parted可以分msdos和gpt分区

 

这两种分区格式怎么查看

 

# parted /dev/sda
GNU Parted 2.1
Using /dev/sda
Welcome to GNU Parted! Type ‘help‘ to view a list of commands.
(parted) print                                                           
Model: ATA ST3500312CS (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos      --这里就可以看到类型


这两种分区格式怎么转换

(parted) mklabel gpt        --在parted里输入这样的命令去转换

(parted) mklabel msdos

 

--注意,不要在正在使用磁盘时做转换,如果你要做转换可以在以下几种情况去做

1,rescue模式

2,把磁盘接到另一台linux,另一台启动并使用parted /dev/sdb来做转换

3,在安装系统时,在分区那一步,可以按ctrl+alt+F2切换到文本模式,再使用parted来转换

(parted) help        
(parted) mkpart
Partition type?  [logical]?
File system type?  [ext2]? ext4
Start? 225GB
End? 275GB

16.5.blkid

功能:打印块设备属性

示例:

[[email protected] tmp]# blkid
/dev/mapper/VolGroup-lv01: UUID="9a4d86d6-2b06-496c-82df-c50cf5423b23" TYPE="ext4" 
/dev/sda1: UUID="ec9d5b15-ba24-4f6e-bd2a-7f585d1462c3" TYPE="ext4" 
/dev/sda2: UUID="dN12Vt-FG5U-Nd3f-FCrR-Sv7m-USb2-fOgtT7" TYPE="LVM2_member" 
/dev/mapper/VolGroup-lv_root: UUID="ae65ef93-0d13-40ba-9516-d69474f5e0f1" TYPE="ext4" 
/dev/sdb: UUID="Shb8E4-1wg8-cc34-AGXH-SP4b-ONfr-3Yfw3y" TYPE="LVM2_member" 
/dev/mapper/VolGroup-lv_swap: UUID="b497699e-b5f0-4b03-8c09-898a41fec6c7" TYPE="swap

16.6.lsblk

功能:列出所有块设备信息

语法:

lsblk [options]

lsblk [options] device...

常用选项:

-a, --all            显示所有设备

 -b, --bytes          以bytes方式显示设备大小

 -d, --nodeps         不显示 slaves 或 holders

 -D, --discard        print discard capabilities

-e, --exclude <list> 排除设备 (default: RAM disks)

 -f, --fs             显示文件系统信息

 -h, --help           显示帮助信息

 -i, --ascii          use ascii characters only

 -m, --perms          显示权限信息

 -l, --list           使用列表格式显示

 -n, --noheadings     不显示标题

 -o, --output <list>  输出列

 -P, --pairs          使用key="value"格式显示

 -r, --raw            使用原始格式显示

 -t, --topology       显示拓扑结构信息


示例:

[[email protected] tmp]# lsblk  #查看本机的设备文件
NAME                        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0                          11:0    1 1024M  0 rom  
sda                           8:0    0   20G  0 disk 
├─sda1                        8:1    0  500M  0 part /boot
└─sda2                        8:2    0 19.5G  0 part 
  ├─VolGroup-lv_root (dm-0) 253:0    0 17.6G  0 lvm  /
  └─VolGroup-lv_swap (dm-1) 253:1    0    2G  0 lvm  [SWAP]
sdb                           8:16   0   10G  0 disk 
└─VolGroup-lv01 (dm-2)      253:2    0    5G  0 lvm  /data
 
[[email protected] tmp]# lsblk  -l #列表格式显示
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0                      11:0    1 1024M  0 rom 
sda                       8:0    0   20G  0 disk
sda1                      8:1    0  500M  0 part /boot
sda2                      8:2    0 19.5G  0 part
VolGroup-lv_root (dm-0) 253:0    0 17.6G  0 lvm  /
VolGroup-lv_swap (dm-1) 253:1    0    2G  0 lvm  [SWAP]
sdb                       8:16   0   10G  0 disk
VolGroup-lv01 (dm-2)    253:2    0    5G  0 lvm  /data
时间: 2024-08-30 04:16:19

文件系统命令(十六)的相关文章

selenium测试(Java)--下载文件(十六)

下载文件需要在Firefox 的profile属性中配置一些参数,如下面的代码: package com.test.download; import java.io.File; import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDri

第三百七十六节,Django+Xadmin打造上线标准的在线教育平台—创建用户操作app,在models.py文件生成5张表,用户咨询表、课程评论表、用户收藏表、用户消息表、用户学习表

第三百七十六节,Django+Xadmin打造上线标准的在线教育平台-创建用户操作app,在models.py文件生成5张表,用户咨询表.课程评论表.用户收藏表.用户消息表.用户学习表 创建名称为app_operation的用户操作APP,写数据库操作文件models.py models.py文件 #!/usr/bin/env python # -*- coding:utf-8 -*- from __future__ import unicode_literals from datetime i

攻城狮在路上(叁)Linux(十六)--- 命令与文件的查找

一.脚本文件的查询: 1.命令格式:which [-a] command; <==通过PATH来查找. -a:列出所有的,而不是仅列出第一个. 示例: which ifconfig; 注意:由于不同的用户PATH不同,所以结果或许也有区别. 二.文件名的查找: 1.whereis [-bmsu] 文件或目录名  <==通过数据库来查找,所以不同的用户查到的结果是一致的. 参数说明: -b:只找二进制格式的文件. -m:只找在说明文件manual路径下的文件. -s:只找source源文件. -

Gradle 1.12 翻译——第十六章. 使用文件

有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com/1.12/userguide/userguide.html 本文原创,转载请注明出处:http://blog.csdn.net/maosidiaoxian/article/details/41113353 关于我对Gradle的翻译,以Github上的项目及http://gradledoc.qin

解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译)

解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译) http://improve.dk/orcamdf-rawdatabase-a-swiss-army-knife-for-mdf-files/ 当我最初开始开发OrcaMDF的时候我只有一个目标,比市面上大部分的书要获取MDF文件内部的更深层次的知识 随着时间的推移,OrcaMDF确实做到了.在我当初没有计划的时候,OrcaMDF 已经可以解析系统表,元数据,甚至DMVs.我还做了一个简单U

第十六章 在文件中搜索文本工具:grep命令 和egrep命令

第十六章 在文件中搜索文本工具:grep命令 和egrep命令 名词解释 grep(global search regular expression(RE)and print out the line,全面搜索正则表达式并把行打印出来) grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 选项 - -a :不要忽略二进制数据 - -A <显示行数>:除了显示符合范本样式的那一行之外,并显示该行之后的内容. - -b :在显示符合范本样式的那一行之外,并显示该行

Powershell管理系列(二十六)PowerShell操作之批量导出&导入邮箱

-----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微软产品实施及外包,QQ:185426445.电话18666943750 项目中有时候做跨林邮箱迁移的时候,条件不成熟,比如安全考虑或者其他考虑,不能做双林信任,这样就提出了一个问题,历史邮件需要使用的话怎么办,一个简单高效的解决办法就是从源森林批量导出邮件为.pst文件,在批量导入到目的域森林,具体操作如下: 1.赋予管理账号邮件导入导出权限,命令如下: cls whoami New-Manageme

QT开发(十六)——QT绘图实例-钟表

QT开发(十六)--QT绘图实例-钟表 一.钟表实现原理 钟表的实现需要设置定时器,定时器每隔一秒发送timeout()信号到QWidget::update()槽函数,update()槽函数将会重绘一次窗口,重写重绘事件函数paintEvent(QPaintEvent *event),根据获取的当前系统时间的时钟.分钟.秒钟重绘钟表的时针.分针.秒针. QTimer *timer = new QTimer(this); timer->start(1000);//一秒钟 connect(timer

Python之路【第十六篇】:Django【基础篇】

Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 基本配置 一.创建django程序 终端命令:django-admin startproject sitename IDE创建Django程序时,本质上都是自动执行上述命令 其他常用命令: python manage.py runserver