最新资讯

  • Linux基础篇之系统管理和用户管理

Linux基础篇之系统管理和用户管理

2026-01-29 01:26:33 栏目:最新资讯 4 阅读

Linux基础篇之系统管理和用户管理


文章目录

  • Linux基础篇之系统管理和用户管理
  • 前言
  • 一、文件符号
    • 1.1通配符
      • 1.1.1文件通配符
      • 1.1.2最常用通配符
      • 1.1.2次常用通配符
      • 1.1.2次常用通配符
    • 扩展:特殊的预定于符号
    • 1.2管道符
    • 1.3重定向
  • 二、用户管理
    • 2.1用户基础
    • 2.2用户组基础
    • 2.3用户组管理
      • 2.3.1 groupadd 命令
      • 2.3.2 groupmod 命令
      • 2.3.3 groupdel 命令
    • 2.4用户管理
      • 2.4.1 id 命令
      • 2.4.2 useradd命令
      • 2.4.3 Ubuntu创建用户
      • 2.4.4 userdel 命令
      • 2.4.5 passwd 命令
  • 三、权限管理
    • 3.1文件操作权限
    • 3.2文件用户属性
    • 3.3常用命令
      • 3.3.1 chown 命令
      • 3.3.2 chmod 命令
    • 3.4默认权限
    • 3.5 特殊权限
  • 四、文件管理
    • 4.1 时间戳
    • 4.2 find 命令
    • 4.3 xargs 命令
  • 五、打包压缩
    • 5.1 gz包
    • 5.2 tar包
    • 5.3 zip包
  • 总结


前言


提示:以下是本篇文章正文内容,下面案例可供参考

一、文件符号

文件符号在操作系统中指代用于标识、管理或操作文件的各类特殊字符或标记,涵盖文件类型、权限、路径结构及系统交互符号。

1.1通配符

通配符是一种用于匹配不确定字符或字符串的特殊符号,广泛应用于文件搜索、正则表达式、命令行操作和数据库查询等场景。它允许你用一个简单的模式代替多个可能的值,从而高效地进行批量匹配与操作。

通配符分类:

  • 文件通配符
  • 最常用通配符
  • 次常用通配符
  • 其他的通配符

1.1.1文件通配符

作用范围:仅匹配文件名、目录名,不匹配文件内容
匹配原则:无匹配结果时,会原样保留通配符字符(比如当前目录无.txt文件,执行ls *.txt会输出*.txt)
通用场景:所有能接「文件路径 / 文件名」的命令都支持(ls/mv/cp/rm/cat/find等)

1.1.2最常用通配符

*           匹配零个或多个字符,但不匹配 "." 开头的文件
{a..z}      表示 a-z 范围的所有内容

1.1.2次常用通配符

?           即隐藏文件匹配任何单个字符,一个汉字也算一个字符
~           当前用户家目录
[0-9]       匹配数字范围
[a-Z]       相当于a-z + A-Z 范围的一个字母
[^a-z]      匹配列表中的所有字符以外的字符

1.1.2次常用通配符

~sswang     用户sswang家目录
[0-9]       匹配数字范围
[a-z]       任何一个字母
[A-Z]       任何一个字母
[sswang]    匹配列表中的任何的一个字符
[^sswang]   匹配列表中的所有字符以外的字符
[^a-z]      匹配列表中的所有字符以外的字符
. | ~+      当前工作目录
~-          前一个工作目录

扩展:特殊的预定于符号

[:blank:]:水平空白字符
[:alnum:]:任意一个数字或者字母  
[:alpha:]:任意一个大写或者小写的字母  
[:cntrl:]:控制(非打印)字符
[:digit:]:任意一个数字,相当于0-9  
[:graph:]:图形字符  
[:lower:]:任意一个小写字母,相当于a-z 
[:print:]:可打印字符(能看得见的,不是换行符之类的)    
[:punct:]:标点符号
[:space:]:水平或垂直空白字符 
[:upper:]:任意一个大写字母,相当于A-Z  
[:xdigit:]:十六进制字符

通配符及特殊通配符案例:

  • 获取到所有匹配的内容
[root@Rocky94 ~]ls /dev/
autofs           disk      fuse          lp0     null    rtc0      stderr  tty14  tty23  tty32  tty41  tty50  tty6   ttyS2        vcs    vcsa3  vcsu6
block            dm-0      hidraw0       lp1     nvram   sda       stdin   tty15  tty24  tty33  tty42  tty51  tty60  ttyS3        vcs1   vcsa4  vfio
bsg              dm-1      hpet          lp2     port    sda1      stdout  tty16  tty25  tty34  tty43  tty52  tty61  udmabuf      vcs2   vcsa5  vga_arbiter
bus              dm-2      hugepages     lp3     ppp     sda2      tty     tty17  tty26  tty35  tty44  tty53  tty62  uhid         vcs3   vcsa6  vhci
cdrom            dma_heap  hwrng         mapper  ptmx    sg0       tty0    tty18  tty27  tty36  tty45  tty54  tty63  uinput       vcs4   vcsu   vhost-net
  • 获取所有以f为开头的文件
[root@Rocky94 ~]: ls /dev/f*
/dev/fb0  /dev/full  /dev/fuse
  • 获取以 f-l 之间任意字母为开头的文件
[root@Rocky94 ~]: ls /dev/[f-l]*
/dev/fb0   /dev/fuse     /dev/hpet   /dev/initctl  /dev/log           /dev/lp0  /dev/lp2
/dev/full  /dev/hidraw0  /dev/hwrng  /dev/kmsg     /dev/loop-control  /dev/lp1  /dev/lp3
  • 获取所有不包含[f-w] 开头的文件
[root@Rocky94 ~]: ls /dev/[^f-w]*
/dev/autofs  /dev/cdrom  /dev/console  /dev/core  /dev/cpu_dma_latency  /dev/dm-0  /dev/dm-1  /dev/dm-2  /dev/dmmidi  /dev/zero
  • 批量创建目录
[root@Rocky94 ~]: touch /tmp/{a..f}.txt
[root@Rocky94 ~]: ls /tmp/
a.txt
b.txt
c.txt
d.txt
e.txt
f.txt
  • 查看范围文件
[root@Rocky94 ~]: ls /tmp/[a-f].txt
/tmp/a.txt  /tmp/b.txt  /tmp/c.txt  /tmp/d.txt  /tmp/e.txt  /tmp/f.txt

1.2管道符

管道符(Pipe Symbol)‌ 是计算机科学中用于‌命令串联‌的核心操作符,符号为 |(竖线)。它在类 Unix 系统(如 Linux、macOS)和 Windows 命令行环境中被广泛使用,其核心功能是将‌前一个命令的标准输出(stdout)作为下一个命令的标准输入(stdin)‌,实现数据流的链式处理。

  • 符号简介
 | 这个就是管道符,常用于将两个命令隔开,然后命令间(从左向右)传递信息使用的
  • 使用格式
命令1 | 命令2
管道符左侧命令 1 执行后的结果,传递给管道符右侧的命令 2 使用
  • 实际案例
查看当前系统中的全局变量SHELL
[root@Rocky94 ~]: env | grep SHELL
SHELL=/bin/bash

1.3重定向

  • 重定向符号
在shell脚本中有两类常见的重定向符号:
覆盖式重定向:
> 表示将符号左侧的内容,以覆盖的方式输入到右侧文件中
< 表示将符号右侧的内容,以覆盖的方式输入到左侧文件或命令中
追加式重定向:
>> 表示将符号左侧的内容,以追加的方式输入到右侧文件的末尾行中
<< 表示将符号右侧的内容,以追加的方式输入到左侧文件的末尾行中
  • 案例1 - 覆盖式重定向
查看文件内容
[root@Rocky94 ~]: cat file.txt 
nihao

使用重定向符号给文件中增加内容
[root@Rocky94 ~]: echo "haode" > file.txt

再次查看文件内容
[root@Rocky94 ~]: cat file.txt 
haode

查看文件内容数量
[root@Rocky94 ~]: wc -l < file.txt
1

案例2 - 追加式重定向

查看文件内容
[root@Rocky94 ~]: cat file.txt 
haode

使用重定向符号给文件中增加内容
[root@Rocky94 ~]: echo "shoudao" >> file.txt 

再次查看文件内容
[root@Rocky94 ~]: cat file.txt 
haode
shoudao

二、用户管理

Linux是多用户多任务操作系统,具有很好的稳定性和安全性。既然是多用户,那就意味着多个用户可以
同时使用同一个Linux操作系统,因此就会涉及用户的添加、修改、删除等管理工作以及权限分配问题

在日常工作中,一般都是领导分配一个拥有一定权限的账号,然后开展各项工作,不会开放很高的权限。
但初学阶段甚至长期的工作阶段,很多人都是直接用root账户进行操作(包括我本人),这样的目的是减少权限带来的干扰,让我们更专注于相应知识点的学习。
但是在生产环境中建议慎用root,因为权限太大,控制不当会有安全隐患

2.1用户基础

  • Linux用户分类
管理员:root, 0
普通用户:1-60000 自动分配
    系统用户:对守护进程获取资源进行权限分配
       1-499 (CentOS 6 以前)
       1-999 (CentOS 7 以后) 
    登录用户:给用户进行交互式登录使用
       500+ (CentOS 6 以前)
       1000+(CentOS 7 以后)

注意:虽然系统默认的用户最大uid的值在6000【Rocky 和 ubuntu】,但是实际上,我们在创建用户的时候,可以指定用户的id远远的超过60000的值【只不过执行命令的时候,会有一个提示,但是不影响命令执行成功

2.2用户组基础

  • Linux用户组分类

在Linux系统中,为了方便批量对一个或多个用户进行快捷的操作,我们一般会将用户加入用户组中,通过对用户组的操作,从而实现对普通用户的属性的批量操作能力。用户组是通过Group ID(GID) 来唯一标识的

管理员组:root, 0
普通用户组:1-60000 自动分配
    系统用户:对守护进程获取资源进行权限分配
       1-499 (CentOS 6 以前)
       1-999 (CentOS 7 以后) 
    登录用户:给用户使用
       500+ (CentOS 6 以前)
       1000+(CentOS 7 以后)
  • 用户和用户关系
用户的主要组(primary group):
用户必须属于一个且只有一个主组,默认创建用户时会自动创建和用户名同名的组,做为用户的主要组,
由于此组中只有一个用户,又称为私有组

用户的附加组(supplementary group):  
一个用户可以属于零个或多个辅助组,附属组

2.3用户组管理

2.3.1 groupadd 命令

groupadd 命令是 Linux 和类 Unix 系统中用于创建新用户组的工具。用户组是管理用户账户和文件权限的一种有效方式,它允许你将多个用户归入同一个组中,并对这个组内的所有用户应用相同的权限设置

  • 命令格式及选项
命令格式
groupadd [options] GROUP

常用选项
-r|--system #创建一个系统组 CentOS 6之前: ID<500,CentOS 7以后: ID<1000

一般选项
-f|--force #如果组已经存在则成功退出
-g|--gid GID #新建组时指定组ID,默认是系统分配,指定值不要超过[GID_MIN,GID_MAX]
-K|--key KEY=VALUE #不使用 /etc/login.defs 中的默认值,自己指定,比如 -K 
GID_MIN=100
-o|--non-unique #允许创建有重复 GID 的组
-p|--password PASSWORD #为新组使用此加密过的密码,这里要用加密后的密文,不然就是直接是明文,在/etc/gshadow 里面
  • 创建用户组
[root@Rocky94 ~]: groupadd gourp1
[root@Rocky94 ~]: getent group gourp1
gourp1:x:1002:

*指定id创建用户组

[root@Rocky94 ~]: groupadd group2 -g 10086
[root@Rocky94 ~]: getent group group2
group2:x:10086:
  • 创建系统用户组
[root@Rocky94 ~]: groupadd -r rgroup1
[root@Rocky94 ~]: getent group rgroup1
rgroup1:x:979:

2.3.2 groupmod 命令

groupmod命令用于修改group属性

  • 命令格式及选项
命令格式:
groupmod [options] GROUP

常用选项:
-g|--gid GID #将组 ID 改为 GID
-n|--new-name NEW_GROUP #改名为 NEW_GROUP
-o|--non-unique #允许使用重复的 GID
-p|--password PASSWORD #将密码更改为(加密过的) PASSWORD
  • 修改用户组属性
修改用户组属性
[root@Rocky94 ~]: groupmod group2 -g 20086
[root@Rocky94 ~]: getent group group2
group2:x:20086:

修改用户组名字
[root@Rocky94 ~]: groupmod -n group2-1 group2 
[root@Rocky94 ~]: getent group group2
[root@Rocky94 ~]: getent group group2-1
group2-1:x:20086:

2.3.3 groupdel 命令

groupdel命令可以删除用户组

  • 命令格式及选项
命令选项
groupdel [options] GROUP

常用选项
-f|--force #强制删除,即使是用户的主组也强制删除组,但会导致无主组的用户不可用无法登录
  • 删除用户
删除指定用户组 - 只能一个一个的删
[root@Rocky94 ~]: groupdel -f gourp1
[root@Rocky94 ~]: groupdel -f group2-1

确认用户组效果
[root@Rocky94 ~]: getent group gourp1 group2-1

2.4用户管理

2.4.1 id 命令

id用于查看用户的基本信息

  • 命令格式及选项
命令格式
    id [username]
一般选项
-a #显示详细信息,默认选项
-Z|--context #仅显示安全上下文信息,要开启selinux 配置才有
-g|--group #仅显示GID,就是只显示主组ID
-G|--groups #显示主组和附加组ID,就是所有组ID
-n|--name #显示用户名或组名,要组合使用 -nu|-ng|-nG
-u|--user #仅显示UID
  • 查看用户信息
查看用户信息
[root@Rocky94 ~]: id
uid=0(root) gid=0(root) groups=0(root)

查看指定用户
[root@Rocky94 ~]: id mage
uid=1000(mage) gid=1000(mage) groups=1000(mage)

通过选项,仅显示部分内容
[root@Rocky94 ~]: id -ng root
root

2.4.2 useradd命令

useradd 命令可以创建新的Linux用户

  • 命令格式及选项
命令格式
   useradd [options] LOGIN
   useradd -D              # 查看默认的配置属性
常用选项
-u|--uid UID #指定UID
-g|--gid GID #指定用户组,-g groupname|--gid GID
-m|--create-home #创建家目录,一般用于登录用户
-p|--password PASSWORD #设置密码,这里的密码是以明文的形式存在于/etc/shadow 文件中
一般选项
-c|--comment COMMENT #新账户的 GECOS 字段
-d|--home-dir HOME_DIR #指定家目录,可以是不存在的,指定家目录,并不代表创建家目录
-s|--shell SHELL #指定 shell,可用shell在/etc/shells 中可以查看
-r|--system # 创建系统用户
# CentOS 6之前 ID<500
# CentOS7 以后 ID<1000不会创建登录用户相关信息
-M|--no-create-home #不创建家目录,一般用于不用登录的用户
-o|--non-unique #允许使用重复的 UID 创建用户
-G|--groups GROUP1[,GROUP2,...] #为用户指明附加组,组须事先存在
-N|--no-user-group #不创建同名的组,使用users组做主组
-D|--defaults #显示或更改默认的 useradd 配置,默认配置文件是 /etc/default/useradd
-e|--expiredate EXPIRE_DATE #指定账户的过期日期 YYYY-MM-DD 格式
-f|--inactive INACTIVE #密码过期之后,账户被彻底禁用之前的天数,0 表示密码过期立即禁
用,-1表示不使用此功能
-k|--skel SKEL_DIR #指定家目录模板,创建家目录,会生成一些默认文件,如果指定,就从该目录
复制文件,默认是/etc/skel/,要配合-m
-K|--key KEY=VALUE #不使用 /etc/login.defs 中的默认值,自己指定,比如 -K 
UID_MIN=100
-l|--no-log-init #不将用户添加到最近登录和登录失败记录,前面讲到的3a认证审计,就在此处   
lastlog|lastb|cat /var/log/secure
  • 创建用户

创建用户默认会添加一个组

[root@Rocky94 ~]: useradd ligo
[root@Rocky94 ~]: id ligo
uid=1001(ligo) gid=1001(ligo) groups=1001(ligo)
[root@Rocky94 ~]: getent gshadow ligo
ligo:!::

查看密码信息
[root@Rocky94 ~]: getent passwd ligo
ligo:x:1001:1001::/home/ligo:/bin/bash
结果显示:
    它是一个 可以登录的用户

自动创建了用户家目录
[root@Rocky94 ~]: ls /home/
ligo
  • 指定用户组创建用户
创建用户组
[root@Rocky94 ~]: groupadd -g 10086 group1

创建用户
[root@Rocky94 ~]: useradd -g 10086 user1

查看用户创建效果
[root@Rocky94 ~]: id user1 
uid=1002(user1) gid=10086(group1) groups=10086(group1)

在用户存在的前提下,删除用户组
[root@Rocky94 ~]: groupdel -f group1 
[root@Rocky94 ~]: id user1 
uid=1002(user1) gid=10086 groups=10086
结果显示:
强制删除用户组之后,显示该组名的地方,只能显示该组ID,如果此时新建与组ID相同的新组,则被删除的组的数据会被新组关联

再次创建相同id的用户组
[root@Rocky94 ~]: groupadd group2 -g 10086
[root@Rocky94 ~]: id user1 
uid=1002(user1) gid=10086(group2) groups=10086(group2)

2.4.3 Ubuntu创建用户

ubuntu系统创建用户默认是不创建用户组的

ubuntu系统创建用户默认是不创建用户组的
root@ubuntu2404-cs:~# getent passwd user1 
user1:x:1001:1001::/home/user1:/bin/sh

ubuntu系统创建用户时提供家目录
root@ubuntu2404-cs:~# useradd -m user2
root@ubuntu2404-cs:~# ls /home/
ligo  user2

2.4.4 userdel 命令

  • 命令格式及选项
命令格式
userdel [options] LOGIN

常用选项
-f|--force #强制删除,哪怕用户正在登录状态
-r|--remove #删除家目录和邮件目录

注意:
正在使用的用户无法删除,除非强制删除(加选项 -f)

  • 正常删除用户-不清理家目录
删除正常用户
[root@Rocky94 ~]: userdel user1 

结果 user1 的家目录仍然存在
[root@Rocky94 ~]: ls /home/
ligo  mage  user1
  • 正常删除用户-清理家目录
删除正常用户
[root@Rocky94 ~]: userdel -r user2

user2 的家目录已经被删除
[root@Rocky94 ~]: ls /home/
ligo  mage  user1

2.4.5 passwd 命令

passwd 命令主要用于更新用户密码。当你作为用户登录到系统时,你可以通过运行 passwd 命令来更改你自己的密码。如果你以 root 用户身份运行 passwd 命令并指定用户名作为选项(例如 passwd 用户名),则可以更改指定用户的密码。
场景:passwd 命令主要用于交互式地更改用户密码,适用于单个用户的情况

  • 命令格式
命令格式
passwd 用户名

在rocky 和 centos系列的系统中,可以使用如下方式:
    echo '密码' | passwd --stdin 用户名
    passwd --stdin 用户名 <<<密码
  • 修改密码
[root@Rocky94 ~]: passwd user3
Changing password for user user3.
New password:  #输入新的密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:  #重新输入新的密码
passwd: all authentication tokens updated successfully. #所有的身份令牌已经成功更新

三、权限管理

Linux系统下的文件权限体系是控制对文件和目录访问权限的重要机制,它决定了谁可以读取、修改或执行文件。这一体系是Linux系统安全性和数据保护的基础。
在linux系统中,文件的权限,主要体现在两个方面:文件属性、操作权限

3.1文件操作权限

Linux文件权限主要分为三种类型:

  • 读权限(Readable):
    允许用户读取文件内容 或 查看目录中的文件列表
    简写:r、4

  • 写权限(Writable):
    允许用户修改文件内容 或 在目录中创建、删除或重命名文件
    简写:w、2

  • 执行权限(eXcutable):
    对于文件,表示该文件是可执行的程序;对于目录,表示用户可以进入该目录
    简写:x、1

3.2文件用户属性

文件权限被分为三个级别,分别对应不同的用户群体:

  • 所有者(Owner):
    文件或目录的创建者,拥有对文件或目录的最高权限。
    简写:u

  • 所属组(Group):
    文件或目录被分配到的用户组,组内的所有成员将继承该组对该文件或目录的权限。
    简写:g

  • 其他用户(Others):
    既不是文件所有者也不是所属组成员的所有其他用户。
    简写:o

程序访问文件时的权限,取决于此程序的发起者
进程的发起者,同文件的属主:则应用文件属主权限
进程的发起者,属于文件属组;则应用文件属组权限
应用文件“其它”权限

字符表示二进制表示八进制表示备注
0000无任何权限
–x0011可执行
-w-0102可写
-wx0113可写可执行
r–1004可读
r-x1015可读可执行
rw-1106可读可写
rwx1117可读可写可执行
字符表示八进制数字表示备注
rw-r-----640属主可读写,属组可读,其它用户无任何权限
rw-r–r–644属主可读写,属组可读,其它用户可读
rwxr-xr-x755属主可读写,可执行,属组可读可执行,其它用户可读可执行

注意:
默认情况下
创建的目录权限是 755
创建的文件权限是 644

3.3常用命令

  • 查看文件属性信息
查看文件
[root@Rocky94 ~]: ls -l /tmp/a.txt
-rw-r--r--. 1 root root 0 Jan 26 15:16 /tmp/a.txt

3.3.1 chown 命令

chown 命令可以修改文件的属主,也可以修改文件属组

  • 命令格式及选项
命令格式:
   chown [OPTION]... [OWNER][:[GROUP]] FILE...
   chown [OPTION]... --reference=RFILE FILE...
注意:
        owner 表示所有者
        :group 和 .group 表示归属组
        owner. 和 owner: 表示所有者和归属组一样

常用选项
-R|--recursive #递归操作

一般选项
-c|--changes #同-v选项,但只显示更新成功的信息
-f|--silent|--quiet #不显示错误信息
-v|--verbose #显示过程--dereference #修改的是符号链接指向的文件,而不是链接文件本身
-h|--no-dereference #   修改的是符号链接文件,而不是其指向的目标文件
                    #   只有当前系统支持修改符号链接文件属性时,此项才有效
--from=user:group #根据原属主属组来修改,相当于一个查询条件
--no-preserve-root # 不特别对待“/”,意思就是将根目录当成普通目录来执行
                   # 默认如此,所以不要对根目录进行操作
--preserve-root     #不允许在"/"上递归操作
--reference=RFILE #根据其它文件权限来操作,就是复制该文件的属主属组信息给指定文件

下列选项配合 -R 使用
-H #如果选项是指向目录的软链接,则只修改指向的目录,不改变目录里面文件的属主属组
-L #更改所有遇到的符号链接指向的目录
-P #不更改符号链接指向的目录
  • 更改文件用户属性
只修改所有者属性
[root@Rocky94 ~]: chown ligo chown/a.txt

同时修改所有者和归属组的属性
[root@Rocky94 ~]: chown ligo. chown/b.txt 
[root@Rocky94 ~]: chown ligo: chown/c.txt

查看效果 
[root@Rocky94 ~]: ll chown/{a..c}.txt
-rw-r--r--. 1 ligo root 6 Jan 27 00:38 chown/a.txt
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 chown/b.txt
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 chown/c.txt

通过用户id修改文件归属
[root@Rocky94 ~]: id ligo
uid=1001(ligo) gid=1001(ligo) groups=1001(ligo)
[root@Rocky94 ~]: chown 1001 chown/d.txt 
[root@Rocky94 ~]: ll chown/d.txt 
-rw-r--r--. 1 ligo root 6 Jan 27 00:38 chown/d.txt

仅修改文件的归属组的属性
[root@Rocky94 ~]: chown .ligo chown/{d..e}.txt 
[root@Rocky94 ~]: ll chown/{d..e}.txt 
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 chown/d.txt
-rw-r--r--. 1 root ligo 6 Jan 27 00:38 chown/e.txt
  • 批量修改文件属性信息
[root@Rocky94 ~]: chown -R ligo chown
[root@Rocky94 ~]: ll chown/
total 20
-rw-r--r--. 1 ligo root 6 Jan 27 00:38 a.txt
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 b.txt
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 c.txt
drwxr-xr-x. 2 ligo root 6 Jan 27 00:36 dir1
drwxr-xr-x. 2 ligo root 6 Jan 27 00:36 dir2
drwxr-xr-x. 2 ligo root 6 Jan 27 00:36 dir3
drwxr-xr-x. 2 ligo root 6 Jan 27 00:36 dir4
drwxr-xr-x. 2 ligo root 6 Jan 27 00:36 dir5
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 d.txt
-rw-r--r--. 1 ligo ligo 6 Jan 27 00:38 e.txt

3.3.2 chmod 命令

chmod 命令可以修改文件的操作权限

  • 命令格式及选项
命令格式
   chmod [OPTION]... MODE[,MODE]... FILE...
   chmod [OPTION]... OCTAL-MODE FILE...
   chmod [OPTION]... --reference=RFILE FILE...

常用选项
-R|--recursive #递归操作
一般选项
-c|--changes #同-v选项,但只显示更新成功的信息
-f|--silent|--quiet #不显示错误信息
-v|--verbose #显示过程
--no-preserve-root #不特别对待“/”,意思就是将家目录当成普通目录来执行,默认如此,所以
不要对根目录进行操作
--preserve-root #不允许在"/"上递归操作
--reference=RFILE #根据其它文件权限来操作,就是复制该文件的权限信息给指定文件
  • 权限的增删
linux系统中,对于文件的属性和权限的操作,常见的动作主要有以下三种
 + 增加某些权限- 删除某些权限
 = 只保留某些权限,覆盖写法

>操作示例:
   u+r              # 属主加读权限
   g-x              # 属组去掉执行权限
   ug=rx            # 属主属组权限改为读和执行
   o=               # other用户无任何权限
   a=rwx            # 所有用户都有读写执行权限
   u+r,g-x          # 同时指定
  • 文件权限修改
指定文件的其他用户都增加x权限
[root@Rocky94 ~]: chmod o+x chown/{a..c}.txt
[root@Rocky94 ~]: ll chown/{a..c}.txt
-rw-r--r-x. 1 ligo root 6 Jan 27 00:38 chown/a.txt
-rw-r--r-x. 1 ligo ligo 6 Jan 27 00:38 chown/b.txt
-rw-r--r-x. 1 ligo ligo 6 Jan 27 00:38 chown/c.txt

指定文件的 归属组权限+x,其他用户权限-x
[root@Rocky94 ~]: chmod g+x,o-x chown/{a..c}.txt
[root@Rocky94 ~]: ll chown/{a..c}.txt
-rw-r-xr--. 1 ligo root 6 Jan 27 00:38 chown/a.txt
-rw-r-xr--. 1 ligo ligo 6 Jan 27 00:38 chown/b.txt
-rw-r-xr--. 1 ligo ligo 6 Jan 27 00:38 chown/c.txt

指定文件的 所有者权限为 rwx
[root@Rocky94 ~]: chmod u=rwx chown/{a..c}.txt
[root@Rocky94 ~]: ll chown/{a..c}.txt
-rwxr-xr--. 1 ligo root 6 Jan 27 00:38 chown/a.txt
-rwxr-xr--. 1 ligo ligo 6 Jan 27 00:38 chown/b.txt
-rwxr-xr--. 1 ligo ligo 6 Jan 27 00:38 chown/c.txt

指定文件的 仅有其他人员才具有w权限
[root@Rocky94 ~]: chmod 002 chown/{a..c}.txt
[root@Rocky94 ~]: ll chown/{a..c}.txt
--------w-. 1 ligo root 6 Jan 27 00:38 chown/a.txt
--------w-. 1 ligo ligo 6 Jan 27 00:38 chown/b.txt
--------w-. 1 ligo ligo 6 Jan 27 00:38 chown/c.txt

3.4默认权限

linux系统在创建文件的时候,会有一个默认的权限。普通文件的权限是 644,普通目录文件的权限是755。在Linux系统中,文件创建时的默认权限与umask(用户文件创建掩码)紧密相关。umask决定了在创建新文件或目录时哪些权限位将被屏蔽(即不允许),从而间接决定了新文件或目录的默认权限

默认情况下,Linux系统中的umask值通常为022。这个值意味着:
对于新创建的文件,默认权限为644(即所有者具有读写权限,所属组和其他用户只有读权限)。
对于新创建的目录,默认权限为755(即所有者具有读、写、执行权限,所属组和其他用户具有读和执行权限)

umask的值是从文件或目录的默认权限中减去得到的。Linux中,文件和目录的默认权限分别是:
文件:-rw-rw-rw-(即666,所有用户都具有读写权限,不需要执行)
目录:drwxrwxrwx(即777,所有用户都具有读、写、执行权限)
当创建新文件或目录时,实际权限是默认权限减去umask值后的结果。例如,
如果umask值为022,- 则新文件的权限为666 - 022 = 644,- 新目录的权限为777 - 022 = 755。

  • 命令格式及选项
命令格式:
    umask [-p] [-S] [mode]
选项  
-p #如果省略 MODE 模式,以可重用为输入的格式输入
-S #以字符显示
  • umask实际案例
查看umask
[root@Rocky94 ~]: umask 
0022
[root@Rocky94 ~]: umask -p
umask 0022
[root@Rocky94 ~]: umask -S
u=rwx,g=rx,o=rx

临时设定umask
[root@Rocky94 ~]: umask 123
[root@Rocky94 ~]: umask 
0123

还原umask
[root@Rocky94 ~]: umask 022
[root@Rocky94 ~]: umask 
0022

子shell创建文件
[root@Rocky94 ~]: ( umask 666; touch lsfile.txt )
当前shell创建文件
[root@Rocky94 ~]: touch dfile.txt

查看效果
[root@Rocky94 ~]: ll lsfile.txt dfile.txt 
-rw-r--r--. 1 root root 0 Jan 28 00:49 dfile.txt
----------. 1 root root 0 Jan 28 00:49 lsfile.txt
结果显示:
互不影响

3.5 特殊权限

在Linux文件系统中,除了基本的读(r)、写(w)、执行(x)权限外,还存在三种特殊权限,它们分别是SUID(Set User ID)、SGID(Set Group ID)和Sticky Bit。这些特殊权限用于在特定情况下提供更灵活的权限控制

  • SUID:
    当SUID权限设置在可执行文件上时,执行该文件的用户将暂时获得该文件所有者的权限。这意味着,即使执行者不是文件的所有者,他们也能以文件所有者的身份执行文件,并可能因此访问或修改只有文件所有者才能访问的资源
    表现:
    在ls -l命令的输出中,如果可执行文件的"所有者"执行ls -权限位是s(小写),则表示该文件具有SUID权限。如果该文件没有执行权限,则表现为S(大写)
    案例:
[root@Rocky94 ~]: ll /usr/bin/* | grep -E 'rws'
-rwsr-xr-x. 1 root root       57976 Oct 26  2022 /usr/bin/at
-rwsr-xr-x. 1 root root       73704 Oct 31  2023 /usr/bin/chage
-rws--x--x. 1 root root       32152 Apr 21  2024 /usr/bin/chfn
-rws--x--x. 1 root root       23896 Apr 21  2024 /usr/bin/chsh
-rwsr-xr-x. 1 root root       57240 Apr 16  2024 /usr/bin/crontab
-rwsr-xr-x. 1 root root       36872 May 16  2022 /usr/bin/fusermount
-rwsr-xr-x. 1 root root       36328 Apr 22  2024 /usr/bin/fusermount3
-rwsr-xr-x. 1 root root       78024 Oct 31  2023 /usr/bin/gpasswd
-rwsr-xr-x. 1 root root       48600 Apr 21  2024 /usr/bin/mount
-rwsr-xr-x. 1 root root       41744 Oct 31  2023 /usr/bin/newgrp
-rwsr-xr-x. 1 root root       32656 May 15  2022 /usr/bin/passwd
-rwsr-xr-x. 1 root root       31936 Apr 21  2023 /usr/bin/pkexec
-rwsr-xr-x. 1 root root       57056 Apr 21  2024 /usr/bin/su
-rwsr-xr-x. 1 root root       36224 Apr 21  2024 /usr/bin/umount
解读:
以/usr/bin/passwd文件为例,Linux系统中的/usr/bin/passwd文件就具有SUID权限。这使得普通用户能够修改自己的密码,因为passwd程序在执行时会暂时获得root权限,从而能够写入只有root才能访问的/etc/shadow文件
  • SGID:
    功能:
    SGID权限可以应用于可执行文件或目录。对于可执行文件,它与执行SUID文件类似,但影响的是执行者的组身份。然而,在实际应用中,SGID更多地被用于目录,以便在该目录下创建的新文件自动继承目录的组身份
    表现:
    在ls -l命令的输出中,如果"目录的组"执行权限位是s(小写),则表示该目录具有SGID权限
    案例:
[root@Rocky94 ~]: ll /usr/bin/* | grep -E '-sr'
-rwxr-xr-x. 1 root root       15496 Oct 26  2023 /usr/bin/recode-sr-latin
-rwxr-sr-x. 1 root tty        23912 Apr 21  2024 /usr/bin/write
解读:
在多用户环境中,SGID目录可以确保在该目录下创建的所有文件都属于同一个组,从而方便组成员之间的文件共享和管理
  • Sticky Bit:
    功能:
    Sticky Bit权限仅对目录有效。当一个目录被设置为Sticky Bit时,只有该目录的所有者、文件的所有者或root用户才能删除或重命名该目录下的文件。这有助于防止其他用户删除或移动他们不拥有但可能有权访问的文件
    表现:
    在ls -l命令的输出中,如果目录的"其他用户"执行权限位是t(小写),则表示该目录具有Sticky Bit权限
    案例:
[root@Rocky94 ~]: ll / | grep tmp
drwxrwxrwt.  18 root root 4096 Jan 28 16:35 tmp
解读:
Sticky Bit通常用于需要多用户访问但又要限制删除权限的目

特殊权限表示

权限字符表示八进制表示备注
SUIDs(小写)4如果原属主没有可执行权限,再加SUID权限,则显示为S
SGIDs(小写)2如果原属组没有可执行权限,再加SGID权限,则显示为S
STICKYt(小写)1如果other没有可执行权限,再加STICKY权限,则显示为T
  • 设定方式
SUID设定方式: u+s、u-s、4xxx
SGID设定方式: g+s、g-s、2xxx
STICKY设定方式: o+t、o-t、1xxx

四、文件管理

4.1 时间戳

文件时间戳是操作系统为每个文件记录的三个关键时间信息:‌创建时间(Created)‌、‌修改时间(Modified)‌ 和 ‌访问时间(Accessed)‌。它们不仅是文件系统的元数据,更是数据管理、审计追踪、自动化运维和版本控制的核心依据

  • 文件时间属性
以天为单位-atime [+|-]N       -mtime [+|-]N  -ctime [+|-]N
以分钟为单位-amin [+|-]N      -mmin [+|-]N  -cmin [+|-]N
#解释
N                  #表示[N,N+1),大于或等于N,小于N+1,表示第N天(分钟)     
+N                 #表示[N+1,∞],大于或等于N+1,表示N+1天之前(包括) 
-N                 #表示[0,N),大于或等于0,小于N,表示N天(分钟)内

4.2 find 命令

find命令是Unix/Linux系统中一个功能强大且灵活的命令行工具,用于在目录结构中搜索文件和目录。它不仅能够根据文件名、类型、大小、修改时间等属性进行搜索,还可以对搜索结果执行各种操作,如删除、移动、复制等。这使得find命令成为系统管理员和开发人员日常工作中不可或缺的工具

  • 工作特点:
  • 查找速度略慢
  • 精确查找
  • 实时查找
  • 查找条件丰富
  • 只搜索用户具备读取和执行权限的目录
  • 命令格式及选项
命令格式:
    find [搜索路径] [选项] [表达式]
搜索路径:指定find命令开始搜索的目录。可以是一个或多个路径。不指定路径,表示当前路径。
选项:用于定义搜索的条件,如文件名、文件类型、大小、时间等。
表达式:用于进一步细化搜索条件,可以与选项组合使用来构建复杂的搜索逻辑

常用选项
-name:按文件名匹配,区分大小写。支持使用glob,如:*, ?, [], [^],通配符要加双引号引起来
-type:按文件类型搜索。常用类型包括f(普通文件)、d(目录)、l(符号链接)等。
-size:按文件大小搜索。单位可以是c(字节)、k(千字节)、M(兆字节)、G(千兆字节)等。例
如,-size +10M查找大于10MB的文件。
-mtime:按天数查找文件最后修改时间。例如,-mtime -7查找最近7天内修改的文件。
-user:按文件所有者查找。
-group:按文件所属组查找。
-perm:按文件权限查找。
-maxdepth:限制搜索的最大深度。
-mindepth:限制搜索的最小深度。
-regextype type: 正则表达式类型,emacs|posix-awk|posix-basic|posix-egrep|posixextended
-regex pattern: 正则表达式

一般选项
-iname name          # 不区分字母大小写
-inum number         # 按inode号查找
-samefile name       # 相同inode号的文件   
-links n             # 链接数为n的文件 
-regex "PATTERN"     # 以PATTERN匹配整个文件路径,而非文件名称
  • 表达式组合
find命令支持使用逻辑操作符(如-and、-or、-not)来组合多个搜索条件,以构建复杂的搜索逻辑。此外,还可以使用括号来分组条件,但括号需要被转义或使用引号括起来

除了搜索功能外,find命令还可以对搜索结果执行各种操作。常用的操作选项包括:
-print:打印搜索结果(默认行为)
-exec:对每个匹配的文件执行指定的命令。命令以{}代表当前文件,命令结尾以 ;或 +结束。注意转义符
-ok:与-exec类似,但在执行每个命令前都会提示用户确认
-delete:直接删除匹配的文件或目录(使用时要小心)
-ls:以ls -dils的格式显示匹配的文件
  • 文件名查找
指定文件名查找
[root@Rocky94 find]: find -name test-a.log 
./test-a.log

指定文件名查找,忽略大小写
[root@Rocky94 find]: find -iname test-a.log 
./test-a.log
./test-A.log

通配符查找
[root@Rocky94 find]: find -name "*txt"
./test-a.txt
./test-b.txt
./test-A.txt
./test-B.txt

正则表达式
[root@Rocky94 find]: find -regex ".*.log$"
./test-a.log
./test-b.log
./test-A.log
./test-B.log

正则表达式路径匹配
[root@Rocky94 find]: find -regex ".*dir3.*"
./dir1/dir2/dir3
./dir1/dir2/dir3/dir4
  • 类型查找
查了当前目录下的所有目录文件
[root@Rocky94 find]: find -type d
.
./dir1
./dir1/dir2
./dir1/dir2/dir3
./dir1/dir2/dir3/dir4

查找tmp目录下所以链接和管道文件,多个类型使用逗号隔开,而且需要再单引号内部
[root@Rocky94 find]: find /tmp/ -type 'd,p'

空文件查找
[root@Rocky94 find]: find dir1/dir2/dir3/ -empty 
dir1/dir2/dir3/dir4

排除查找
排除 dir1 目录中的 txt 文件,但还是会输出 dir1
[root@Rocky94 find]: find -path './dir1' -prune -o -name "*.txt"
./dir1
./test-a.txt
./test-b.txt
./test-A.txt
./test-B.txt
  • 文件属性查找
大于2K,小于或等于3K的文件
[root@Rocky94 find]: find /var/log/ -size 3k -ls
 68243422      4 -rw-------   1 root     root         2073 Nov 14 12:23 /var/log/anaconda/dnf.librepo.log
  2541291      4 -rw-------   1 root     root         2914 Jan 26 15:13 /var/log/vmware-vmusr-root.log

查找五分钟前被访问过的文件
[root@Rocky94 find]: find -amin +5
.
./dir1
./dir1/dir2
./dir1/dir2/dir3
./dir1/dir2/dir3/dir4
./fstab
./.issue
./test-a.log
./test-a.txt
./test-b.log
./test-b.txt
./test-A.log
./test-A.txt
./test-B.log
./test-B.txt

4.3 xargs 命令

命令结果传递

作用:
xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。
xargs 一般是和管道一起使用

  • 命令格式及选项
命令格式:
    somecommand |xargs -item  command
OPTIONS:
-a file 从文件中读入作为sdtin
-E flag flag必须是一个以空格分隔的标志,当xargs分析到含有flag这个标志的时候就停止
-p 当每次执行一个argument的时候询问一次用户
-n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的
-t 表示先打印命令,然后再执行
-i 或者是-I,将xargs接收的每项名称,逐行赋值给 {},可以用 {} 代替
-r no-run-if-empty 当xargs的输入为空的时候则停止xargs,不用再去执行了
-d delim 分隔符,默认的xargs分隔符是回车,argument的分隔符是空格,这里修改的是xargs的分
隔符
  • xargs案例
从文件读取内容
[root@Rocky94 find]: xargs -a num.txt
1 2 3 4 5 6 7 8 9

从文件中读取内容时,指定内容结束符号
[root@Rocky94 find]: xargs -a num.txt -E 4
1 2 3

从文件中读取内容时,询问用户是否显示,y显示,其他不显示
[root@Rocky94 find]: xargs -a num.txt -p
echo 1 2 3 4 5 6 7 8 9?...y
1 2 3 4 5 6 7 8 9

从文件中读取内容时,指定每行显示几个内容
[root@Rocky94 find]: xargs -a num.txt -n4
1 2 3 4
5 6 7 8
9

默认xargs以空格为分隔符,可以通过-d来自定义分隔符
[root@Rocky94 find]: echo "aoufdhafouXaioufhbaoufXfaf" | xargs -dX
aoufdhafou aioufhbaouf faf

五、打包压缩

常见打包工具

  • gz包
  • tar包
  • zip包
  • 其他:z包、xz包、bz包

5.1 gz包

来自于 gzip 包
对应的文件是 .gz 后缀

  • 命令格式及选项
命令格式
    gzip [OPTION]... FILE ...
    gunzip [OPTION]... FILE ...
常用选项
-c|--stdout             #将压缩数据输出到标准输出中,并保留原文件
-d|--decompress         #解压缩,相当于gunzip
-f|--force              #覆盖己存在目标文件
-k|--keep               #保留原文件
-l|--list               #显示原文件大小,压缩文件大小,压缩比,压缩前文件名
-q|--quiet              #安静模式,忽略警告
-r|--recursive         #递归压缩目录内所有文件
-S|--suffix=SUF         #指定压缩文件后缀
-t|--test               #测试,检测压缩文件是否完整
-v|--verbose            #显示过程
-1|--fast               #最快压缩,压缩比最底,但压缩速度快
-9|--best               #最好压缩,压缩比最高,但压缩速度慢
-N                      #指定压缩等级,取值为1-9之间,默认6
  • 文件压缩
保留原文件,并显示压缩过程
[root@Rocky94 gzip]: gzip -vk fstab passwd 
fstab:	 48.9% -- created fstab.gz
passwd:	 48.9% -- created passwd.gz

[root@Rocky94 gzip]: ls
fstab  fstab.gz  passwd  passwd.gz

重定向压缩
[root@Rocky94 gzip]: gzip fstab -c > fstab1.gz

管道
[root@Rocky94 gzip]: cat passwd | gzip > pwd.gz

查看
[root@Rocky94 gzip]: ls
fstab  fstab1.gz  fstab.gz  passwd  passwd.gz  pwd.gz
  • 查看和解压
查看压缩文件信息
[root@Rocky94 gzip]: gzip -l fstab.gz passwd.gz
         compressed        uncompressed  ratio uncompressed_name
                359                 655  48.9% fstab
                360                 655  48.9% passwd
                719                1310  47.0% (totals)

删除源文件
[root@Rocky94 gzip]: rm -rf fstab

基于压缩包文件解压
[root@Rocky94 gzip]: gunzip -vkf fstab.gz 
fstab.gz:	 48.9% -- created fstab

查看效果
[root@Rocky94 gzip]: ls
fstab  fstab1.gz  fstab.gz  passwd  passwd.gz  pwd.gz

5.2 tar包

tar 即 Tape ARchive 磁带归档,可以对目录和多个文件打包成一个文件进行归档;
其本身不具备压缩功能,但可以使用参数调用相应的压缩命令进行压缩;前提是当前系统中有安装该压缩工具
此命令可以保留文件属性,推荐使用;
对应的文件是 .tar 后缀

  • 命令格式及选项
tar [OPTION...] [FILE]...
#tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]

#必选项 {A|c|d|r|t|u|x}
-A|--catenate|--concatenate        #追加 tar 文件至归档 
-c|--create                         #创建一个新归档
-d|--diff|--compare                 #找出归档和文件系统的差异
--delete                            #从归档(非磁带!)中删除
-r|--append                         #追加文件至归档结尾
-t|--list                           #列出归档内容
--test-label                        #测试归档卷标并退出
-u|--update                         #仅追加比归档中副本更新的文件
-x|--extract|--get                  #从归档中解出文件
  • 查看默认打包选项
[root@Rocky94 tar]: tar --show-defaults 
--format=gnu -f- -b20 --quoting-style=escape --rmt-command=/etc/rmt --rsh-command=/usr/bin/ssh
  • 打包
打包
[root@Rocky94 tar]: tar -cf etc.tar /etc
tar: Removing leading `/' from member names
[root@Rocky94 tar]: ll
total 24820
-rw-r--r--. 1 root root 25415680 Jan 29 00:36 etc.tar

多文件打包
[root@Rocky94 tar]: tar -cvf test.tar f1.txt f2.txt 
f1.txt
f2.txt
[root@Rocky94 tar]: ll
total 24840
-rw-r--r--. 1 root root 25415680 Jan 29 00:36 etc.tar
-rw-r--r--. 1 root root        3 Jan 29 00:37 f1.txt
-rw-r--r--. 1 root root        3 Jan 29 00:37 f2.txt
-rw-r--r--. 1 root root    10240 Jan 29 00:38 test.tar

查看压缩包里面文件列表
[root@Rocky94 tar]: tar -tvf test.tar 
-rw-r--r-- root/root         3 2026-01-29 00:37 f1.txt
-rw-r--r-- root/root         3 2026-01-29 00:37 f2.txt

向压缩包文件中,追加文件
[root@Rocky94 tar]: tar -rf test.tar f3.txt 
[root@Rocky94 tar]: tar -tvf test.tar 
-rw-r--r-- root/root         3 2026-01-29 00:37 f1.txt
-rw-r--r-- root/root         3 2026-01-29 00:37 f2.txt
-rw-r--r-- root/root         3 2026-01-29 00:40 f3.txt

从压缩包文件中,剔除文件
[root@Rocky94 tar]: tar --delete -vf test.tar f3.txt 
[root@Rocky94 tar]: tar -tvf test.tar 
-rw-r--r-- root/root         3 2026-01-29 00:37 f1.txt
-rw-r--r-- root/root         3 2026-01-29 00:37 f2.txt
  • 解压
解压文件
[root@Rocky94 tar]: tar xf test.tar 
[root@Rocky94 tar]: ls
etc.tar  f1.txt  f2.txt  test.tar

5.3 zip包

zip 可以实现打包目录和多个文件成一个文件并压缩,但可能会丢失文件属性信息,如:所有者和组信息
分别来自于 zip 和 unzip 包
对应的文件是 .zip 后缀

  • 命令格式及选项
zip [OPTION]... zipfile [FILE]...
unzip [OPTION]... zipfile [FILE]...

zip常用选项
-f                  #更换较新的文件到压缩文件内
-u                  #如果压缩包内有,则更新,如果没有,则追加进去
-d                  #从压缩包内删除指定的文件
-m                  #将文件压缩之后,删除原始文件
-r                  #递归压缩目录                           
-j                  #只保存文件名称及其内容,而不存放任何目录名称              
-l                  #压缩文件时,把LF字符置换成LF+CR字符,unzip -l 表示显示压缩文件的内容
-1                  #最快压缩,数字1              
-9                  #最高压缩比,数字9
-q                  #安静模式   
-v                  #显示过程
-c                  #替每个被压缩的文件加上注释
-z                  #给压缩包加注释,unzip -z 查看注释
-x                  #压缩时排除指定文件
-i                  #仅压缩指定文件
-D                  #压缩文件内不建立目录名称
-T                  #测试,检测压缩文件是否完整   
-X                  #不保存额外的文件属性
-y                  #直接保存符号连接,而非该链接所指向的文件
-n                  #不压缩以特定字符串结尾的文件
-P                  #加密码
          
unzip常用选项
-p                  #将压缩内容通过管道传送 
-l                  #显示压缩文件内所包含的文件
-t                  #测试,检测压缩文件是否完整  
-z                  #查看注释
-v                  #列出包内文件信息
-x                  #指定不需要解压缩的文件
-d                  #指定解压后的目标目录
-n                  #解压缩时不要覆盖原有的文件  
-q                  #安静模式 
-o                  #直接覆盖   
-a                  #对文本文件进行必要的字符转换
-j                  #不处理压缩文件中原有的目录路径 
-C                  #压缩文件中的文件名称区分大小写 
-L                  #将压缩文件中的全部文件名改为小写
-X                  #解压缩时同时回存文件原来的UID/GID
-V                  #保留VMS的文件版本信息
-K                  #解压缩后还原权限
-M                  #将输出结果送到more程序处理
  • 压缩
压缩文件
[root@Rocky94 zip]: zip -v fstab.zip fstab 
  adding: fstab	(in=655) (out=335) (deflated 49%)
total bytes=655, compressed=335 -> 49% savings
[root@Rocky94 zip]: ls
fstab  fstab.zip  passwd

查看压缩包文件内容
[root@Rocky94 zip]: unzip -l fstab.zip 
Archive:  fstab.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
      655  01-29-2026 00:50   fstab
---------                     -------
      655                     1 file

往压缩包中添加新文件
[root@Rocky94 zip]: zip fstab.zip passwd 
  adding: passwd (deflated 49%)
[root@Rocky94 zip]: unzip -l fstab.zip 
Archive:  fstab.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
      655  01-29-2026 00:50   fstab
      655  01-29-2026 00:50   passwd
---------                     -------
     1310                     2 files

递归压缩
[root@Rocky94 zip]: tree
.
├── fstab
├── fstab.zip
├── ligo
│   └── dira
│       ├── a.txt
│       ├── b.txt
│       └── c.txt
└── passwd

2 directories, 6 files
[root@Rocky94 zip]: zip -r fstab.zip ligo/
  adding: ligo/ (stored 0%)
  adding: ligo/dira/ (stored 0%)
  adding: ligo/dira/a.txt (stored 0%)
  adding: ligo/dira/b.txt (stored 0%)
  adding: ligo/dira/c.txt (stored 0%)
[root@Rocky94 zip]: unzip -l fstab.zip 
Archive:  fstab.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
      655  01-29-2026 00:50   fstab
      655  01-29-2026 00:50   passwd
        0  01-29-2026 00:54   ligo/
        0  01-29-2026 00:54   ligo/dira/
        0  01-29-2026 00:54   ligo/dira/a.txt
        0  01-29-2026 00:54   ligo/dira/b.txt
        0  01-29-2026 00:54   ligo/dira/c.txt
---------                     -------
     1310                     7 files
  • 设置密码
非交互式加密解密
[root@Rocky94 zip]: zip -vP 123456 test.zip /etc/fstab 
  adding: etc/fstab	(in=655) (out=335) (deflated 49%)
total bytes=655, compressed=347 -> 47% savings
[root@Rocky94 zip]: unzip -P 123456 test.zip 
Archive:  test.zip
  inflating: etc/fstab               
[root@Rocky94 zip]: ls
etc  fstab  fstab.zip  ligo  passwd  test.zip
[root@Rocky94 zip]: ls etc/
fstab

交互式加密解密
[root@Rocky94 zip]: ls etc/
fstab
[root@Rocky94 zip]: zip -ve test1.zip /etc/passwd
Enter password: #输入密码
Verify password: #输入验证密码
  adding: etc/passwd	(in=655) (out=335) (deflated 49%)
total bytes=655, compressed=347 -> 47% savings
[root@Rocky94 zip]: unzip test1.zip 
Archive:  test1.zip
[test1.zip] etc/passwd password: #输入解压密码
  inflating: etc/passwd 
  • 解压缩
[root@Rocky94 zip]: unzip -v test.zip 
Archive:  test.zip
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
     655  Defl:N      335  49% 11-14-2025 12:11 1bfcf981  etc/fstab
--------          -------  ---                            -------
     655              335  49%                            1 file


总结

以上就是我们的Ubuntu24.04系统的一个安装过程啦!希望能帮助到大家!
如果觉得有用的话,麻烦点赞收藏,转发给更多需要的人看吧!
有问题可以私信我一起沟通哈~

本文地址:https://www.yitenyun.com/1063.html

搜索文章

Tags

#ios面试 #ios弱网 #断点续传 #ios开发 #objective-c #ios #ios缓存 #服务器 #python #pip #conda #kubernetes #笔记 #平面 #容器 #linux #学习方法 #远程工作 香港站群服务器 多IP服务器 香港站群 站群服务器 #Trae #IDE #AI 原生集成开发环境 #Trae AI #分阶段策略 #模型协议 #人工智能 #微信 #运维 #科技 #深度学习 #自然语言处理 #神经网络 #物联网 #websocket #学习 #github #git #docker #Conda # 私有索引 # 包管理 #华为云 #部署上线 #动静分离 #Nginx #新人首发 #开源 #fastapi #html #css #kylin #进程控制 #低代码 #爬虫 #音视频 #数信院生信服务器 #Rstudio #生信入门 #生信云服务器 #开发语言 #云原生 #iventoy #VmWare #OpenEuler #后端 #数据库 #harmonyos #鸿蒙PC #内网穿透 #网络 #cpolar #vscode #mobaxterm #计算机视觉 #分布式 #华为 #银河麒麟高级服务器操作系统安装 #银河麒麟高级服务器V11配置 #设置基础软件仓库时出错 #银河麒高级服务器系统的实操教程 #生产级部署银河麒麟服务系统教程 #Linux系统的快速上手教程 #FTP服务器 #MobaXterm #ubuntu #缓存 #sql #AIGC #langchain #agi #node.js #tcp/ip #qt #C++ #Dell #PowerEdge620 #内存 #硬盘 #RAID5 #RTP over RTSP #RTP over TCP #RTSP服务器 #RTP #TCP发送RTP #hadoop #hbase #hive #zookeeper #spark #kafka #flink #算法 #大数据 #pytorch #ssh #Harbor #unity #c# #游戏引擎 #mcu #flask #内存治理 #django #android #腾讯云 #http #项目 #高并发 #golang #java #redis #gemini #gemini国内访问 #gemini api #gemini中转搭建 #Cloudflare #mysql #多个客户端访问 #IO多路复用 #回显服务器 #TCP相关API #我的世界 #经验分享 #安卓 #pycharm #web安全 #安全 #Ansible # 自动化部署 # VibeThinker #uni-app #小程序 #notepad++ #Ubuntu服务器 #硬盘扩容 #命令行操作 #VMware #儿童书籍 #儿童诗歌 #童话故事 #经典好书 #儿童文学 #好书推荐 #经典文学作品 #自动化 #ansible #nginx #企业开发 #ERP #项目实践 #.NET开发 #C#编程 #编程与数学 #vllm #大模型 #Streamlit #Qwen #本地部署 #AI聊天机器人 #ARM服务器 # GLM-4.6V # 多模态推理 #ci/cd #jenkins #gitlab #c++ #Android #Bluedroid #udp #prometheus #前端 #serverless #everything #需求分析 #jar #数据结构 #centos #数学建模 #2026年美赛C题代码 #2026年美赛 #ide #架构 #ModelEngine #vue.js #mvp #个人开发 #设计模式 #DisM++ # 系统维护 #Ascend #MindIE #性能优化 #jvm #语音识别 #ai #spring boot #flutter #n8n #windows #mmap #nio #深度优先 #DFS #svn #RAID #RAID技术 #磁盘 #存储 #unity3d #游戏 #服务器框架 #Fantasy #课程设计 #elasticsearch #区块链 #测试用例 #生活 #transformer #spring #阿里云 #c语言 #stm32 #凤希AI伴侣 #云计算 #信息与通信 #java大文件上传 #java大文件秒传 #java大文件上传下载 #java文件传输解决方案 #智能手机 #AI #大模型学习 #iphone #journalctl #LobeChat #vLLM #GPU加速 #json #电脑 #diskinfo # TensorFlow # 磁盘健康 #网络协议 #jmeter #功能测试 #软件测试 #自动化测试 #职场和发展 #SSH反向隧道 # Miniconda # Jupyter远程访问 #gpu算力 #grafana #MC #链表 #链表的销毁 #链表的排序 #链表倒置 #判断链表是否有环 #asp.net大文件上传 #asp.net大文件上传下载 #asp.net大文件上传源码 #ASP.NET断点续传 #asp.net上传文件夹 #ping通服务器 #读不了内网数据库 #bug菌问答团队 #epoll #高级IO #计算机网络 #web #webdav #MCP #MCP服务器 #面试 #asp.net #1024程序员节 #php #LoRA # RTX 3090 # lora-scripts #javascript #react.js #fiddler #ddos #网络安全 #VS Code调试配置 #数据仓库 #文心一言 #AI智能体 #AI论文写作工具 #学术论文创作 #论文效率提升 #MBA论文写作 #银河麒麟 #系统升级 #信创 #国产化 #AI编程 #信息可视化 #claude code #codex #code cli #ccusage #数据集 #编辑器 #金融 #mcp #金融投资Agent #Agent #京东云 #中间件 #研发管理 #禅道 #禅道云端部署 #ONLYOFFICE #MCP 服务器 #arm开发 #嵌入式 #嵌入式硬件 #arm #守护进程 #复用 #screen #嵌入式编译 #ccache #distcc #毕设 #STUN # TURN # NAT穿透 #时序数据库 #里氏替换原则 #进程 #操作系统 #进程创建与终止 #shell #nas #智能路由器 #企业微信 #ollama #llm #RustDesk #IndexTTS 2.0 #本地化部署 #机器学习 #embedding #es安装 #毕业设计 #车辆排放 #oracle #sizeof和strlen区别 #sizeof #strlen #计算数据类型字节数 #计算字符串长度 #SA-PEKS # 关键词猜测攻击 # 盲签名 # 限速机制 #树莓派4b安装系统 #我的世界服务器搭建 #minecraft #程序人生 #蓝桥杯 #生信 #Spring AI #STDIO协议 #Streamable-HTTP #McpTool注解 #服务器能力 #ssl #pencil #pencil.dev #设计 #sqlite #PyCharm # 远程调试 # YOLOFuse #Playbook #AI服务器 #模版 #函数 #类 #笔试 #wordpress #雨云 #RAG #全链路优化 #实战教程 #openresty #lua #WEB #压力测试 #流量监控 #laravel #openlayers #bmap #tile #server #vue #eBPF #CPU利用率 #openEuler #Hadoop #SSH Agent Forwarding # PyTorch # 容器化 #vuejs #todesk #流媒体 #NAS #飞牛NAS #监控 #NVR #EasyNVR #chatgpt #nacos #银河麒麟aarch64 #zabbix #信令服务器 #Janus #MediaSoup #TensorRT # Triton # 推理优化 #单片机 #YOLO #建筑缺陷 #红外 #数码相机 #SSH #X11转发 #Miniconda #sqlserver #密码学 #debian #改行学it #创业创新 #程序员创富 #散列表 #哈希算法 #leetcode #apache #鸭科夫 #逃离鸭科夫 #鸭科夫联机 #鸭科夫异地联机 #开服 #tdengine #制造 #涛思数据 #MS #Materials #ms-swift # 一锤定音 # 大模型微调 #deepseek #adb #risc-v #claude #cpp #microsoft #LLM #SSH公钥认证 # 安全加固 #java-ee #dify #测试工具 #opencv #数据挖掘 #screen 命令 #macos #vue上传解决方案 #vue断点续传 #vue分片上传下载 #vue分块上传下载 #iBMC #UltraISO #远程桌面 #远程控制 #推荐算法 #tensorflow #log #bash #azure #aws #版本控制 #Git入门 #开发工具 #代码托管 #ida #目标检测 #个人博客 #可信计算技术 #系统架构 #winscp #jupyter #openHiTLS #TLCP #DTLCP #商用密码算法 #tomcat #政务 #集成学习 #集成测试 #https #rocketmq #单元测试 #selenium #fabric #postgresql #DeepSeek #服务器繁忙 #powerbi #前端框架 #Clawdbot #个人助理 #数字员工 # 双因素认证 #rustdesk #p2p #连接数据库报错 #PyTorch #Docker #cursor #UDP套接字编程 #UDP协议 #网络测试 #Linux #微信小程序 #源码 #闲置物品交易系统 #umeditor粘贴word #ueditor粘贴word #ueditor复制word #ueditor上传word图片 #YOLOFuse # Base64编码 # 多模态检测 #IPv6 #DNS #Host #渗透测试 #SSRF #bootstrap #SPA #单页应用 #web3.py #C #ui #分类 #prompt #fpga开发 #YOLOv8 # 目标检测 # Docker镜像 #麒麟OS #jetty #swagger #IndexTTS2 # 阿里云安骑士 # 木马查杀 #visual studio code #mamba #模型训练 #星图GPU #mariadb #计算机 #LangGraph #CLI #Python #JavaScript #langgraph.json #CMake #Make #C/C++ #paddleocr #C# # REST API # GLM-4.6V-Flash-WEB # 高并发部署 #vps #视频去字幕 #Anything-LLM #IDC服务器 #私有化部署 #raid #raid阵列 #simulink #matlab #学术写作辅助 #论文创作效率提升 #AI写论文实测 #Triton # CUDA #OPCUA #开源软件 #电气工程 #PLC #webpack #intellij-idea #database #idea #esp32教程 #AB包 #海外服务器安装宝塔面板 #负载均衡 #翻译 #开源工具 #maven #rust #rdp #Dify #ARM架构 #鲲鹏 #算力一体机 #ai算力服务器 #青少年编程 #ComfyUI # 推理服务器 #libosinfo #微服务 #TCP #客户端 #DIY机器人工房 #科研 #博士 #windows11 #系统修复 #.net #大模型入门 #AI大模型 #select #homelab #Lattepanda #Jellyfin #Plex #Emby #Kodi #说话人验证 #声纹识别 #CAM++ #性能 #优化 #DDR #RAM #机器人 #几何学 #拓扑学 #其他 #PTP_1588 #gPTP #reactjs #web3 #wsl #Jetty # CosyVoice3 # 嵌入式服务器 #Windows #gitea #scala #1panel #vmware #webrtc #idm #网站 #截图工具 #批量处理图片 #图片格式转换 #图片裁剪 #万悟 #联通元景 #智能体 #镜像 #结构体 #SMTP # 内容安全 # Qwen3Guard #健身房预约系统 #健身房管理系统 #健身管理系统 #搜索引擎 #Reactor #Android16 #音频性能实战 #音频进阶 #智慧校园解决方案 #智慧校园一体化平台 #智慧校园选型 #智慧校园采购 #智慧校园软件 #智慧校园专项资金 #智慧校园定制开发 #SSE # AI翻译机 # 实时翻译 #模型上下文协议 #MultiServerMCPC #load_mcp_tools #load_mcp_prompt #clickhouse #agent #ai大模型 #r-tree #聊天小程序 #eclipse #spring cloud #servlet #硬件工程 #北京百思可瑞教育 #百思可瑞教育 #北京百思教育 #无人机 #Deepoc #具身模型 #开发板 #未来 #wpf #UOS #海光K100 #统信 #NFC #智能公交 #服务器计费 #FP-增长 #流程图 #论文阅读 #论文笔记 #Proxmox VE #虚拟化 #Fun-ASR # 语音识别 # WebUI #CUDA #交互 #NPU #CANN #PowerBI #企业 #风控模型 #决策盲区 #扩展屏应用开发 #android runtime #部署 #GPU服务器 #8U #硬件架构 #语言模型 #昇腾300I DUO #Coze工作流 #AI Agent指挥官 #多智能体系统 #Qwen3-14B # 大模型部署 # 私有化AI #c++20 #cosmic #程序员 #H5 #跨域 #发布上线后跨域报错 #请求接口跨域问题解决 #跨域请求代理配置 #request浏览器跨域 #运维开发 #opc ua #opc #vp9 #驱动开发 #处理器 #黑群晖 #虚拟机 #无U盘 #纯小白 #支付 #指针 #LVDS #高速ADC #东方仙盟 #游戏机 # GLM-TTS # 数据安全 #JumpServer #堡垒机 #银河麒麟操作系统 #openssh #华为交换机 #信创终端 #API限流 # 频率限制 # 令牌桶算法 #Gunicorn #WSGI #Flask #并发模型 #容器化 #性能调优 #振镜 #振镜焊接 #teamviewer #蓝湖 #Axure原型发布 #ai编程 #浏览器自动化 #python #llama #ceph #ambari #Socket网络编程 #SSH免密登录 #数据恢复 #视频恢复 #视频修复 #RAID5恢复 #流媒体服务器恢复 #muduo库 #uv #uvx #uv pip #npx #Ruff #pytest #蓝耘智算 #milvus #springboot #知识库 #910B #昇腾 #web server #请求处理流程 #上下文工程 #langgraph #意图识别 #SRS #直播 #Anaconda配置云虚拟环境 #MQTT协议 #RK3576 #瑞芯微 #硬件设计 #C语言 #chrome #RSO #机器人操作系统 #glibc #AI写作 #ArkUI #ArkTS #鸿蒙开发 #Nacos #gRPC #注册中心 #win11 #pdf #edge #迭代器模式 #观察者模式 #手机h5网页浏览器 #安卓app #苹果ios APP #手机电脑开启摄像头并排查 #IO #iot #智能家居 #go #能源 #智慧城市 #CPU #测评 #CCE #Dify-LLM #Flexus #c #勒索病毒 #勒索软件 #加密算法 #.bixi勒索病毒 #数据加密 #超算服务器 #算力 #高性能计算 #仿真分析工作站 #宝塔面板部署RustDesk #RustDesk远程控制手机 #手机远程控制 #媒体 #实时音视频 #业界资讯 #puppeteer #KMS #slmgr #mybatis #spine #POC #问答 #交付 #xlwings #Excel #移动端h5网页 #调用浏览器摄像头并拍照 #开启摄像头权限 #拍照后查看与上传服务器端 #摄像头黑屏打不开问题 #nfs #iscsi #hibernate #系统安全 #ipmitool #BMC #kmeans #聚类 #文件IO #输入输出流 #文件管理 #文件服务器 #信号处理 #tcpdump #scanf #printf #getchar #putchar #cin #cout #LabVIEW知识 #LabVIEW程序 #LabVIEW功能 #labview #大语言模型 #Java #ET模式 #非阻塞 #高并发服务器 # 大模型 # 模型训练 #企业级存储 #网络设备 #多模态 #微调 #超参 #LLamafactory #Smokeping # keep-alive #word #策略模式 #pve #排序算法 #jdk #排序 #restful #ajax #zotero #WebDAV #同步失败 #代理模式 #工具集 #大模型应用 #API调用 #PyInstaller打包运行 #服务端部署 #设备驱动 #芯片资料 #网卡 #数据分析 #软件 #本地生活 #电商系统 #商城 #ecmascript #elementui #欧拉 #aiohttp #asyncio #异步 #麒麟 # 水冷服务器 # 风冷服务器 #.netcore # IndexTTS 2.0 # 自动化运维 #pandas #matplotlib #VoxCPM-1.5-TTS # 云端GPU # PyCharm宕机 #儿童AI #图像生成 # 模型微调 #OSS #duckdb #全能视频处理软件 #视频裁剪工具 #视频合并工具 #视频压缩工具 #视频字幕提取 #视频处理工具 #SSH保活 #远程开发 #Go并发 #高并发架构 #Goroutine #系统设计 #Tracker 服务器 #响应最快 #torrent 下载 #2026年 #Aria2 可用 #迅雷可用 #BT工具通用 #cesium #可视化 #net core #kestrel #web-server #asp.net-core #大模型开发 #elk #rabbitmq #esp32 arduino #Zabbix #CosyVoice3 #语音合成 #HistoryServer #Spark #YARN #jobhistory #大模型部署 #mindie #大模型推理 #n8n解惑 #联机教程 #局域网联机 #局域网联机教程 #局域网游戏 #模拟退火算法 #EMC存储 #存储维护 #NetApp存储 #简单数论 #埃氏筛法 #产品运营 #yolov12 #研究生life #文件传输 #电脑文件传输 #电脑传输文件 #电脑怎么传输文件到另一台电脑 #电脑传输文件到另一台电脑 #eureka #mongodb #JAVA #x86_64 #数字人系统 #yum #uvicorn #uvloop #asgi #event #tornado #Termux #Samba #SSH别名 #Aluminium #Google #三维 #3D #三维重建 #rtsp #转发 #Llama-Factory # 大模型推理 #log4j #AI技术 #信创国产化 #达梦数据库 #CVE-2025-61686 #漏洞 #路径遍历高危漏洞 #Shiro #反序列化漏洞 #CVE-2016-4437 #IntelliJ IDEA #Spring Boot #neo4j #NoSQL #SQL # 代理转发 # 跳板机 #echarts #GPU #AutoDL ##租显卡 #进程等待 #wait #waitpid #HeyGem # 服务器IP # 端口7860 #大模型教程 #web服务器 #可撤销IBE #服务器辅助 #私钥更新 #安全性证明 #双线性Diffie-Hellman # 公钥认证 #5G #汇编 # GPU租赁 # 自建服务器 #VibeVoice # 语音合成 # 云服务器 #酒店客房管理系统 #论文 #土地承包延包 #领码SPARK #aPaaS+iPaaS #数字化转型 #智能审核 #档案数字化 #gateway #Comate #遛狗 #xss #VMWare Tool #MinIO服务器启动与配置详解 #代理 #平板 #零售 #交通物流 #智能硬件 #typescript #npm #H5网页 #网页白屏 #H5页面空白 #资源加载问题 #打包部署后网页打不开 #HBuilderX #CTF #插件 #DHCP #ShaderGraph #图形 #scrapy #VMware Workstation16 #服务器操作系统 #心理健康服务平台 #心理健康系统 #心理服务平台 #心理健康小程序 #arm64 #SSH复用 # 远程开发 # 远程访问 # 服务器IP配置 #串口服务器 #Modbus #MOXA #GATT服务器 #蓝牙低功耗 #nvidia #硬件 #游戏美术 #技术美术 #游戏策划 #游戏程序 #用户体验 #firefox #safari #阻塞队列 #生产者消费者模型 #服务器崩坏原因 # ControlMaster #markdown #建站 #结构与算法 #intellij idea #TLS协议 #HTTPS #漏洞修复 #运维安全 #ue5 #memory mcp #Cursor #网路编程 #百万并发 #vnstat # 远程连接 #autosar #googlecloud #C2000 #TI #实时控制MCU #AI服务器电源 #攻防演练 #Java web #红队 # 树莓派 # ARM架构 #memcache #大剑师 #nodejs面试题 #UDP的API使用 #TTS私有化 # IndexTTS # 音色克隆 #飞牛nas #fnos #ranger #MySQL8.0 #GB28181 #SIP信令 #SpringBoot #视频监控 #SSH跳板机 # Python3.11 #WT-2026-0001 #QVD-2026-4572 #smartermail #Modbus-TCP #screen命令 #WinDbg #Windows调试 #内存转储分析 # Connection refused #智能体来了 #智能体对传统行业冲击 #行业转型 #AI赋能 #系统管理 #服务 #管道Pipe #system V #chat #微PE # GLM # 服务连通性 #重构 #源代码管理 # 高并发 #矩阵 #线性代数 #AI运算 #向量 #YOLO26 #muduo #TcpServer #accept #SAP #ebs #metaerp #oracle ebs #Xshell #Finalshell #生物信息学 #组学 #国产化OS #SSH跳转 #postman # GPU集群 #智能一卡通 #门禁一卡通 #梯控一卡通 #电梯一卡通 #消费一卡通 #一卡通 #考勤一卡通 #LangFlow # 轻量化镜像 # 边缘计算 #统信UOS #win10 #qemu #ESP32 #传感器 #MicroPython #vivado license #CVE-2025-68143 #CVE-2025-68144 #CVE-2025-68145 #html5 #excel #计算几何 #斜率 #方向归一化 #叉积 #samba #copilot # 批量管理 #硬盘克隆 #DiskGenius #视觉检测 #visual studio #vim #gcc #后端框架 #服务器线程 # SSL通信 # 动态结构体 #node #机器人学习 #报表制作 #职场 #数据可视化 #用数据讲故事 #语音生成 #TTS # IP配置 # 0.0.0.0 #求职招聘 #证书 #MCP服务器注解 #异步支持 #方法筛选 #声明式编程 #自动筛选机制 #蓝牙 #LE Audio #BAP #跳槽 #JNI #galeweather.cn #高精度天气预报数据 #光伏功率预测 #风电功率预测 #高精度气象 #视觉理解 #Moondream2 #多模态AI #参数估计 #矩估计 #概率论 #lvs # 数字人系统 # 远程部署 #路由器 #CA证书 #麦克风权限 #访问麦克风并录制音频 #麦克风录制音频后在线播放 #用户拒绝访问麦克风权限怎么办 #uniapp 安卓 苹果ios #将音频保存本地或上传服务器 #Node.js # child_process #贴图 #材质 #设计师 #sentinel #Discord机器人 #云部署 #程序那些事 #dlms #dlms协议 #逻辑设备 #逻辑设置间权限 #r语言 #论文复现 #scikit-learn #随机森林 #安全威胁分析 #仙盟创梦IDE #运维工具 #GLM-4.6V-Flash-WEB # AI视觉 # 本地部署 #网络攻击模型 #动态规划 #pyqt #知识 #领域驱动 #Keycloak #Quarkus #AI编程需求分析 #自由表达演说平台 #演说 #音乐分类 #音频分析 #ViT模型 #Gradio应用 #STDIO传输 #SSE传输 #WebMVC #WebFlux #3d #服务器IO模型 #非阻塞轮询模型 #多任务并发模型 #异步信号模型 #多路复用模型 #Minecraft #Minecraft服务器 #PaperMC #我的世界服务器 # 黑屏模式 # TTS服务器 #前端开发 #protobuf #canvas层级太高 #canvas遮挡问题 #盖住其他元素 #苹果ios手机 #安卓手机 #调整画布层级 #国产开源制品管理工具 #Hadess #一文上手 #AITechLab #cpp-python #CUDA版本 #工业级串口服务器 #串口转以太网 #串口设备联网通讯模块 #串口服务器选型 #状态模式 #kong #Kong Audio #Kong Audio3 #KongAudio3 #空音3 #空音 #中国民乐 #入侵 #日志排查 #人大金仓 #Kingbase #小艺 #鸿蒙 #搜索 #Ubuntu #ESP32编译服务器 #Ping #DNS域名解析 #Spring AOP #产品经理 #就业 #面向对象 #基础语法 #标识符 #常量与变量 #数据类型 #运算符与表达式 #图像识别 #多进程 #python技巧 #软件工程 #租显卡 #训练推理 #主板 #总体设计 #电源树 #框图 #wps #Java程序员 #Java面试 #后端开发 #Spring源码 #Spring #Linly-Talker # 数字人 # 服务器稳定性 #国产操作系统 #V11 #kylinos #flume #KMS激活 #Langchain-Chatchat # 国产化服务器 # 信创 #数模美赛 #UDP #numpy #CSDN #Syslog #系统日志 #日志分析 #日志监控 #Autodl私有云 #深度服务器配置 #gnu #pjsip #双指针 #人脸识别sdk #视频编解码 #人脸识别 #AI生成 # outputs目录 # 自动化 #blender #warp #ipv6 #ffmpeg #实体经济 #商业模式 #软件开发 #数智红包 #商业变革 #创业干货 #Prometheus #FASTMCP #ZooKeeper #ZooKeeper面试题 #面试宝典 #深入解析 #Puppet # IndexTTS2 # TTS # 显卡驱动备份 #composer #symfony #java-zookeeper #交换机 #三层交换机 #高斯溅射 #coffeescript #SMP(软件制作平台) #EOM(企业经营模型) #应用系统 #内存接口 # 澜起科技 # 服务器主板 #云开发 #云服务器 #个人电脑 #AI智能棋盘 #Rock Pi S #边缘计算 #广播 #组播 #并发服务器 #MC群组服务器 #编程 #c++高并发 #CS2 #debian13 #BoringSSL #企业存储 #RustFS #对象存储 #高可用 #asp.net上传大文件 #gpu #nvcc #cuda #unix #uip #k8s #模块 # 权限修复 #RXT4090显卡 #RTX4090 #深度学习服务器 #硬件选型 # ARM服务器 # 鲲鹏 #SQL注入主机 #http头信息 #TCP服务器 #开发实战 #SMARC #ARM #全文检索 #React安全 #漏洞分析 #Next.js #树莓派 #温湿度监控 #WhatsApp通知 #IoT #MySQL #vue3 #人脸核身 #活体检测 #身份认证与人脸对比 #微信公众号 #junit #汽车 #高仿永硕E盘的个人网盘系统源码 #黑客技术 #文件上传漏洞 #ThingsBoard MCP #Kylin-Server #服务器安装 # 智能运维 # 性能瓶颈分析 #空间计算 #原型模式 #nosql #devops #戴尔服务器 #戴尔730 #装系统 #ip #A2A #GenAI #农产品物流管理 #物流管理系统 #农产品物流系统 #农产品物流 #bug #支持向量机 #数据访问 #vncdotool #链接VNC服务器 #如何隐藏光标 # 服务器IP访问 # 端口映射 #VPS #搭建 #递归 #线性dp #自动化运维 #ssm #C++ UA Server #SDK #跨平台开发 #FHSS #音诺ai翻译机 #AI翻译机 # Ampere Altra Max #sklearn #考研 #服务器解析漏洞 #nodejs #机器视觉 #6D位姿 #outlook #错误代码2603 #无网络连接 #2603 #dba #mssql #算力建设 #数据安全 #注入漏洞 #dynadot #域名 #ETL管道 #向量存储 #数据预处理 #DocumentReader #esb接口 #走处理类报异常 #b树 #L2C #勒让德到切比雪夫 #SSH密钥 #练习 #基础练习 #数组 #循环 #九九乘法表 #计算机实现 #多线程 #性能调优策略 #双锁实现细节 #动态分配节点内存 #smtp #smtp服务器 #PHP #银河麒麟部署 #银河麒麟部署文档 #银河麒麟linux #银河麒麟linux部署教程 #声源定位 #MUSIC #windbg分析蓝屏教程 #le audio #低功耗音频 #通信 #连接 #门禁 #梯控 #智能梯控 #电梯 #电梯运力 #电梯门禁 #bond #服务器链路聚合 #网卡绑定 # 远程运维 #程序开发 #程序设计 #计算机毕业设计 #大作业 #Buck #NVIDIA #交错并联 #DGX #安全架构 #SFTP #性能测试 #LoadRunner #智能制造 #供应链管理 #工业工程 #库存管理 #AI 推理 #NV #npu # ProxyJump #ServBay #TFTP #RK3588 #RK3588J #评估板 #核心板 #嵌入式开发 # OTA升级 # 黄山派 #数字孪生 #三维可视化 #ansys #ansys问题解决办法 # 网络延迟 #anaconda #虚拟环境 #远程软件 #海外短剧 #海外短剧app开发 #海外短剧系统开发 #短剧APP #短剧APP开发 #短剧系统开发 #海外短剧项目 #视频 #代理服务器 #牛客周赛 #cnn #网安应急响应 #计组 #数电 #雨云服务器 #教程 #MCSM面板 #Apple AI #Apple 人工智能 #FoundationModel #Summarize #SwiftUI #AI视频创作系统 #AI视频创作 #AI创作系统 #AI视频生成 #AI工具 #文生视频 #AI创作工具 #超时设置 #客户端/服务器 #网络编程 #挖矿 #Linux病毒 #turn #sql注入 # 服务器配置 # GPU #华为od #华为机试 #react native #AI-native #Gateway #认证服务器集成详解 #uniapp #合法域名校验出错 #服务器域名配置不生效 #request域名配置 #已经配置好了但还是报错 #uniapp微信小程序 #框架搭建 #Tokio #mtgsig #美团医药 #美团医药mtgsig #美团医药mtgsig1.2 #opc模拟服务器 #远程连接 #WRF #WRFDA #HarmonyOS #工程设计 #预混 #扩散 #燃烧知识 #层流 #湍流 #weston #x11 #x11显示服务器 #量子计算 #数据采集 #浏览器指纹 #WinSCP 下载安装教程 #FTP工具 #服务器文件传输 # 批量部署 #ngrok #ASR #SenseVoice # 键鼠锁定 #AI部署 # ms-swift #PN 结 #单例模式 #懒汉式 #恶汉式 #RWK35xx #语音流 #实时传输 #超算中心 #PBS #lsf #反向代理 #网络配置实战 #Web/FTP 服务访问 #计算机网络实验 #外网访问内网服务器 #Cisco 路由器配置 #静态端口映射 #网络运维 #数据迁移 #目标跟踪 #pxe #线性回归 #adobe #系统安装 #铁路桥梁 #DIC技术 #箱梁试验 #裂纹监测 #四点弯曲 #可再生能源 #绿色算力 #风电 #MinIO #图像处理 #CS336 #Assignment #Experiments #TinyStories #Ablation #express #cherry studio #gmssh #宝塔 #漏洞挖掘 #Exchange #free #vmstat #sar #webgl #AI应用编程 #星际航行 #agentic bi #若依 #TRO #TRO侵权 #TRO和解 #鼠大侠网络验证系统源码 #AI Agent #开发者工具 #ossinsight #EN4FE #cocos2d #图形渲染 #Karalon #AI Test #测速 #iperf #iperf3 #图论 #okhttp #范式 #计算机外设 #小智 #remote-ssh #ARM64 # DDColor # ComfyUI #节日 #YOLO11 #健康医疗 #期刊 #SCI #地理 #遥感 #Fluentd #Sonic #日志采集 #AI应用 #taro #高考 #游戏服务器断线 #工程实践 #gpt #API #Linux多线程 #bigtop #hdp #hue #kerberos #Claude #轻量化 #低配服务器 #Beidou #北斗 #SSR #信息安全 #信息收集 #零代码平台 #AI开发 #poll #传统行业 #docker安装seata #glances #电子电气架构 #系统工程与系统架构的内涵 #自动驾驶 #Routine #生产服务器问题查询 #日志过滤 #VMware创建虚拟机 #远程更新 #缓存更新 #多指令适配 #物料关联计划 #挖漏洞 #攻击溯源 #stl #IIS Crypto #强化学习 #策略梯度 #REINFORCE #蒙特卡洛 #百度 #ueditor导入word # AI部署 #材料工程 #智能电视 #m3u8 #HLS #移动端H5网页 #APP安卓苹果ios #监控画面 直播视频流 # 硬件配置 #决策树 #DooTask #阿里云RDS #sglang #防毒面罩 #防尘面罩 #编程助手 #寄存器 #Socket #程序定制 #毕设代做 #课设 #Rust #UEFI #BIOS #Legacy BIOS # 服务器迁移 # 回滚方案 #H3C #dubbo #开关电源 #热敏电阻 #PTC热敏电阻 #身体实验室 #健康认知重构 #系统思维 #微行动 #NEAT效应 #亚健康自救 #ICT人 #项目申报系统 #项目申报管理 #项目申报 #企业项目申报 #KMS 激活 #wireshark #云计算运维 #Coturn #TURN #tcp/ip #网络 #ICE #群晖 #音乐 #银河麒麟服务器系统 # HiChatBox # 离线AI #UDP服务器 #recvfrom函数 #短剧 #短剧小程序 #短剧系统 #微剧 #I/O模型 #并发 #水平触发、边缘触发 #多路复用 #高精度农业气象 #磁盘配额 #存储管理 #形考作业 #国家开放大学 #系统运维 #网络安全大赛 #VSCode # SSH #日志模块 #CNAS #CMA #程序文件 #文本生成 #CPU推理 #WAN2.2 #实时检测 #卷积神经网络 #lucene #DAG #云服务器选购 #Saas #线程 #国产PLM #瑞华丽PLM #瑞华丽 #PLM #dash #正则表达式 #HarmonyOS APP #人形机器人 #人机交互 #密码 #xml #具身智能 #统信操作系统 #rtmp #DDD #tdd #AI电商客服 #spring ai #oauth2 #大学生 #nmodbus4类库使用教程 #docker-compose #数据报系统 #IFix # 高温监控 # GPU服务器 # tmux #fs7TF #idc #ROS # 局域网访问 # 批量处理 #题解 #图 #dijkstra #迪杰斯特拉 #gerrit # 环境迁移 #NSP #下一状态预测 #aigc #内网 # Qwen3Guard-Gen-8B #N8N #旅游 #xshell #host key #Cpolar #国庆假期 #服务器告警 #经济学 #rsync # 数据同步 #dreamweaver #晶振 #分布式数据库 #集中式数据库 #业务需求 #选型误 #odoo #resnet50 #分类识别训练 #PyTorch 特性 #动态计算图 #张量(Tensor) #自动求导Autograd #GPU 加速 #生态系统与社区支持 #与其他框架的对比 #运维 #cascadeur #claudeCode #content7 #hdfs #华为od机试 #华为od机考 #华为od最新上机考试题库 #华为OD题库 #华为OD机试双机位C卷 #od机考题库 #工作 #AI+ #coze #AI入门 #隐私合规 #网络安全保险 #法律风险 #风险管理 # 串口服务器 # NPort5630 #appche #OBC #OpenHarmony #Python办公自动化 #Python办公 #FL Studio #FLStudio #FL Studio2025 #FL Studio2026 #FL Studio25 #FL Studio26 #水果软件 #clawdbot #服务器开启 TLS v1.2 #IISCrypto 使用教程 #TLS 协议配置 #IIS 安全设置 #服务器运维工具 #ftp #sftp #AI工具集成 #容器化部署 #分布式架构 #YOLO识别 #YOLO环境搭建Windows #YOLO环境搭建Ubuntu #cpu #套接字 #I/O多路复用 #字节序 #Matrox MIL #二次开发 #vertx #vert.x #vertx4 #runOnContext #CMC #自动化巡检 #0day漏洞 #DDoS攻击 #漏洞排查 #异步编程 #系统编程 #Pin #http服务器 # DIY主机 # 交叉编译 #istio #服务发现 #基金 #股票 #静脉曲张 #腿部健康 #运动 #rag #AI赋能盾构隧道巡检 #开启基建安全新篇章 #以注意力为核心 #YOLOv12 #AI隧道盾构场景 #盾构管壁缺陷病害异常检测预警 #隧道病害缺陷检测 #ARMv8 #内存模型 #内存屏障 #娱乐 #敏捷流程 #AE #jquery #边缘AI # Kontron # SMARC-sAMX8 #学术生涯规划 #CCF目录 #基金申请 #职称评定 #论文发表 #科研评价 #顶会顶刊 #fork函数 #进程创建 #进程终止 #分子动力学 #化工仿真 #session #OpenAI #故障 #JADX-AI 插件 #Archcraft #clamav #外卖配送 #语义检索 #向量嵌入 #boltbot #命令模式 #环境搭建 #starrocks #人脸活体检测 #live-pusher #动作引导 #张嘴眨眼摇头 #苹果ios安卓完美兼容 #L6 #L10 #L9 #二值化 #Canny边缘检测 #轮廓检测 #透视变换 #软件需求 #语义搜索 #嵌入模型 #Qwen3 #AI推理 #个性化推荐 #BERT模型 #Qwen3-VL # 服务状态监控 # 视觉语言模型 #tekton #因果学习 #新浪微博 #传媒 #隐函数 #常微分方程 #偏微分方程 #线性微分方程 #线性方程组 #非线性方程组 #复变函数 #DuckDB #协议 #Ward #思爱普 #SAP S/4HANA #ABAP #NetWeaver #4U8卡 AI 服务器 ##AI 服务器选型指南 #GPU 互联 #GPU算力 #Arduino BLDC #核辐射区域探测机器人 #HBA卡 #RAID卡 #esp32 #mosquito #效率神器 #办公技巧 #自动化工具 #Windows技巧 #打工人必备 #工厂模式 #Python3.11 #Spire.Office #2025年 #FRP #AI教程