Linux中的一些重要的目录及其命令

  • 了解以下重要的目录:
/home: 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/proc: 虚拟目录,是内存的映射
/sys : 文件系统访问 Linux内核
/SElinux : SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。
/bin : 普通用户可以使用的命令存放目录
/usr/lib : 系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助
/usr/local : 存放软件升级包
/var : 内容经常变化的目录。此目录下文件的大小可能改变,如缓冲文件、日志文件、缓存文件等一般会放在这里。
/tmp : 一般用户或正在执行的程序临时存放文件的目录即临时文件,任何人都可以访问,重要数据不可放置在此目录下
/etc/: 全局配置文件存放目录。系统和程序一般都可以通过修改相应的配置文件来进行配置。
/lost+found: 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
  • /proc:
  1. Linux内核提供了一种通过/proc文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。
  2. proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。
  3. 用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的(所以不同的进程下,proc信息可能不同。),所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。
下面是proc目录下的文件:

  • /sys:
  1. 该目录下是全局设备结构体系,包含所有被发现的注册在各种总线上的各种物理设备。
  2. 一般来说,所有的物理设备都按其在总线上的拓扑结构来显示,但有两个例外,即platform devices和system devices。platform devices一般是挂在芯片内部的高速或者低速总线上的各种控制器和外设,它们能被CPU直接寻址;system devices不是外设,而是芯片内部的核心结构,比如CPU,timer等,它们一般没有相关的驱动,但是会有一些体系结构相关的代码来配置它们。(sys/devices是内核对系统中所有设备的分层次表达模型,也是/sys文件系统管理设备的最重要的目录结构)
下面是/sys目录下的文件:

  • /SElinux:
  1. SELinux提供了一种灵活的强制访问控制(MAC)系统,且内嵌于Linux Kernel中。SELinux定义了系统中每个【用户】、【进程】、【应用】和【文件】的访问和转变的权限,然后它使用一个安全策略来控制这些实体(用户、进程、应用和文件)之间的交互,安全策略指定如何严格或宽松地进行检查。
  2. SELinux对系统用户(system users)是透明的,只有系统管理员需要考虑在他的服务器中如何制定严格的策略。策略可以根据需要是严格的或宽松的。
  3. 只有同时满足了【标准Linux访问控制】和【SELinux访问控制】时,主体才能访问客体。
  • /bin:
/ b i n目录包含了引导启动所需的命令或普通用户可能用的命令(可能在引导启动后)。这些命令都是二进制文件的可执行程序( b i n是b i n a r y - -二进制的简称),多是系统中重要的系统文件。
下面是/bin目录下的文件:

  • /usr/lib:
包含了程序或子系统的不变的数据文件,包括一些s i t e - w i d e配置文件。名字l i b来源于库(library); 编程的原始库也存在/usr/lib 里。当编译程序时,程序便会和其中的库进行连接。也有许多程序把配置文件存入其中。
下面是/usr/lib目录下的文件:

  • /usr/local:
本地安装的软件和其他文件放在这里。这与/ u s r很相似。用户可能会在这发现一些比较大的软件包,如t e x、e m a c s等。存放/usr/local 中安装的程序的可变数据(即系统管理员安装的程序)。注意,如果必要,即使本地安装的程序也会使用其他/var 目录,例如/var/lock 。
下面是/usr/local目录下的文件:

  • /var:
/var 包含系统一般运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化或扩充的。原来/ v a r目录中有些内容是在/ u s r中的,但为了保持/ u s r目录的相对稳定,就把那些需要经常改变的目录放到/ v a r中了。每个系统是特定的,即不通过网络与其他计算机共享。
下面是/val目录下的文件:

  • /tmp:
/tmp 目录存放程序在运行时产生的信息和数据。但在引导启动后,运行的程序最好使用/ v a r / t m p来代替/tmp ,因为前者可能拥有一个更大的磁盘空间。
下面是/tmp目录下的文件:

  • Linux系统中,磁盘上的文件和目录被组成一颗目录树,每个节点都是目录和文件。

  • 在目录执行增删查
01.cd指令
功能: 改变当前的目录。(将当前的工作目录改变到指定的目录下)
cd ..:返回上级目录

cd /home/xj : 绝对路径

cd ../Day02/ :当前目录下的相对路径

cd ~ : 进入用户家目录

cd - : 返回最近访问目录

02.touch指令:
语法: touch【选项】 文件名
功能 1.第一次使用,如果文件不存在,则显示第一次创建时间
2.第二次使用,更改时间。
(可更改文档或者目录的日期时间,包括存取时间和更改时间。)

03:mkdir指令:
语法: mkdir【选项】 dirname
功能 :在当前目录下创建一个名为“dirname”的目录
常用选项:
mkdir -p name1/name2 : 递归建立多个目录(如果文件不存在,则建立不存在的目录)
test1.c存在的时候:

test1.c不存在的时候(递归建立test1.c和test2.c):

04:rmdir指令 && rm 指令
  • rmdir是一个和mkdir相对应的命令。mkdir是建立目录,而rmdir是删除目录。
语法: rmdir【选项】 文件名
功能 :删除空目录
test1.c目录下面有一个test2.c目录:

  • rm指令可以同时删除文件或者目录
  • rm指令可以同时删除文件或者目录
语法: rm【-f-i-r-v】 文件名
功能 :删除文件或者目录
常用选项:
  • -f :即使文件属性为只读(即写是保护的),也可以直接删除。
  • -i:删除前逐一询问确认
  • -r :删除目录及其所有的文件
eg: rm -r test1.c(删除目录,需要询问)
eg: rm -rf test1.c(删除目录,直接删除(包括删除其目录下的子目录))

05.mv指令:
语法: mv [选项] 源文件(目录) 目标文件或者没目录
功能 :用来移动文件或者将文件改名
常用选项:
  • -f : 如果目标已经存在,不会询问直接覆盖
  • -i:如果目标已经存在,询问是否覆盖?
eg:将 day02 改名为 maomaochong

eg:将 maomaochong 移动到根目录下

猜你喜欢

转载自blog.csdn.net/qq_37941471/article/details/78637286