linux文件系统之文件和分区基础

InUnix/Linux, a
file is a sequence of bytes withoutstructure. Any necessary structure (e.g. for a database) isadded by the programs that manipulate the data in the file. Linuxitself doesn’t know about the internal structure of a database file– all it does
is return bytes.

对于Linux系统来说,文件都是无结构的字节序列。所谓任何一个有结构文件(比如数据库文件)都是针对应用程序来讲的,也就是说,linux不会知道文件是什么结构(也不需要知道的),linux只负责返回或者写入文件的字节序列,具体如何解析这个文件是由应用程序负责。

Unix/Linuxtries its best to treat every device attached to it as if it were alist of bytes. Therefore, everything, including network cards, harddrives, partitions,
keyboards, printers, and plain files are treatedas file-like objects and each has a name in the file system.

  • Yourcomputer memory is
    /dev/mem.
  • Yourfirst hard disk is
    /dev/sda.
  • Aterminal (keyboard and screen) is
    /dev/tty1.
  • Etc.

Linux的另一个特点是,一切皆文件的思想。linux尽最大努力把所有的设备当成由字节序列构成的文件看待(其实这个思想咋一看不可思议,但是我们想一想,所有的物理设备,最终做的是什么?存储数据。不管是显示屏/打印机/键盘/磁盘/usb等,都是要存储数据的,这些数据不就是字节序列么,字节序列不就是文件么,所以这是一种很好的面向对象的抽象思想,并且很好的实现了统一管理和透明性)。

Thereare two kinds of major partitions on a Linux system:

  • datapartition: normal Linux system data, including the
    rootpartition containing all the data to start up and run thesystem; and
  • swappartition: expansion of the computer‘s physical memory, extramemory on hard disk.

Oneof the goals of having different partitions is to achieve higher datasecurity in case of disaster. By dividing the hard disk inpartitions, data can be grouped
and separated. When an accidentoccurs, only the data in the partition that got the hit will bedamaged, while the data on the other partitions will most likelysurvive.

Linux下对磁盘的组织是分区,那么为什么需要分区呢?一块磁盘统一管理不就行了么。计算机里面所有的一切都是在tradeoff(权衡),我们会牺牲某个东西去换取另一个东西,如果另一个东西在实际生产环境中更有价值。计算机时间空间和安全永远都在博弈。Linux分区的一个主要考虑是security安全问性。分区能够实现更好的数据安全性从而避免灾难。通过对磁盘分区,数据可以分别存放在不同的组中。一旦发生事故,只有发生事故的分区数据会损坏,而其他分区的数据不会受到太大的影响。

下面我们来看看linux下面如何查看磁盘分区和文件系统类型:

The df command only displays information about active non-swappartitions.

df命令只会显示已挂载的分区(文件系统)和非交换分区的信息。

下面我们挂载一个分区:

把/dev/sda6分区挂载到/media/kitian目录下面。查看自己的分区,可以使用fdisk-l命令,再次df,就可以看到挂载上的/dev/sda6了

df命令看不到文件系统的类型,那么我们使用另一个工具parted;parted可以看到所有分区的具体信息(包括文件系统类型)

进入parted工具后输入printlist命令,就可以看到了。

时间: 2024-08-03 19:06:12

linux文件系统之文件和分区基础的相关文章

linux笔记:文件系统管理-分区、文件系统以及文件系统常用命令

linux分区类型: linux文件系统: df(查看文件系统容量和占用): du(统计文件或目录大小): 查询和自动挂载: 挂载命令格式: 挂载光盘: 卸载光盘: 挂载U盘:

Linux自学笔记(6):Linux文件系统及文件类型

Linux的文件系统:跟文件系统(rootfs)root filesystem LSB,FHS:linux发行标准1 bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var /boot:引导文件存放目录,内核文件(vmlinuz).引导加载器(bootloader,grub)/bin:供所有用户使用的基本命令:不能关联独立分区,OS启动即会用到的程序:/sbin:管理类的基本命令:不

利用stat命令获取Linux文件系统和文件的详细状态信息

用途:stat命令用于显示文件或文件系统的状态信息,来自于coreutils软件包,一般系统自带此命令工具,它能获取与文件系统及文件相关的许多信息,具体用途见stat的功能选项.这些信息包括inode.atime.ctime.mtime.文件(系统)类型.权限.块大小.符号连接等. 语法:stat [OPTION]... FILE... , 可通过stat --help或man stat获取它的帮助信息 功能选项:功能选项需要结合-c参数使用,如利用stat获取文件的inode信息,则使用sta

Linux平台Makefile文件的编写基础篇(转)

目的:       基本掌握了 make 的用法,能在Linux系统上编程.环境:       Linux系统,或者有一台Linux服务器,通过终端连接.一句话:有Linux编译环境.准备:       准备三个文件:file1.c, file2.c, file2.h       file1.c:              #include <stdio.h>              #include "file2.h"              int main()  

Linux平台Makefile文件的编写基础入门(课堂作业)

根据老师的要求,写一个超简单的makefile准备:       准备三个文件:file1.c, file2.c, file2.h       file1.c: #include "file2.h" int main() { printf("print file1$$$$$$$$$$$$$$$$$$$$$$$$\n"); File2Print(); return 0; } file2.h: #include <stdio.h> #ifndef FILE2

linux文件系统—删除文件

一.rm:用于删除文集或文件夹 1.不加参数的rm命令用于直接删除文件不给出提示 2.-i参数用于删除时给出提示 3.-r参数用于递归删除文件夹中的文件并删除文件夹

Linux文件系统十问---深入理解文件存储方式

Linux文件系统十问 --关于文件系统,你知道吗? 文章来源:文件系统十问 关于文件系统,相信大家都不陌生.身为攻城狮的我们几乎天天都会与之打交道,但是细深剖一下,其中又有多少是我们理解深度不够的呢.那么让我们一起来看一下下面这一组Linux文件系统相关的问题吧: 1.机械磁盘随机读写时速度非常慢,操作系统是采用什么技巧来提高随机读写的性能的? 2.touch一个新的空文件占用磁盘空间吗? 占用的话占用多少? 3.新建一个空目录占用磁盘空间吗?占用多少?和新建一个文件相比,哪个占用的更大? 4

《Linux学习并不难》文件系统管理(8):设置开机自动挂载Linux文件系统

18.8  <Linux学习并不难>文件系统管理(8):设置开机自动挂载Linux文件系统 只有将某个分区或是设备进行挂载以后才能使用,但是当计算机重新启动以后,又需要重新挂载,这个时候可以通过修改/etc/fstab文件实现开机自动挂载Linux文件系统.要实现开机自动挂载文件系统,需要在/etc/fstab文件中添加该磁盘分区的相关信息,可以通过提供设备名和UUID实现. 1.使用设备名 编辑/etc/fstab文件,在该文件末尾添加下列内容. /dev/sda5             

Linux 文件系统层次结构及文件的管理

本博文主要介绍如何使用命令管理Linux的文件,首先我们先看一下Linux文件系统的文件层次结构: 目录类型有:静态.动态或可变.永久.运行时 下面详细介绍各个文件的作用: /bin 二进制可执行命令,系统所需的配置命令 /boot 开始启动过程所需的文件 /dev包含特殊的设备文件,工系统用于访问硬件 /etc 系统管理和配置文件 /home普通用户存储其个人数据和配置文件的主目录,比如用户user的主目录就是/home/user,可以用~user表示 /root(超级用户)系统管理员的主目录