我可以不吃啊 发表于 2024-8-5 19:08:58

linux 基础知识汇总

1、Linux文件系统概述

Linux文件系统是指操作系统用来控制文件如何存储和检索的结构和逻辑。
文件系统结构


[*]根目次: /

[*]Linux文件系统从根目次(/)开始,这是所有文件和目次的起点。

[*]目次结构: Linux使用层次化目次结构,每个目次包含文件和子目次。
[*]挂载点: 各种文件系统通过挂载点(mount point)集成到文件系统的层次结构中。
文件类型


[*]平凡文件: 包含数据的文件(文本文件、二进制文件等)。
[*]目次文件: 也称为文件夹,包含其他文件或子目次。
[*]链接文件: 指向另一个文件的指针,可以是硬链接或软链接。
[*]设备文件: 代表设备的特殊文件,分为字符设备文件和块设备文件。
[*]管道文件: 用于进程间通信的文件。
根目次概述

在Linux操作系统中,根目次(/)是整个文件系统的起点。所有文件和目次都是从根目次开始的,根目次下包含了系统所需的各种子目次,每个子目次都有其特定的用途。
根目次下的常用文件夹及其用途 (仅作相识)


[*]/bin:

[*]存放基本下令的二进制文件,如ls, cp, mv, bash等,系统启动和单用户模式下需要使用这些下令。

[*]/etc:

[*]存放系统设置文件和子目次,如网络设置文件、用户账户信息、服务设置文件等。

[*]/home:

[*]每个用户的主目次的默认位置,例如用户user的主目次为/home/user。用户的个人文件和设置通常存放在这里。

[*]/lib:

[*]存放系统运行所需的共享库文件和内核模块。包括程序执行时依赖的共享库文件,如/lib/libc.so.6,头文件等。

[*]/var:

[*]存放系统运行时需要改变的数据文件,如日志文件、缓存文件、邮件队列等。

[*]/dev:

[*]包含设备文件,用于访问硬件设备,例如磁盘、终端、音频设备等。每个设备都体现为一个文件,如/dev/sda体现第一个SCSI硬盘。

[*]/proc:

[*]假造文件系统,包含系统进程和内核信息的假造文件。提供系统信息,如内存、CPU等。

[*]/root:

[*]超级用户(root)的主目次。与平凡用户的主目次不同,位于/home之外。

[*]/srv:

[*]存放服务(service)干系的数据,如HTTP服务器的网页文件、FTP服务器的数据等。

[*]/tmp:

[*]存放临时文件,系统重启后该目次下的文件会被删除。

[*]/usr:

[*]存放用户应用程序和文件,包括二进制文件、库文件、文档等。包含子目次:

[*]/usr/bin: 存放用户下令的二进制文件。
[*]/usr/lib: 存放用户下令的库文件。
[*]/usr/local: 存放本地安装的软件。


根目次结构图

下面是一张根目次下常用文件夹的结构图:
/
├── bin
├── etc
├── home
│   ├── user1
│   └── user2
├── lib
├── proc
├── root
├── dev
├── srv
├── tmp
├── usr
│   ├── bin
│   ├── lib
│   ├── local
│   │   ├── bin
│   │   └── lib
│   └── share
├── var
    ├── log
    ├── mail
    ├── cache
    └── tmp2、路径

路径是指文件或目次在文件系统中的位置。路径分为绝对路径和相对路径。
绝对路径

绝对路径是从根目次(/)开始,逐级指定文件或目次的路径。绝对路径总是唯一的,并且不依赖于当前工作目次。

[*]示例: /home/user/docs/file.txt
在这个例子中,路径从根目次开始,依次经过home、user、docs目次,最后指向file.txt文件。
相对路径

相对路径是从当前工作目次开始,逐级指定文件或目次的路径。相对路径依赖于当前工作目次,可以使用相对路径操作文件和目次而不需要知道它们的绝对位置。

[*]示例:

[*]当前目次: /home/user
[*]相对路径: docs/file.txt

在这个例子中,相对路径docs/file.txt指向的是/home/user/docs/file.txt文件。
特殊目次符号


[*].: 当前目次
[*]..: 上一级目次
[*]~: 当前用户的主目次(通常是/home/username)
3、终端常用下令

1. ls - 列出目次内容

用来体现指定目次下的文件和子目次。

[*]ls:体现当前目次下的文件和目次。
[*]ls -l:以长格式体现文件和目次的详细信息,包括权限、所有者、文件大小和修改时间。
[*]ls -a:体现所有文件和目次,包括隐藏文件(以.开头的文件)。
[*]ls -lh:以长格式和人类可读的格式体现文件大小(例如,KB、MB)。
[*]ls -R:递归地列出所有子目次中的文件。
2. cd - 切换目次

用于在不同的目次之间导航。

[*]cd:返回用户的主目次。
[*]cd /path/to/directory:切换到指定目次。
[*]cd ..:返回上一级目次。
[*]cd -:返回到上一个工作目次。
3. mkdir - 创建目次

用来创建新目次。

[*]mkdir directory_name:创建一个名为directory_name的新目次。
[*]mkdir -p /path/to/directory:递归创建目次路径中的所有目次(如果它们不存在)。
4. touch - 创建文件

用于创建一个新的空文件或更新现有文件的时间戳。

[*]touch filename:创建一个名为filename的新文件,大概如果文件已存在,则更新其修改时间。
5. pwd - 体现当前目次

体现当前工作目次的完整路径。

[*]pwd:体现当前工作目次的绝对路径。
6. cat - 毗连并体现文件

用于检察文件内容或将文件内容毗连输出。

[*]cat filename:体现filename文件的内容。
[*]cat file1 > file2:将file1的内容复制到file2(覆盖)。
[*]cat file1 >> file2:将file1的内容追加到file2。
7. cp - 复制文件或目次

用于复制文件或目次。

[*]cp source destination:将文件source复制到destination。
[*]cp -r source_directory destination_directory:递归复制目次及其内容。
[*]cp -i source destination:在覆盖文件时提示确认。
8. mv - 移动或重命名文件或目次

用于移动文件或目次,大概重命名它们。

[*]mv source destination:将文件或目次source移动到destination,大概重命名为destination。
[*]mv -i source destination:在覆盖文件时提示确认。
9. rm - 删除文件或目次

用于删除文件或目次。

[*]rm filename:删除filename文件。
[*]rm -r directory:递归删除目次及其内容。
[*]rm -f filename:强制删除文件而不提示确认。
[*]rm -rf directory:强制递归删除目次及其内容而不提示确认。
10. chmod - 更改文件权限

用于更改文件或目次的权限。
权限可以用两种方式体现:符号体现法和八进制体现法。
符号体现法


[*]r:读权限(read)
[*]w:写权限(write)
[*]x:执行权限(execute)
使用符号体现法时,权限可以分配给用户(u)、组(g)和其他人(o)。
八进制体现法


[*]4:读权限(read)
[*]2:写权限(write)
[*]1:执行权限(execute)
符号体现法示例


[*]给文件所有者添加读、写和执行权限
chmod u+rwx filename
[*]给文件组添加读和执行权限
chmod g+rx filename
[*]给其他人添加读权限
chmod o+r filename
[*]给所有效户(用户、组和其他人)添加读、写和执行权限
chmod a+rwx filename
chmod +rwx filename # 默认是给所有的用户八进制体现法示例


[*]给文件所有者、组和其他人添加读、写和执行权限
chmod 777 filename这里的 777 体现用户、组和其他人都拥有读(4)+写(2)+执行(1)= 7 的权限。

[*]给文件所有者添加读、写和执行权限,组和其他人添加读和执行权限
chmod 755 filename这里的 755 体现用户拥有读(4)+写(2)+执行(1)= 7 的权限,而组和其他人拥有读(4)+执行(1)= 5 的权限。
这里的 -rwxrwxrwx 体现文件的权限。第一个字符体现文件类型,后面的字符分为三组,每组三个字符,分别体现所有者、组和其他人的权限。
11. chown - 更改文件所有者

用于更改文件或目次的所有者。

[*]chown user:group filename:将文件filename的所有者改为user,组改为group。
[*]chown -R user:group directory:递归更改目次及其内容的所有者。
12. find - 查找文件

用于在目次中搜索文件。

[*]find /path -name filename:在/path目次下查找名为filename的文件。
[*]find /path -type d:在/path目次下查找所有目次。
[*]find /path -type f -name "*.txt":在/path目次下查找所有扩展名为.txt的文件。
13. grep - 搜索文本

用于在文件中搜索匹配的文本。

[*]grep "pattern" filename:在filename中搜索pattern字符串。
[*]grep -r "pattern" /path:递归搜索目次/path中的pattern字符串。
[*]grep -i "pattern" filename:在filename中搜索pattern字符串(忽略大小写)。
[*]grep -v "pattern" filename:在filename中体现不包含pattern的行。
14. man - 体现下令手册页

用于体现下令的手册页,资助相识下令的详细用法。

[*]man command:体现command下令的手册页。
[*]man -k keyword:搜索包含keyword的所有手册页。
这些下令是Linux系统中最常用的一些基本下令,通过掌握这些下令,您可以有效地管理和操作文件系统。
14. 重启系统

sudo reboot14. 关闭某个进程


[*]首先,找出进程的 PID(进程ID)。例如:
pgrep process_name
[*]使用 kill 下令来终止进程。

[*]发送默认的 SIGTERM 信号(哀求进程正常终止):
kill PID
[*]如果进程没有响应,可以发送 SIGKILL 信号(强制终止):
kill -9 PID


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: linux 基础知识汇总