LINUX初次见面

LINUX的文件系统

在Linux的眼睛中,一切都为文件,这也是Linux的中心哲学思想。正因如此造就了一个性能稳定,功能强大,效率高的操作系统。Linux有自己的层级标准,它定义了每个系统分区的用途,和所需要的最小构成文件目录。由不同的文件来完成不同的功能造就了一个Linux的完整生态。

linux的文件系统格式比较丰富,它的核心系统能支持十多种文件系统类型。比如:

      JFS;etx;etx2;etx3;etx4;ISo9660;XFS;VFA;NTFS;HPFS;NFS;SMB;PROC;MSDOS等。

我们可以用命令 :cat /etc/fstab或者 df -T -h 来查看Linux的文件系统,

以我自己的linux为示例:

LINUX初次见面

 可以看出,Linux可以支持多种文件系统,者样使他更加灵活。并且Linux拥有Virtual File System(虚拟文件系统),这使得用户可以在同一系统下安装许多不同的文件,并且为用户提供了快速高效的文件访问服务。

在文件系统的,xfs最为先进。xfs文件系统是全新64位的,快速且稳定,并且是具有可升级性的。它的i/o性能和可升级性增加了该系统的复杂性,所以xfs系统主要应用于相对高端的用户。

ext系列的文件系统是由开放资源社区开放的日志文件,其中ext4最为可靠,etx3缺少现代文件系统所具有的解压速度高的性能。ext4是ext3的后继版本。ext4的发布,实现了向前向后兼容功能。

JFS是一种提供日志的字节级文件系统。该文件系统主要是为满足服务器(从单处理器系统到高级处理器和群集系统)的高吞吐量和可靠性需求而设计开发的。与非日志文件系统相比,JFS文件系统的突出优点是快速重启能力;缺点是使用JFS日志文件系统性能上会有一定损失,系统资源占用的比率也偏高。

这是比较常见的三种文件系统格式,介绍完文件系统格式后就说一下linux的文件系统。

linux发行版之间的差别很少,差别主要表现在系统管理的特色工具和软件包管理方式的不同。目录结构基本都是一样的。Linux的文件系统是单个的树状结构。也就意味着整个系统只会有一个目录。但是可以有多个分区。

分区和目录的关系:

  1. 任何一个要分区都要挂载在目录上才能进行读写。
  2. 目录是逻辑上的,而分区是物理分区。
  3. 根目录是系统所有文件和目录所在的地方,必要挂载一个分区。
  4. 有些目录不能独立出去单独划为一个磁盘,比如:/dev,/etc。

   划分分区有哪些优点:

  • 可以吧不同的资料分别管理来降低风险
  • 方便检索

相应命令 :

   fdisk 查看分区表,会显示出分区结构。

   df     查看分区上可使用的空间

   du    查看文件和目录的使用空间

接下来就要说Linux的文件系统了

刚刚说过Linux整个系统目录就相当于一个树状图。在最顶端的目录是所有文件的父目录,我们称为根,用/表示。

用ls命令可以查看根目录下的所有子目录。

以我的目录为例介绍一下。

  LINUX初次见面

  这是在根目录查看的结果,最前面显示的是各个文件的权限,文件权限有三个不同用户,其中每三个为一组,第一段为文件所有者,第二段为所有者所在组,第三段为其他。它们分的权限有三个不同的,r代表读,w代表写,x代表执行,也可以用数字表示,他们分别为4,2,1。这些都是在创建文件时设定。

接下来介绍一下主要目录:

/ :根目录,所有文件的入口。

/bin:二进制可执行命令,系统所需的配置命令;

/boot:开始启动过程所需的文件;

/dev:即设备驱动;

/home:普通用户存储其个人数据和配置文件的主目录;

/root:系统管理员的主目录;

/run:自上一次系统启动以来启动的进程的运行时数据。包括进程ID文件和锁定文件,此目录中的内容在重启时重新创建;

/sbin:类似/bin目录,系统管理命令,这里存放的是系统管理员使用的管理程序,一般不给普通用户使用;

/tmp:供临时文件使用的全局可写空间,目录存放程序在运行时产生的信息和数据;

/usr:最庞大的目录,安装的软件、共享的库,包括文件和静态制度程序数据;

/var:特定于此系统的可变数据,在系统启动之间保持永久性;

/lib:根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文件;

/mnt:系统管理员临时安装文件系统的安装点;

/proc:文件系统是一个伪的文件系统,就是说它是一个实际上不存在的目录,因而这是一个非常特殊的目录;

在这么多文件中,又分了好几个文件类型,其中有以下几种:

  • 普通文件:C语言元代码、SHELL脚本、二进制的可执行文件等。分为纯文本和二进制。
  • 目录文件:目录,存储文件的唯一地方。
  • 链接文件:指向同一个文件或目录的的文件。
  • 特殊文件:与系统外设相关的,通常在/dev下面。分为块设备和字符设备。 

这么多文件,通过软连接和硬链接两连接方式:

  软连接:又称为符号链接,保存了其代表的文件的绝对路径,是另外一种文件,在硬盘上有独立的区块,访问时替换自身路径。

  硬链接:与普通文件没什么不同,inode 都指向同一个文件在硬盘中的区块

Linux不使用文件名扩展来识别文件的类型。相反,Linux根据文件的头内容来识别其类型。为了提高文件可读性您仍可以使用文件名扩展,但这对 Linux 系统来说没有任何作用。不过,有一些应用程序,比如 Web 服务器,可能使用命名约定来识别文件类型,但这只是特定的应用程序的要求而不是 Linux 系统本身的要求。
    Linux通过文件访问权限来判断文件是否为可执行文件。任何一个文件都可以赋予可执行权限,这样程序和脚本的创建者或管理员可以将它们识别为可执行文件。这样做有利于安全。保存到系统上的可执行的文件不能自动执行,这样就可以防止许多脚本病毒。

文件目录管理命令:

cat

查看文件的内容。全程式concatenate的意思,将文件内容连续输出到屏幕上。第一行到最后一行显示

tac

和cat刚好相反 是从最后一行到第一行的方式查看。

      cat有个比较不好的地方时当文件比较大时候没办法看清楚,这个时候可以用more或者Less命令。

      more

      如果使用grep或者find等命令时,可以配合使用more一页一页的查看。如果看到一半想退出,则敲入’q’即可退出。

      文件目录与权限: chmod

      文件查找:

      which

     该命令用于查询通过PATH路径到该路径内查找可执行文件。

       find

       该命令用于在指定路径下查找文件。不是通过数据来查询,所以速度会比较慢。

原创文章,作者:phosphor,如若转载,请注明出处:http://www.178linux.com/76134

(0)
上一篇 2017-05-18 16:00
下一篇 2017-05-18 17:39

相关推荐

  • 编译安装httpd-2.4.9及新特性详解

    前言 前面我们讲解了httpd在CentOS6上(httpd-2.2)的相关功能配置,而CentOS7上采用了httpd-2.4的版本,那么httpd-2.4增加了哪些特性呢?接下来让我们在CentOS6.6上手动编译安装一下httpd-2.4.9,看一下和httpd-2.2有什么不同,顺便补充说一下httpd的其它功能。 环境及新特性介绍 环境介绍 系统环…

    Linux干货 2015-04-15
  • 用户权限过滤练习(w4)

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。 [root@keyou ~]# cp -r /etc/skel/ /home/tuser1 | chmod -R g-rwx,o-rw…

    系统运维 2016-11-20
  • shell脚本基础

    程序是由指令加数据组成 编程风格分为过程式和对象时 过程式:以指令为中心,数据服务于指令,适合小型程序 对象式:以数据为中心,指令服务于数据,社和大型程序 高级语言的执行方式分为编译型和解释型 编译型:先将高级语言通过编译器编译成二进制代码再执行 解释型:程序编写完成后不转换成二进制代码,在使用时才通过解释器解释运行,不生成二进制程序 shell就是一种解释…

    Linux干货 2016-08-18
  • ☞SELinux

    ☞SELinux 概述 SELinux(Secure Enhanced Linux)是美国国家安全局(NSA)和SCC开发的Linux的一个强制访问控制的安全模块。2000年以GNU GPL发布,Linux内核2.6版本后集成在内核中。它能够限制权限,进程只能访问那些在他的任务中所需要文件。 Selinux是根据最小权限模型去限制进程在对象(如文件,目录,端…

    Linux干货 2016-09-18
  • useradd命令

    useradd创建用户 使用格式: useradd[options] LOGIN -c:备注信息保存在passwd的备注栏中。 -d:用户登入时的主目录 -e:账号的失效日期,缺省表示永久有效。 -f:密码过期后多少天关闭该账号。 -g:用户所属组。 -G:用户所属的附加群组。 -m:自动创建用户的登入目录。 -M:不要自动创建用户的登入目录。 -n:取消创…

    Linux干货 2017-12-20
  • Http实践

    练习:搭建虚拟主机     (1)基于主机名实现三个虚拟主机     (2) 每虚拟主机使用独立的访问日志和错误日志     (3) 第三个虚拟主机的/admin要进行用户访问认证     (4) 在…

    Linux干货 2016-09-30