1568 words
8 minutes
linux basic knowledge
2024-04-02

Linux基础知识#

1. 系统目录结构#

  • /bin: ‘bin’是Binaries(二进制文件)的缩写,这个目录存放着最经常使用的命令。比如说很多个Shell的程序都会放在/bin文件夹里面。
  • /boot: 这里存放的是启动Linux时候使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /dev: dev是Device的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同。
  • /ect: etc是Etcetera的缩写,这个目录是用来存放所有的系统管理所需要的配置文件和子目录。
  • /home: 用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
  • /lib: lib是Library的缩写,这个目录里面存放这系统最基本的动态连接共享库,其作用类似于windows里的dll文件。几乎所有的应用程序都需要用到这些共享库。
  • /lost+found: 这个目录一般情况下是空的,但是当系统非法关机,这里就存放了一些文件。
  • /media: Linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux会把识别的设备挂载到这个目录下。
  • /mnt: 系统提供该目录是为了让用户临时挂载别的文件系统的,例如可以把光驱挂载在这里,就可以查看光驱内的内容了。
  • /opt: opt是optional的缩写,这是给主机额外安装软件所拜访的目录。例如安装ORACLE的数据库就可以放到这里,默认是空的。
  • /proc: proc是Processes的缩写,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
  • /root: 该目录为系统管理员,也称作超级权限者的用户主目录。
  • /sbin: 超级用户的二进制文件,存放的是系统管理员使用的系统管理程序。
  • /selinux: 这个目录是Redhat/centos特有的目录,SeLinux是一个安全机制,类似于Windows的防火墙。
  • /srv: 该目录存放一些服务启动之后需要提取的数据。
  • /sys: 该目录下安装了Linux2.6内核中新出现的一个文件系统sysfs。sysfs文件系统继承了三种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
  • /tmp: tmp是temporary的缩写,用来存放一些临时文件。
  • /usr: usr是unix shared resources(共享资源)的缩写,是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows下的program files目录。
  • //usr/bin: 系统用户使用的应用程序。
  • /usr/sbin: 超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src: 内核源码默认的放置目录。
  • /var: var是variable的缩写,这个目录中存放这不断扩充的东西,习惯将哪些经常被修改的目录放在这个目录下,包括各种日志文件。
  • /run: 一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删除或者清除。如果你的系统上有/var/run/目录,应该让它指向/run

2. 一些常用命令#

2.1 ls(列出目录)#

语法

Terminal window
ls [-aAdfFhilnrRSt] 目录名称
ls [--color={never, auto, always}] 目录名称
ls [--full-time] 目录名称

选项与参数:

  • -a: 全部的文件,联通隐藏文件一起列出来
  • -d: 仅列出目录本身,而不是列出目录内的文件数据
  • -l: 长数据串列出,包含文件的属性与权限等等数据

2.2 cd(切换目录)#

Terminal window
cd [相对路径或者绝对路径]

2.3 pwd(显示目前所在的目录)#

Terminal window
pwd [-P]

选项与参数:

  • -P: 显示出确实的路径,而非使用连接(link)的路径。

2.4 mkdir(创建新目录)#

Terminal window
mkdir [-mp] 目录名称

选项与参数:

  • -m: 配置文件的权限,直接配置,不考虑默认权限(unmask)
  • -p: 递归的创建目录。

2.5 rmdir(删除空的目录)#

Terminal window
rmdir [-p] 目录名称

选项与参数:

  • -p: 从该目录起,依次删除多级空目录,和上面的mkdir类似,可以直接一次性删除多级别=目录。

2.6 cp(复制文件或目录)#

Terminal window
cp [-dfilprsu] <source>(来源档) <destination>(目标档)
# 如果把多个文件放到directory位置
cp [options] <source1> <source2> .... <directory>

选项与参数:

  • -d: 若来源档为连接文件的属性(link file),则复制连接档属性而非文件本身。
  • -f: 为强制的意思,若目标文件已经存在且无法开启,则移除后再尝试一次。
  • -i: 若目标档已经存在时,再覆盖时会先询问动作的进行。
  • -l: 进行硬式连接(hard link)的连接档创建,而非复制文件本身。
  • -p: 连同文件的属性一起复制过去,而非使用默认属性(备份的时候使用)
  • -r: 递归持续复制。
  • -s: 复制成为符号连结档(symbolic link),亦及捷径文件。
  • -u: 若destination比source旧才覆盖destination。

2.7 rm(移除文件或目录)#

Terminal window
rm [fir] 文件或目录

选项与参数:

  • -f: 忽略不存在的文件,不会出现井盖信息。
  • -i: 互动模式,在删除前会询问使用者。
  • -r: 递归删除

2.8 mv(移动文件与目录,或修改名称)#

Terminal window
mv [-fiu] <source> <destination>
mv [options] <source1> <source2> ... <directory>

选项与参数:

  • -f: 如果目标文件已经存在,不会询问而直接覆盖。
  • -i: 如果目标文件已经存在,会询问是否覆盖。
linux basic knowledge
https://blog.cassiusblack.top/posts/linux-basic/
Author
Cassius Black
Published at
2024-04-02
License
CC BY-NC-SA 4.0