在Linux中普通文件和目录文件保存在称为块物理设备的磁盘或者磁带上。一套Linux系统支持若干物理盘,每个物理盘可定义一个或者多个文件系统。每个文件系统由逻辑块的序列组成,一个逻辑盘空间一般划分为几个用途各不相同的部分,即引导块、超级块、inode区以及数据区等。

一、分区类型

主分区:总共最多只能分四个

扩展分区:只能有一个,也算主分区的一种,也就是说主分区加扩展分区最多有四个,但是扩展分区不能存储数据和格式化,必须再分层逻辑分区才能使用。

逻辑分区:逻辑分区是在扩展分区中划分的,如果是IDE硬盘,linux最多支持59个逻辑分区,如果是SCSI硬盘linux最多支持11个逻辑分区

分区分完了进行格式化,格式化的作用是写入文件系统

二、文件系统

ext2:是ext文件系统的升级版,RedHat Linux 7.2版本以前的系统默认都是ext2文件系统,1993年发布,最大支持18TB的分区和最大2TB的文件

ext3:ext3文件系统是ext2文件系统的升级版本,最大的区别就是带日志功能,已在系统突然停止时提高文件系统的可靠性。支持最大16TB的分区和最大2TB的文件。

ext4:是ext3文件系统的升级版,ext4在性能、伸缩性和可靠性方面进行了大量改进,wxt4的变化可以说是翻天覆地的,比如向下兼容ext3最大1EB文件系统和16TB文件、无线数量子目录、Extents连续数据块概念、多块分配、延迟分配、持久预分配、快速FSCK、日志校验、无日志模式、在线碎片整理、inode增强、默认启用barrier等。

文件系统常用命令

df    统计文件系统的占用情况

df【选项】【挂载点】

-a 显示所有的文件系统信息,包括特殊文件系统,如/proc、/sysfs

-h 使用习惯单位显示容量,如KB,MB或GB等

-T 显示文件系统类型

-m 以MB为单位显示容量

-k 已KB为单位显示容量,默认使用就是已KB为单位

du  统计目录或文件大小

du【选项】【目录或文件名】

-a 显示每个子文件的磁盘占有量,默认只统计子目录的磁盘占有量

-h 使用习惯单位显示容量,如KB,MB或GB等

-s 统计总占有量,而不列出子目录和子文件的占有量

du命令和df命令的的差别

df命令是从文件系统考虑的,不光要考虑文件占有的空间,还要统计被命令或程序占有的空间(最常见的就是文件已经删除,但是程序并没有释放空间)

du命令是面向文件的,只会计算文件或目录占用的空间

fsck  文件系统修复

fsck 【选项】分区设备文件名

-a 不用显示用户提示,自动修复文件系统

-y 自动修复。和-a的作用一致,不过有些文件系统只支持-y

dumpe2fs  显示磁盘状态

dumpe2fs 分区设备文件名

三、挂载

挂载:将一个设备(通常是存储设备)挂接到一个已存在的目录上。 我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上, 然后通过访问这个目录来访问存储设备。

挂载的真正意义:把设备文件名和挂载点连起来

mount【选项】

-l 查询系统中已经挂载的设备,-l会显示卷标名称

-a 依据配置文件/etc/fstab的内容,自动挂载

挂载命令格式

mount【-t文件系统】【-L卷标名】【-o特殊选项】 设备文件名 挂载点

-t文件系统  加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9600等文件系统,(通常不必指定。mount会自动选择正确的类型)

-L卷标名  挂载指定卷标的分区,而不是安装设备文件名挂载(相当于起个别名)

-o特殊选项  可以指定挂载的额外选项

常见的见表格,没有特殊情况,就不用修改了loop用来把一个文件当成硬盘分区挂接上系统

rw/ro读写/只读,文件系统挂载时,是否具有读写权限,默认是rw

async/sync同步/异步,默认为异步

remount重新挂载已经挂载的文件系统,一般用于指定修改特殊权限

exec/noexec执行/不执行,设定是否允许在文件系统共中执行可执行文件,默认是exec允许

挂载光盘

mkdir /mnt/cdrom/  建立挂载点(只要是空目录都可以作为挂载点)

mount -t iso9660 /dev/cdrom /mnt/cdrom  挂载光盘 (cdrom实际上是sr0的软链接,光盘的文件系统默认的就是iso9660,所以也可以省略mount /dev/cdrom/mnt/cdrom

)

卸载命令

umount 设备文件名或挂载点

umount /mnt/cdrom

挂载U盘

对linux系统而言,USB接口的移动硬盘是当作SCSI设备对待的。插入移动硬盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。

fdisk -l   查看U盘设备文件名

mount /mnt/usb  创建挂载点

mount /dev/sdb1 /mnt/usb (本应使用-t vfat选项,但linux会自动识别,可省略,但linux默认是不支持NTFS文件系统的)

如何让linux支持NTFS文件系统?

在linux内核中,已经把常见的硬件驱动包含在内核中,在我们安装的时候,系统会自动的为我们的硬件选择驱动,这一点linux把windows方便,windows必须手动安装驱动,但内核中没有的驱动,就需手动安装驱动加载进来

1.重新编译内核,把NTFS加载进来

2.利用第三方的软件,下载NTFS-3G插件

下载NTFS-3G,解压

进入解压目录

./configure 编辑器准备,没有指定安装目录,安装到默认位置中

make编译

make  install 编译安装

3.使用

mount -t ntfs-3g 分区设备文件名  挂载点

umount 挂载点  卸载

四、fdisk分区

1.在练习中,可以使用虚拟机添加新硬盘

2.fdisk -l  查看新硬盘

3.使用fdisk命令分区

fdisk /dev/sdb

确认之后,m可以查看帮助fdisk交互指令说明

命令说明

a设置可引导标记

b编辑bsd磁盘标签

c设置DOS操作系统兼容标记

d删除一个分区

l显示一个文件系统。82为linux swap分区,83为linux分区

m显示帮助菜单

n新加分区

o建立空白DOS分区表

p显示分区列表

q不保存退出

s新建空白SUN磁盘标签

t改变一个分区的系统ID

u改变显示记录单位

v验证分区表

w保存退出

x附加功能(仅专家)

分一个主分区

分一个扩展分区

分完扩展分区,就有分逻辑分区的选项,直接从5开始

然后可以用p查看下,无误w保存

如果磁盘被占用,需重新启动才可分区,也可使用partprobe命令重新读取分区表信息,避免了重启

4.分区完成后,进行格式化

mkfs -t ext4 /dev/sdb1 ,但需注意的是,逻辑分区是无法格式化的。

5.建立挂载点并挂载

mkdir /disk1

mount /dev/sdb1 /disk1/

对于每次都要使用的挂载,可以写入/etc/fstab文件自动挂载(写错的话有可能造成系统崩溃)

/etc/fstab文件

第一字段:分区设备文件名或UUID(硬件通用唯一标识码)

第二字段:挂载点

第三字段:文件系统名称

第四字段:挂载参数

第五字段:指定分区是否被dump备份,0代表不备份,1代表每天备份,2代表不定期备份

第六字段:指定分区是否被fsck检测,0代表不检测,其他数字代表检测的优先级,数字越小优先级越高

6.添加自动挂载

然后使用mount -a命令将自动挂载点再挂载一遍,看是否有报错,避免开机系统崩溃

故意将/etc/fstab中写入错误,重启看到报错,ctrl加d重启或者输入root密码,

进入/etc/fstab发现是个只读文件,是因为报错之后它将挂载为读权限,没有挂载读写权限,只要重新挂载为读写权限即可

然后就可以修改/etc/fstab文件了,将它修改为正确的格式,并重启,就设置成了自动挂载了

但是这个修复值用在/etc/fstab错误的情况下,根分区错误情况下,刚刚那个提示输入密码都不会出现。所以修改这个配置文件的时候一定要注意。

五、分配swap交换分区

在linux中,swap分区必须存在,在使用交换分区的时候,发现不够大,如何加入空间?先查看下有多少的交换空间

1.free  查看内存与swap分区使用状况

-m 用兆的单位显示

cached(缓存):是指把读取出来的数据保存在内存当中,当再次读取时,不用读取硬盘而直接从内存当中读取,加速了数据的读取过程。

buffer(缓冲):是指在写入数据时,先把分散的写入操作保存到内存当中,当达到一定程度再集中写入硬盘,减少了磁盘碎片和硬盘的反复寻道,加速了数据的写入过程。

2.新建分区并加id该为82

3.格式化

mkswap  /dev/sdb6

之前是1999M,现在是3027M

4.自动挂载

每次开机都需手动加入swap分区才可以,当然也可以使用/etc/fstab自动挂载

文件系统 83 linux,Linux文件系统相关推荐

  1. 文件系统管理 之 Linux 创建文件系统及挂载文件系统流程详解

    作者:北南南北 来自: LinuxSir.Org 摘要:本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述:主要是为初学者弄清楚这一操作过程:本文涉及f ...

  2. Linux及文件系统基本介绍

    Linux及文件系统基本介绍 1   互联网行业现状 在服务器端市场: 超级计算机 2014年11月的数据显示前500系统中的485个系统都在运行着 Linux 的发布系统,而仅仅只有一台运行着 Wi ...

  3. linux原有的文件系统扩展,原来linux不用LVM也能扩展文件系统

    以前总以为UNIX/LINUX使用了lvm才能扩展或缩小卷和文件系统,今天才发现我错了:即使没有lvm,linux也能扩展卷和及其相应的文件系统而不会丢失原有数据. 以下是测试步骤,记录备查. 1.系 ...

  4. 自学 Linux 8—文件系统简介之 Linux 下的文件系统

      在 UNIX 族的操作系统中,文件系统占有十分重要的地位,文件的概念涵盖了 UNIX 设备和操作对象的全部内容,对设备的操作方式几乎可以与对普通文件的操作等价.本博客对文件系统进行简单的介绍,主要 ...

  5. linux之文件系统

    linux之文件系统 文件系统 文件系统是操作系统用于明确磁盘或者分区上相关文件的方法和数据结构,通俗的说法就是在磁盘上组织文件的方法. linux有很多不同的文件系统,例如ext2.ext3.ext ...

  6. linux asm 文件系统,LINUX 文件系统精通指南---讲的非常好

    究竟什么是"文件系统"?Sheryl Calish 介绍了这个概念以及它的实际应用 尽管内核是 Linux 的核心,但文件却是用户与操作系统交互所采用的主要工具.这对 Linux ...

  7. Linux 创建文件系统及挂载文件系统流程详解(转)

    作者:北南南北 来自: LinuxSir.Org 摘要:本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述:主要是为初学者弄清楚这一操作过程:本文涉及f ...

  8. Linux之文件系统详解(系统常见目录、磁盘分区、软硬链接)

    Linux系统中一切皆文件,Linux系统中的一切文件都是从" 根(/)"目录开始的,并按照文件系统层次化标准(FHS)采用树形结构来存放文件,以及定义了常见目录的用途. 目录 L ...

  9. linux扩文件系统大小,调整卷大小后扩展 Linux 文件系统 - Amazon Elastic Compute Cloud...

    AWS 文档中描述的 AWS 服务或功能可能因区域而异.要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门. 调整卷大小后扩展 Linux 文件系统 在增加 EBS 卷的大小后,您必须使用特定 ...

  10. linux的文件系统及节点表

    linux的文件系统及节点表 一  linux的文件系统 1 我们都知道当我们安装linux时会首先给系统分区,然后我们会把分区格式化成EXT3格式的文件系统.那么在linux系统中还有没有其他的文件 ...

最新文章

  1. rpath和runpath的区别
  2. 当前被频频提及的企业数字化转型是什么?
  3. KeelKit 中集成了代码统计功能
  4. python队列join
  5. api网关揭秘--spring cloud gateway源码解析
  6. php 目录文件大小,利用php怎么对目录文件的大小进行统计
  7. 获取单选按钮选中的值
  8. 有哪些好用的游戏加速器推荐?
  9. #foxpro(VFP) 入门(一) 常用命令
  10. 一文带你认清运维岗位
  11. 查看linux系统是多少位
  12. 先马后看!详解线性回归、朴素贝叶斯、随机森林在R和Python中的实现应用!(附代码)...
  13. 利用Excel可视化分析,柱形图、条形图、饼图、复合饼图,圆环图、组合图、漏斗图、地图的操作方法(适合小白)
  14. 中国漆画名品东京展出 促中日文化交流
  15. html 定义列表dddt,一个微服务+DDD(领域驱动设计)的代码结构示例
  16. 模拟量采集软件虚拟精度提升方案
  17. 数学历史上的三次危机
  18. android 键盘按下事件,Android虚拟键盘上下左右键按下和弹起的响应事件
  19. 腾讯Oceanus实时计算平台架构设计
  20. kube-scheduler 调度流程

热门文章

  1. ReentrantLock梳理和总结
  2. 数据结构之红黑树插入案例详解
  3. java IO之字节流和字符流-OutputSteam和InputStream
  4. 订阅github release(官方+IFTTT)
  5. 关于公司架构管控的思考
  6. CentOS 6.5忘记root密码,怎么办?
  7. Selenium之脚本编写页面通用定位方法
  8. 搭建VSFTPD服务器 虚拟用户认证方式
  9. ubuntu 14.04 32bit依赖库解决
  10. Oracle数据库文件中的导入\导出(imp/exp命令)