linux文件系统问题

二龙侠客 2014-11-03 09:25:52
最近学习linux操作系统,不明白一点,所有的设备在linux内都看成文件,目录在/dev/,为什么存储设备还需要mkfs格式化后还需要将其挂载到某目录下,这些设备不就在/dev目录下边吗,为啥还需挂载呢?
...全文
94 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
二进制脑袋 2014-11-04
  • 打赏
  • 举报
回复
楼上对文件系统这一概念的解释得很不错,但我认为并没有直接回答楼主提的问题。 我来回答楼主: 1、/dev下(存储)设备已经以设备文件的方式出现了,但此时的设备还是原始(raw)(存储)设备,比如:如果是磁盘、光盘的话,此时还只能以块(扇区)的方式来访问。 2、mkfs的任务是在/dev下对应的设备文件上建立指定的文件系统,意味着:已经在该设备存储上初始化了指定文件系统的数据结构,即建立了文件系统结构。 3、挂载(mount)这一操作意味着:操作系统加载、执行刚才在设备文件上所建立文件系统的文件系统驱动模块。“挂载到某个目录”这一必须的选项意味着“某个目录”就是前面新建的文件系统的起始访问点,即新建文件系统的根目录就位于指定的这个目录。挂载的时候,如果你没有指定文件系统类型选项,则操作系统会自动尝试识别指定设备上的文件系统类别并加载、执行相应的文件系统驱动模块。 注:前面的加载、执行文件系统驱动模块,意思是该文件系统驱动模块并没有被编译进内核,而是以外部模块的形式存在,实际上一般Linux内核发行把大部分文件系统驱动模块直接编译内核模块,此时就不是加载了,而是直接调用执行了。 如果楼主认为我回答了你的问题,并看在我并非拷贝、粘贴而是实际敲入这么一堆初级扫盲内容的份上,结贴吧,呵呵!
iasky 2014-11-04
  • 打赏
  • 举报
回复
mkfs是把块设备格式化为某种文件系统可以识别的格式,是文件在块设备上的分别组织方式,这个是每个文件系统实现不同的。
fly 100% 2014-11-04
  • 打赏
  • 举报
回复
文件系统还是有识别类型的 很多只是识别fat32 设备还是要创造节点之后挂载的
zhxianbin 2014-11-03
  • 打赏
  • 举报
回复
计算机的文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易,文件系统使用文件和树形目录的抽象逻辑概念代替了硬盘和光盘等物理设备使用数据块的概念,用户使用文件系统来保存数据不必关心数据实际保存在硬盘(或者光盘)的地址为多少的数据块上,只需要记住这个文件的所属目录和文件名。在写入新数据之前,用户不必关心硬盘上的那个块地址没有被使用,硬盘上的存储空间管理(分配和释放)功能由文件系统自动完成,用户只需要记住数据被写入到了哪个文件中。 文件系统通常使用硬盘和光盘这样的存储设备,并维护文件在设备中的物理位置。但是,实际上文件系统也可能仅仅是一种访问数据的界面而已,实际的数据是通过网络协议(如NFS、SMB、9P等)提供的或者内存上,甚至可能根本没有对应的文件(如 proc文件系统)。 严格地说, 文件系统是一套实现了数据的存储、分级组织、访问和获取等操作的抽象数据类型(Abstract data type)。 http://zh.wikipedia.org/wiki/%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧