码迷,mamicode.com
首页 > 其他好文 > 详细

文件系统的管理

时间:2016-07-31 22:47:58      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:linux   根目录   程序   用户   

文件系统与目录的结构

一、文件系统:

  (一)文件系统简介

  1、文件和目录被组织成一个单根倒树状的结构;

   2、文件系统从根目录下开始,用“/”表示;

   3、根文件系统(rootfs):root filesystem

   4、根据文件系统的不同,对“名称大小写”的敏感程度也不同

  5、以.开头的文件为隐藏文件;

   6、文件有两类数据“元数据”,“数据”

  (二)文件名规则

   1、除了斜杠和NUL,所有的字符都有效,但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们;

    2、标准的linux文件系统(如ext4),文件名称大小写敏感,但是并不是所有的文件系统都对大小写敏感。

  (三)文件系统结构

   /boot:引导文件的存放目录,如:内核文件(vmlinuz),引导加载器(bootloader,grub)

    /bin:供所有用户使用的基本命令,不能关联至独立分区

    /sbin:管理类的命令,不能关联至独立分区;

   /lib:启动时程序依赖的共享库文件以及内核模块文件(32位系统)

   /lib64:64位系统启动时程序依赖的共享库文件

   /etc:配置文件目录

    /home:普通用户的家目录

    /root:root用户的家目录

    /media:可移动设备的挂载点

    /mnt:临时文件的系统挂载点

    /dev:设备文件及特殊文件的存储位置

    /opt:第三方应用程序的安装位置

    /srv:系统上运行的服务所用到的数据

    /tmp:用于存储临时文件

    /selinux:相关的安全策略等信息的存储位置

centos 6文件系统结构如下图:

技术分享

(四)linux上应用程序的组成部分

  1、二进制程序:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin;

  2、库文件:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64

  3、配置文件:/etc,/etc/DIRECTORY,/usr/local/etc

  4、帮助文件:/usr/share/man,/usr/share/doc,/usr/local/share/man,/usr/local/share/doc

  

linux下的文件类型

 -:普通文件

 d:目录文件

 b:块设备

 c:字符设备

 l:符号链接文件

 p:管道文件

 s:套接字文件

在Linux下有两种路径的表达方式:

 绝对路径:

   以正斜杠开始

   完整文件位置路径

   可用于任何想指定一个文件名的时候

 相对路径:

   不以斜线开始

   指定相对于当前工作目录或某目录的位置

   可以作为一个简短的形式指定一个文件名


(五)文件管理命令:

  cd ,ls,pwd,stat,touch,cp,alias,mv,rm,tree,mkdir,rmdir,ln,file

  接下来会详细讲解这些文件管理命令

  

1、cd:用于切换当前工作目录

  技术分享

cd..切换到上一级目录

cd 切换到家目录

cd - 切换到上次的工作目录


2、ls:列出当前目录的内容或指定目录

 ls -a:显示目录下所有的内容,包括隐藏文件

 ls -l:显示文件详细信息,包括属性、大小、属主、属组、链接等。

 ls -R:目录递归显示

 ls -S:文件按从大到小排序

 ls -u:配合-t选项,显示并按atime从新到旧排序

 技术分享技术分享3、stat:显示文件状态

文件:metadata,data

   (元数据) (数据)

时间戳:

   access time:访问时间,atime:读取文件内容

   modify time:修改时间,mtime:改变文件内容(数据)

   change time:改变时间,ctime:元数据发生改变

4、touch:创建空文件和刷新文件时间

  -a:仅改变atime

  -m:仅改变mtime

  -c:如果文件不存在,则不予创建

5、cp:复制文件和目录

  cp [option]...-Tsource dest

   -i:交互式

    -r:递归

    -a:归档

    -d:不复制原文件,只复制链接名

    -v:显示文件复制的详细信息

    -f:强制复制

    --perserv=[ATTR_LIST](用于在复制时选择需要保存的信息)

      mode:权限

     ownership:属主,属组

     timestamp:时间戳

     links:链接

     all:所有的

    -p:等同于--perserv=mode,ownership,timestamp

6、mv移动和重命令文件

   -i:交互式

   -f:强制

7、rm:删除

   -i:交互式

   -f:强制删除

   -r:递归

8、tree:显示目录树

   -d:只显示目录

   -L:指定显示的层级数目

9、mkdir:创建目录

   -p:创建目录时不报错,且可自动创建子目录

   -v:显示详细信息

   -m:创建目录时直接指定权限

10、rmdir:删除空目录

   -p:递归删除父空目录

   -v:显示详细信息

   rm -fr:递归删除目录树

六、通配符

  *:匹配零个或多个字符

  ?:匹配任何单个字符

  ~:当前用户家目录

  ~username:用户家目录

  ~+:当前工作目录

  ~-:前一个工作目录

  [0-9]:匹配一个数字范围

  [a-z]:匹配小写或大写字符

  [A-Z]:匹配A-Z中任何一个字母,A-Z:AaBb...YyZ

  [abc]:匹配abc中任何一个字母

  [^abc]:匹配除abc的所有字符

  [:digit:]:任意数字,相当于0-9

  [:lower:]:任意小写字母

  [:upper:]:任意大写字母

  [:alpha:]:任意大小写字母

  [:alnum:]:任意数字或字母

  [:space:]:空格

  [:punct:]:标点符号

技术分享七、命令别名

 在管理和维护linux系统的过程中,将会使用大量命令,重复和频繁的输入某个很长的命令或用法是不可取的,而命令别名的功能会将这个过程简化从而提高效率。通常情况下,系统已经定义了一些别名命令,这些命令我们可以通过alias命令来查看,如下:技术分享    在另外一些情况下,我们可能需要根据使用习惯来定义自己的命令别名,而这个我们可以通过alias命令来实现,如下:

 技术分享注意:这种方法定义的命令别名只有在当前目录下才能生效,如果想要永久定义别名,则需要到配置文件下定义,配置文件的路径为:~/.bashrc(仅对当前用户生效) /etc/bashrc(所有用户都能生效)


撤销别名:unalias

  技术分享


  

本文出自 “linux爱好者” 博客,请务必保留此出处http://redman.blog.51cto.com/9523069/1832395

文件系统的管理

标签:linux   根目录   程序   用户   

原文地址:http://redman.blog.51cto.com/9523069/1832395

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!