文件管理
一、Linux下的文件系统
1.1 Windows和Linux组织文件区别
操作系统 |
方式 |
Windows: |
以多根的方式组织文件 C:\ D:\ E:\ |
Linux: |
以单根的方式组织文件 / |
1.2 Linux下目录介绍

目录 |
用处 |
/bin-> /usr/bin |
普通用户命令目录,如/bin/ls ,RHEL7淘汰 |
/sbin -> /usr/sbin |
管理员命令目录,只有超级管理员可以执行 ,如/sbin/service ,RHEL7淘汰 |
/dev |
设备文件,如/dev/sda , /dev/sr0 光驱设备, /dev/null 。 注意,该目录下的文件没有办法直接使用,必须先挂载 |
/root |
root用户的家目录,超级管理员登录后会自动切换到该目录 |
/home |
普通用户家目录,用户登录后会自动切换到该目录 |
/proc |
虚拟的文件系统,反应出来的是内核,进程信息或实时状态 |
/sys |
虚拟的文件系统,类同proc,主要保存于内存相关的信息 |
/usr |
系统文件目录,相当于C:\Windows
/usr/local 软件安装的目录,相当于C:\Program Files
/usr/bin 普通用户使用的应用程序
/usr/sbin 管理员使用的应用程序
/usr/lib 库文件Glibc
/usr/lib64 库文件Glibc |
/boot |
存放系统启动相关的文件,例如kernel,grub(引导转载程序) |
/etc |
各个软件的配置文件 |
/lib -> /usr/lib |
库文件Glibc ,RHEL7淘汰 |
/lib64 -> /usr/lib64 |
库文件Glibc,RHEL7淘汰 |
/tmp |
临时文件(所有用户都可以访问和写入,进程产生的临时文件) |
/var |
存档的是一些变化文件,比如数据库,日志,邮件,网站文件… |
/media |
挂载目录,早期Linux挂载目录,用于挂载光盘以及软盘媒体设备 |
/mnt |
挂载目录,手工挂载设备的挂载点,用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区 |
/opt |
第三方软件目录,这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中,但也有人习惯把软件放到 /usr/local/ 目录中。 |
/run |
正在运行的软件的程序目录 |
1.3 Linux下重要的配置/设备文件(面试重点)
/etc/rc.local
:保存的是⽤户⾃定义开机引导启动的程序;
/etc/resolv.conf
:域名解析,是DNS客户机的配置文件,用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序
/etc/hostname
:存放主机名
/etc/hosts
:本地域名解析文件
/etc/motd
:开机自动打印文本内容
/etc/os-release
:查看本机的版本信息
/proc/cpuinfo
:处理器相关信息
/proc/meminfo
:内存相关信息
/var/log/message
:包括整体系统信息,其中也包含系统启动期间的日志
/dev/tty
:终端文件
/dev/null
:黑洞文件
/etc/profile
:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d
目录的配置文件中收集shell的设置;
/etc/bashrc
:为每一个运行bash shell
的用户执行此文件,当bash shell
被打开时,该文件被读取
~/.bash_profile
:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,它设置一些环境变量,执行用户的.bashrc
文件;
~/.bashrc
:该文件包含用于你的bash shell
的bash
信息,当登录时以及每次打开新的shell
时,该文件被读取;
~/.bash_logout
:当每次退出系统(退出bash shell
)时,执行该文件;
1.4 Linux下文件命名规则
- 理论上除了字符
/
之外,所有的字符都可以使用,但是,在目录名或文件名中,不建议使用特殊字符
- linux严格区分大小写
- 如果必须对文件名进行分割,建议使用
_
- 目录名或文件名的长度不能超过 255 个字符
- 在Linux系统中,文件扩展名的用途为了使运维人员更好的区分不同的文件类型(后缀名本身不影响文件类型)
- 文件名称一定要见名知意
1.5 文件定位路径
- 绝对路径:从/开始的路径
- 相对路径:从当前路径开始
二、文件的属性
2.1 文件类型
2.1.1 文件类型查看(file/ll)
- Linux下的文件类型并不由后缀名决定,后缀名仅仅是便于运维人员区别
- 查看文件类型方式一:
file 文件或目录名
[root@server1 ~]
/dev/sda: block special
[root@server1 ~]
/dev/tty1: character special
root@server1 ~]
/etc/hosts: ASCII text
[root@server1 ~]
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aaf05615b6c91d3cbb076af81aeff531c5d7dfd9, stripped
[root@server1 ~]
dbt3_s1.sql: ASCII text, with very long lines
[root@server1 ~]
dbt3_s1.tar.gz: gzip compressed data, from Unix, last modified: Sat Aug 1 10:52:27 2015
[root@server1 ~]
/: directory
- 查看文件类型方式二:
ls -l 文件或目录名
看第一个字符

2.1.2 文件类型对应字母说明
文件类型对应字符 |
解释 |
- |
普通文件(文本文档,二进制文件,压缩文件,电影,图片。。。) |
d (dictory) |
目录文件(蓝色) |
b (block) |
块设备文件(块设备)存储设备硬盘,U盘。例如:/dev/sda ,/dev/sda1 |
c (char) |
字符设备文件(字符设备)打印机,终端。例如/dev/tty1 ,/dev/zero |
s (socket) |
套接字文件 |
p (pipe) |
管道文件 |
l (link) |
链接文件(淡蓝色) |
2.2 文件时间
2.2.1 Linux下文件的三种时间
简名 |
全名 |
中文名 |
含义 |
atime |
access time |
访问时间 |
文件中的数据最后被访问的时间 |
mtime |
modify time |
修改时间 |
文件内容被修改的最后时间 |
ctime |
change time |
变化时间 |
文件的元数据发生变化。比如权限,所有者等 |
ll [--full-time#详细时间]
命令默认显示的是修改时间mtime

2.2.2 如何查看(stat 文件名)
- 时间戳:1970年1月1日0点0分0秒到现在的秒数
[root@server1 ~]
File: ‘anaconda-ks.cfg’
Size: