热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux磁盘及文件系统管理是怎么样的

Linux磁盘及文件系统管理是怎么样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简

Linux磁盘及文件系统管理是怎么样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

磁盘基本概念
磁盘 分区 MBR GPT

格式化好的分区都有一个 lost+found 目录

磁盘基本概念
cylinder柱面
sector扇区
head磁头

linux所有设备都被抽象为一个文件,保存在/dev下
一般名称为hda,sda   hdb,sdb
IDE设备的名称为hda
sata,scsi,sas,usb等设备的名称为sd[a-z]

不同分区用:设备名称+分区号 方式表示,如sda1、sda2

主流分区机制为MBR和GPT两种
eg.
cd /dev/
ls /dev/sda (+TAB建)
或者ls /dev/sda*

MBR master boot record  传统 (使用BIOS的PC设备)
硬盘不得超过2T

头512KB都被MBR占用
Bootstrap code area446
Partition table (for primary partitions)
  partition entry #116
  partition entry #216
  partition entry #316
  partition entry #416
Boot signature
  55h3
  AAh3
Total512

主分区<=4
一个扩展分区会占用一个主分区位置
逻辑分区<63个IDE分区和15个SCSI分区

GPT
GUID Partition Table
支持>2T
向后兼容MBR
必须在支持UEFI的硬件基础
必须64bit
Mac、Linux系统都能支持GPT分区格式
windows7 64bit,windowsServer2008 64bit 支持GPT


使用fdisk进行磁盘管理_________________________________________________

fdisk是来自IBM的老牌分区软件,几乎所有Linux系统均默认安装
fdisk是一个MBR分区工具,不可用于GPT分区
只有超级用户(root)权限可以执行fdisk
fdisk分区后需要使用partprobe让内核识别新的分区

fdisk -l磁盘分区信息
fdisk /dev/sda  对目标进行分区
p打印(显示)分区表
n创建分区
eextended
partition number(1-4):2
pprimary partition(1-4)    
partition number(1-4):1
:+2G
n
llogical(5 or over)
:+2G
p primary partition(1-4)
t修改分区ID
L
83(82.linux swap[虚拟内存])

此时所有信息只保存在内存当前,还没有写进硬盘
此时需要写入MBR分区表里
命令为:W

分区后有时候信息显示有延迟
手动来让内核更新分区表
命令为:partprobe

查看分区信息
fdisk -l
cat /proc/partitions

此时文件系统还没有创建


Linux文件系统_____________________________________________________

没有文件系统的设备为裸(raw)设备
文件系统是操作系统用以管理磁盘或分区上的文件数据使用的,创建文件系统的过程一般称之为格式化

windows下主流的文件系统是:fat32、NTFS,
Linux下主流的文件系统是:ext3、ext4

判断一个文件系统优劣通常通过以下几个方面:
支持最大分区大小
支持最大单个文件大小
支持文件名长度
日志功能
文件存取性能

命令mke2fs用以创建文件系统:
  mke2fs -t ext4 /dev/sdb1
  -b  指定文件系统块(block)大小(block是文件系统读写操作的最小单位,   默  认是4096)
  -c  建立文件系统的时候检查块损坏
  -L  指定卷标
  -j   建立文件系统日志

命令mkfs可用来快速建立文件系统:(命令简单,没有参数)
  mkfs.ext3、mkfs.ext4、mkfs.vfat
  mkfs.ext4 /dev/sdb1

命令dumpe2fs可用来查看指定文件系统的信息:
  dumpe2fs /dev/sda1

命令e2label用以为指定文件系统添加卷标:
  e2label /dev/sda1 LINUXCAST

命令fsck用以检查文件系统错误:
  fsck /dev/sda1

日志是文件系统通常都支持的功能,用以提高文件系统的稳定性及可恢复性


Linux文件系统挂载管理___________________________________

文件系统创建好之后需要挂载到系统中方可使用,windows、Mac系统会自动挂载文件系统,而Linux下一般需要手工挂载

命令mount可用来挂载文件系统:
直接敲一个mount可以显示挂载信息
mount 要挂载的设备   挂载点
mount /dev/sdb1    /mnt/     (挂载到任意位置其实都可以)
-t  指定文件系统的类型,如: -t ext3、-t vfat  
-o  指定挂载选项:
   ro,rw    只读挂载或读写挂载
   sync     不使用文件缓存,所有操作直接写入磁盘
   async    使用缓存提高文件系统读写效率
   noatime 不更新文件访问时间
   atime    更新文件访问时间
   remount  重新挂载

you must specify the filesysten type?挂载出错
回答:
1.先用vgscan 
2.vgchange -ay
3.lvscan
4.mount
到第三步的时候如果正常会显示出两块硬盘的lv状态都是active,此时再
#mount -t ext3 /dev/VGname/LVname /mnt/cdrom

命令umount用以卸载一个挂载的文件系统
umount 挂载源或挂载点
umount /dev/sdb1 | /mnt

可以将挂载配置写入/etc/fstab中以实现自动挂载

命令fuser可查看某文件系统中正在使用的文件
fuser -m /mnt

命令lsof可查看正在被使用的文件
lsof /mnt

自动挂载
修改文件/etc/fstab定义系统启动自动挂载
格式
/dev/sda3/mntext4  defaults00
需要挂载的设备挂载点文件系统  挂载选项dump、fsck相关选项

要挂载的设备也可以使用LABEL进行标识,使用LABEL+LINUXTEST取代/dev/sda3
e2label /dev/sdb1显示卷标
e2label /dev/sdb1 /mm   设置卷标
mount -a 命令会挂载所有fstab中定义的自动挂载项

关于Linux磁盘及文件系统管理是怎么样的问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程笔记行业资讯频道了解更多相关知识。


推荐阅读
  • 1.dd命令dd命令的全称为diskdump,对系统所有用户开放。该命令用于复制磁盘的数据块,且可在复制文件的同时指定转换的文件格式。命令选项参数说明ifFILE:输入文件名称,默 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 展开全部下面的代码是创建一个立方体Thisexamplescreatesanddisplaysasimplebox.#Thefirstlineloadstheinit_disp ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • 本文介绍了如何使用n3-charts绘制以日期为x轴的数据,并提供了相应的代码示例。通过设置x轴的类型为日期,可以实现对日期数据的正确显示和处理。同时,还介绍了如何设置y轴的类型和其他相关参数。通过本文的学习,读者可以掌握使用n3-charts绘制日期数据的方法。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • LINUX学习之centos7营救模式
    今天卸载软件的时候,不小心把GNOME的一些组件给卸了,导致桌面无法正常开启,会卡在启动过程中,而我的开机启动模式又是设置为图形界面,所以一开LINUX就卡住了,进入不了命令行界面 ... [详细]
  • pythonMatplotlib(二)
    Matplotlib+pandas作图一、对csv文件进行提取ruixi.csv对上述表格进行提取并做图画出图像二、对.xlsx进行提取:rui ... [详细]
  • oracle11.2.0.4的rac集群,其中一个节点出现故障,集群无法启动,使用crsctlcheckcrs查看集群状况如下:[grid@db2client]$crsctlche ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
author-avatar
66桀骜不驯_537
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有