Linux学习之二十-Linux文件系统
Linux文件系统
- 文件系统的定义
文件系统是操作系统的必备软件,文件系统是对一个存储设备上的数据(block)和元数据(inode)进行组织的一种机制。文件系统可以帮助用户管理磁盘空间,进行文件的快速存取的功能。文件系统是操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。
- 常见的文件系统
常见的文件系统有FAT FAT16 FAT32(通用) NTFS EXT2 EXT3 EXT4 XFS HFS
其分别的特点如下:
fat16:最多支持2G
fat32:单个文件不能超过4G
etfat:突破单个文件不能超过4G
ntfs:只有Windows专用,是一种带日志功能的文件系统,文件安全性更高。意外断电一般都可以恢复
ext:Linux之父林纳斯·托瓦兹创造
ext2:第二代扩展文件系统
ext3:CentOS 5.X
ext4:CentOS 6.X 2012年发布 相对之前的版本多了日志功能,文件安全性更强,找回的文件在lost found下
XFS:CentOS 7.X 2014年发布
在Windows平台下利用fsutil fsinfo ntfsinfo c:可以查看ntfs文件系统相关信息

- Windows下fat32无损转换为ntfs

- Linux下挂载ntfs文件系统
4.1 查看可用的源ls /etc/yum.repos.d/
4.2 安装epel源
yum list|grep epel
yum install epel-release.noarch –y
4.3 安装ntfs3g
yum list|grep ntfs
yum install ntfs-3g.x86_64 –y
4.4 连接ntfs格式的盘
[root@localhost ~]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 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: 0x00098b99
Device Boot Start End Blocks Id System
/dev/sda1 1 262 2097152 82 Linux swap / Solaris
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 262 2611 18873344 83 Linux
Disk /dev/sdb: 16.0 GB, 15977152512 bytes
255 heads, 63 sectors/track, 1942 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: 0xcad4ebea
Device Boot Start End Blocks Id System
/dev/sdb4 * 1 1943 15602560 7 HPFS/NTFS
4.5 挂载
mount -t ntfs-3g /dev/sdb /mnt/usb
- 将硬盘格式化为ntfs
5.1 安装mkntfs
yum list|grep ntfs
yum install yum ntfsprogs.x86_64 –y
5.2 格式化为ntfs
mkfs.ntfs /dev/sdb
- CentOS 6使用XFS文件系统
6.1 安装支持xfs的工具包
yum list|grep xfs
yum install xfsprogs.x86_64 –y
6.2 格式化
mkfs.xfs /dev/sdb
mkfs.xfs –f /dev/sdb 强制格式化
6.3 挂载
[root@localhost ~]# mkfs.xfs /dev/sdb
meta-data=/dev/sdb isize=256 agcount=4, agsize=196608000 blks
= sectsz=512 attr=2, projid32bit=0
data = bsize=4096 blocks=786432000, imaxpct=5
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal log bsize=4096 blocks=384000, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# mount /dev/sdb /mnt/
[root@localhost ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 18G 1.6G 16G 10% /
tmpfs tmpfs 931M 0 931M 0% /dev/shm
/dev/sdb xfs 3.0T 33M 3.0T 1% /mnt
7、测试比较ext4和xfs文件系统分区性能
使用dd命令
功能一:提取光碟的iso文件(刻录盗版碟)dd if=/dev/sr0 of=/windows7.iso(输出路径及名称)
功能二:测试磁盘的性能 /dev/zero可以不断向外面输出内容(像喷泉一样)
测试性能time dd if=/dev/zero of=/mnt/a.raw bs=100M count=6 (连续100M文件6个)
用两个1.5T的ext4和xfs硬盘测试
[root@localhost ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 18G 1.6G 16G 10% /
tmpfs tmpfs 931M 0 931M 0% /dev/shm
/dev/sdb1 ext4 1.5T 70M 1.4T 1% /mnt/1
/dev/sdb2 xfs 1.5T 33M 1.5T 1% /mnt/2
[root@localhost ~]# time dd if=/dev/zero of=/mnt/2/b bs=100M count=6
6+0 records in
6+0 records out
629145600 bytes (629 MB) copied, 0.546586 s, 1.2 GB/s
real 0m0.604s
user 0m0.002s
sys 0m0.491s
[root@localhost ~]# time dd if=/dev/zero of=/mnt/1/a bs=100M count=6
6+0 records in
6+0 records out
629145600 bytes (629 MB) copied, 0.493491 s, 1.3 GB/s
real 0m0.534s
user 0m0.000s
sys 0m0.478s
结论:xfs文件系统的性能比ext4文件系统的性能要好
- swap文件系统
在实际生产情况中,有时候会遇到系统的swap虚拟内存不够用的情况,这时系统会调用oom(out of memory内存溢出)进程的oom killer内存不足终结者,来避免由于空间不够造成系统崩溃,解决此问题的办法当然是在检查系统进程的同时扩大系统虚拟内存空间,以便于后期进行硬件上的升级
添加和卸载swap虚拟内存空间的步骤
第1步、通过dd添加空间
dd if=/dev/zero of=/opt/swap bs=1G count=1 此处添加的空间为1G
第2步、格式化成swap的文件系统
mkswap -f /opt/swap
第3步、将虚拟的swap空间添加进系统swap
swapon /opt/swap
[root@localhost ~]# free -m
total used free shared buffers cached
Mem: 1990 1725 265 0 17 1567
-/+ buffers/cache: 140 1849
Swap: 2047 0 2047
[root@localhost ~]# dd if=/dev/zero of=/opt/swap bs=1G count=1
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB) copied, 22.5995 s, 47.5 MB/s
[root@localhost ~]# ll -h /opt/swap
-rw-r--r-- 1 root root 1.0G Apr 11 17:27 /opt/swap
[root@localhost ~]# mkswap -f /opt/swap
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=df3f2ef1-57c3-48d3-9b76-6784fe794e53
[root@localhost ~]# swapon /opt/swap
[root@localhost ~]# free -m
total used free shared buffers cached
Mem: 1990 893 1097 0 17 757
-/+ buffers/cache: 117 1873
Swap: 3071 0 3071
第4步、取出虚拟的swap
swapoff /opt/swap
[root@localhost ~]# swapoff /opt/swap
[root@localhost ~]# free -m
total used free shared buffers cached
Mem: 1990 893 1097 0 17 758
-/+ buffers/cache: 117 1873
Swap: 2047 0 2047
博主原创文章,转载请务必注明出处
Linux学习之二十-Linux文件系统的更多相关文章
- Linux学习之二十、循环
原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0340bashshell-scripts_5.php 回圈 (loop) 除了 if...then...fi ...
- Linux学习(二十)软件安装与卸载(三)源码包安装
一.概述 源码包安装的优点在于它自由程度比较高,可以指定目录与组件.再有,你要是能改源码也可以. 二.安装方法 步骤 1.从官网或者信任站点下载源码包 [root@localhost ~]# wget ...
- linux学习(二)linux系统的安装
Linux 安装 本章节我们将为大家介绍 Linux 的安装,安装步骤比较繁琐,现在其实云服务器挺普遍的,价格也便宜,如果直接不想搭建,也可以直接买一台学习用用,参考各大云服务器比较. 本章节以 ce ...
- Linux学习之CentOS(十)----Linux 的账号与群组
Linux 的账号与群组 管理员的工作中,相当重要的一环就是『管理账号』啦!因为整个系统都是你在管理的, 并且所有一般用户的账号申请,都必须要透过你的协助才行!所以你就必须要了解一下如何管理好一个服务 ...
- linux学习(二)linux配置网卡以及常见网络问题排查
实验环境环境:mac,vmware fusion 一.常用的虚拟机网络连接模式. NAT:推荐方式.它可以使你在切换网络环境(比如在工作中和家里)时,不需要修改虚拟主机的配置,而维持正常的上网功能. ...
- Linux学习笔记之十————Linux常用服务器构建之ftp服务器
p服务器介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”. 用于Internet上的控制文件的双向传输. 同时,它也是一个应用程序(Ap ...
- Linux学习总结(十二)—— CentOS用户管理:创建用户、修改用户、修改密码、密码有效期、禁用账户、解锁账户、删除用户、查看所有用户信息
文章首发于Linux学习总结(十二)-- CentOS用户管理,请尊重原创保留原文链接. 创建用户 useradd -g webadmin -d /home/zhangsan zhangsan pas ...
- Linux学习之二-Linux系统的目录结构
Linux学习之二-Linux系统的目录结构 在Linux的根目录下,有很多的目录,但是需要记住,对于Linux而言,一切皆文件.因此此处的目录也是文件.用ls / 命令就能看到根目录下的各类不同的目 ...
- Linux学习笔记(二) 文件管理
了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...
随机推荐
- 论文笔记《Deep Hand: How to Train a CNN on 1 Million Hand Images When Your Data Is Continuous and Weakly Labelled》
一.概述 这个是最近的核心工作了,基本上都是靠着这篇paper的model过日子了啊.. 论文主要讲的是hand gesture recognition,实际上是用googlenet做的一个class ...
- java 复习整理(三 修饰符)
访问控制修饰符 Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java支持4种不同的访问权限. 默认的,也称为default,在同一包内可见,不使用任何修饰符. 私有的,以pr ...
- Gradle for Android(一)
Gradle是一种基于Groovy的动态DSL,而Groovy语言是一种基于jvm的动态语言.这里只分享实际开发中会用到的场景,您不需要去学习Groovy语言,知道Java的您是很容易阅读Groovy ...
- 结构型设计模式之装饰模式(Decorator)
结构 意图 动态地给一个对象添加一些额外的职责.就增加功能来说,D e c o r a t o r 模式相比生成子类更为灵活. 适用性 在不影响其他对象的情况下,以动态.透明的方式给单个对象添加职责. ...
- bisect维护已排序的序列
#!/usr/bin/env python # -*- coding:utf-8 -*- # author:love_cat import bisect # 用来处理已经排序好的序列,升序 # 二分查 ...
- UVALive 6451:Tables(模拟 Grade D)
VJ题目链接 题意:模拟输出表格 思路:模拟……很暴力 代码: #include <cstdio> #include <cstring> #include <cstdli ...
- web前端工作五年了,我来告诉你如何系统的学习现在的JavaScript
一.入门 1:熟悉DIV+CSS布局 使用DIV+CSS布局标准网页,可以使前端XHTML代码更少.结构更清晰,这有利于轻松用JavaScript操作DOM 比如,要展示一个3行3列的列表,如果用传统 ...
- Python的功能模块[3] -> binascii -> 编码转换
binascii模块 / binascii Module binascii模块包含很多在二进制和 ASCII 编码的二进制表示之间的转换方法.关于进制转换可以参考一些内置函数. hexlify 与 u ...
- 版本控制[0] -> git -> 使用 git 进行版本控制
版本控制 / Version Control 目录 git-版本控制 / git-Version Control git-常用命令 / git-Freq Command git-文件忽略 / git- ...
- Controlled Tournament(状态压缩DP)
Controlled Tournament 题意 n 名选手进行淘汰赛,R[i][j] = 1 表示 i 能胜过 j.要求通过安排淘汰赛使得,m 选手获得最终胜利,问使得比赛数最少的方案数. 分析 设 ...