首页 文章 精选 留言 我的

精选列表

搜索[Linux Mint],共10000篇文章
优秀的个人博客,低调大师

Linux 目录处理命令总结

命令提示符 [root@localhost ~]# root:当前登录用户 localhost:主机名 ~:当前所在的目录,此处为“家”目录 #:root超级用户的提示符,如果是普通用户,则为$ 命令格式 命令 [选项] [参数] 中括号[]表示可选 查询目录中的内容:ls ls [选项] [文件或目录] 选项: -a: 显示所有文件,包括隐藏文件 -l: 显示详细信息 -d: 查看目录属性 -h: 人性化显示文件大小 -i: 显示inode 根据以上选项,敲入命令,显示结果分别如下: [root@localhost ~]# lsanaconda-ks.cfg test [root@localhost ~]# ls -a. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cache .config .cshrc .tcshrc test [root@localhost ~]# ls -l总用量 4-rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg drwxr-xr-x. 2 root root 6 Nov 12 19:26 test [root@localhost ~]# ls -l anaconda-ks.cfg -rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg [root@localhost ~]# ls -ld test/drwxr-xr-x. 2 root root 6 Nov 12 19:26 test/ [root@localhost ~]# ls -lh总用量 4.0K -rw-------. 1 root root 2.7K Nov 10 02:51 anaconda-ks.cfg drwxr-xr-x. 2 root root 6 Nov 12 19:26 test [root@localhost ~]# ls -i71259104 anaconda-ks.cfg 36099565 test 请注意观察ls -l与ls -lh命令的结果的区别 这里需要解释一下: -rw-------. 1 root root 2.7K Nov 10 02:51 anaconda-ks.cfgdrwxr-xr-x. 2 root root 6 Nov 12 19:26 test 首先第一个符号“-”(引号内的-),表示文件类型(常用的有三种,即-表示文件,d表示目录,l表示软链接文件),此外还有不常用的,为块设备文件,字符设备文件、套接字文件、管理文件。 在上述中,我们可以看到 anaconda-ks.cfg 是一个文件,而 test 是一个目录(可理解为windows的文件夹的概念)。 其次,除去第一个符号,我们来看rw-------,一共有九个字符,需分为三组,分别为rw-,---,---,每个组按照顺序分别表示u所有者,g所属组,o其他人的权限。在上述中,分别对应为 root,root。即第一个root表示所有者权限为root权限,第二个root表示所属组的权限也是root权限,对于其他人,则无所谓的权限可言。 其中,r表示可读,w表示可写,x表示执行的权限。 为了更加明白,对于anaconda-ks.cfg这个文件,这里列一个表格: 前三个字符 中间三个字符 后三个字符 rw- — — 所有者u的权限 所属组g的权限 o其他人的权限 可读可写 无权限 无权限 那么,对于 test 这个文件rwxr-xr-x,请读者自行判断它的权限。 在九个字符之后的点 “.”,表示ACL权限,之后的数字 1 表示引用计数,比如一个文件有一个软链接(类似windows快捷方式),那么它的引用计数就是2。 root 后面的2.7k表示文件的大小,再后面表示日期,最后是文件的名称。 目录处理命令 创建目录:mkdir mkdir -p [目录名] -p: 递归创建 [root@localhost ~]# lsanaconda-ks.cfg test [root@localhost ~]# mkdir otherFolder[root@localhost ~]# lsanaconda-ks.cfg otherFolder test [root@localhost ~]# mkdir folder_2/test_2mkdir: 无法创建目录"folder_2/test_2": 没有那个文件或目录 [root@localhost ~]# mkdir -p folder_2/test_2[root@localhost ~]# lsanaconda-ks.cfg folder_2 otherFolder test [root@localhost ~]# ls folder_2/test_2 如上所示,mkdir 不加选项 -p 时,可以创建一个空目录,但是无法递归创建一个包含子目录的目录。加上 -p 即可递归创建。 切换所在目录:cd cd [目录] 操作: cd ~: 进入当前用户的家目录 cd-: 进入上次目录 cd..: 进入上一级目录 cd: 回到家目录 [root@localhost ~]# lsanaconda-ks.cfg folder_2 otherFolder test [root@localhost ~]# cd /folder_2/test_2[root@localhost test_2]# cd[root@localhost ~]# cd -/root/folder_2/test_2 [root@localhost test_2]# cd ../../otherFolder[root@localhost otherFolder]# cd ..[root@localhost ~]# 注意理清概念:相对路径和绝对路径 绝对路径:从根目录一级级找下去,需要写全路径 [root@localhost ~]# cd folder_2/test_2[root@localhost test_2]# 相对路径:参照当前所在目录进行查找 [root@localhost test_2]# cd ../../otherFolder[root@localhost otherFolder]# 查询所在目录位置:pwd pwd 可以说是最简单的命令了,查询所在目录的位置 [root@localhost ~]# pwd/root [root@localhost ~]# lsanaconda-ks.cfg folder_2 otherFolder test [root@localhost ~]# cd folder_2/[root@localhost folder_2]# lstest_2 [root@localhost folder_2]# cd test_2/[root@localhost test_2]# pwd/root/folder_2/test_2 删除空目录:rmdir rmdir [目录名] 只能删除空目录,这个命令用得比较少。 [root@localhost ~]# lsanaconda-ks.cfg folder_2 otherFolder test [root@localhost ~]# rmdir otherFolder[root@localhost ~]# lsanaconda-ks.cfg folder_2 test [root@localhost ~]# rmdir folder_2rmdir: 删除 "folder_2" 失败: 目录非空 [root@localhost ~]# 删除文件或目录:rm rm -rf [文件或目录] r 表示可以同时删除文件和目录,f表示强制删除 如果不添加任何选项,那么只可以删除文件,删除时提示是否确认删除 如果只添加选项-r,那么可以删除文件也可以删除目录,删除时提示是否确认删除 如果添加了选项-rf,那么将不做任何提示删除文件或目录 [root@localhost ~]# lsabc.txt anaconda-ks.cfg folder_2 test [root@localhost ~]# rm abc.txtrm:是否删除普通空文件 "abc.txt"?y [root@localhost ~]# rm testrm: 无法删除"test": 是一个目录 [root@localhost ~]# rm -r testrm:是否删除目录 "test"?y [root@localhost ~]# lsanaconda-ks.cfg folder_2 [root@localhost ~]# rm -rf folder_2[root@localhost ~]# lsanaconda-ks.cfg [root@localhost ~]# 复制命令:cp cp [选项] [原文件或目录] [目标目录] 选项: -r: 复制目录 -p: 同时复制文件属性 -d: 若源文件是链接文件,则复制链接属性 -a: 包含以上所有选项,相当于 -rpd 在[目标目录]后面加上文件名,就是改名复制。 [root@localhost ~]# lsanaconda-ks.cfg bbc.txt folder_a folder_b [root@localhost ~]# cp bbc.txt folder_a[root@localhost ~]# ls folder_a/bbc.txt [root@localhost ~]# cp folder_a folder_bcp: 略过目录"folder_a"[root@localhost ~]# cp -r folder_a folder_b[root@localhost ~]# ls folder_bfolder_a test_1 [root@localhost ~]# ll总用量 4-rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg -rw-r--r--. 1 root root 0 Nov 13 17:21 bbc.txt drwxr-xr-x. 2 root root 20 Nov 13 17:38 folder_a drwxr-xr-x. 4 root root 34 Nov 13 17:39 folder_b [root@localhost ~]# ll folder_a总用量 0-rw-r--r--. 1 root root 0 Nov 13 17:38 bbc.txt [root@localhost ~]# cp -a bbc.txt folder_b[root@localhost ~]# ll folder_b总用量 0-rw-r--r--. 1 root root 0 Nov 13 17:21 bbc.txt drwxr-xr-x. 2 root root 20 Nov 13 17:39 folder_a drwxr-xr-x. 2 root root 6 Nov 13 17:38 test_1 [root@localhost ~]# 这里需要解释一下的是,在原文件bbc.txt中,其修改时间为 17:21,在普通复制下,它的时间这个属性是不会被复制,我们可以看到复制后的bbc.txt的时间为17:38,如果需要连同属性一起复制,那么就加上-pd或者 直接-a,如上所示,我们把bbc.txt复制到folder_b,这时我们查看属性的时候,时间属性和原属性是一致的。 在上述命令中,ll 是ls -l的简写。 剪切或改名命令:mv mv [原文件或目录] [目标目录] 如果原文件或者目录 与 目标目录在同一个目录下,那么就是重命名 如果不在同一个目录下,那么就是剪切 通过以下实践理解: [root@localhost ~]# lsanaconda-ks.cfg bbc.txt [root@localhost ~]# mv bbc.txt abc.txt[root@localhost ~]# lsabc.txt anaconda-ks.cfg [root@localhost ~]# mkdir test[root@localhost ~]# lsabc.txt anaconda-ks.cfg test [root@localhost ~]# mv abc.txt test/[root@localhost ~]# lsanaconda-ks.cfg test [root@localhost ~]# ls test/abc.txt [root@localhost ~]# 链接命令:ln ln -s [原文件] [目标文件] 生成链接文件 -s: 创建软连接 硬链接的特征: 拥有相同 i 节点和存储block块,可以看做是同一个文件 可通过i节点识别,i节点是相同的 不能跨分区 不能针对目录使用 通过上述命令,可以理解为为某个内容添加一个标签,通过打开这个标签就可以进入这个内容,硬连接,即再生成一个标签,同样可以通过这个标签进入这个内容。 如果内容被修改,那么不管从硬链接的哪个文件进入,都是被修改的。 软链接的特征: 类似windows的快捷方式 软链接拥有自己的i节点和block块,但是数据块只保存原文件的文件名和I节点号,并没有实际的文件数据 lrwxrwxrwx l为软链接(软链接的权限都为rwxrwxrwx,这只是软链接本身的权限) 修改任意文件,另一个都改变 删除原文件,软链接不能用(和windows的快捷方式一样) 硬链接: [root@localhost ~]# lsanaconda-ks.cfg [root@localhost ~]# mkdir folder[root@localhost ~]# lsanaconda-ks.cfg folder [root@localhost ~]# touch bbb.txt[root@localhost ~]# lsanaconda-ks.cfg bbb.txt folder [root@localhost ~]# ln bbb.txt folder/ccc.txt[root@localhost ~]# ll folder/总用量 0-rw-r--r--. 2 root root 0 Nov 13 18:08 ccc.txt [root@localhost ~]# ll bbb.txt -rw-r--r--. 2 root root 0 Nov 13 18:08 bbb.txt 软链接: [root@localhost ~]# mkdir folder_b[root@localhost ~]# ln -s bbb.txt folder_b/eee.txt[root@localhost ~]# ll 总用量 4-rw-------. 1 root root 2752 Nov 10 02:51 anaconda-ks.cfg -rw-r--r--. 2 root root 0 Nov 13 18:10 bbb.txt drwxr-xr-x. 2 root root 20 Nov 13 18:09 folder drwxr-xr-x. 2 root root 20 Nov 13 18:11 folder_b [root@localhost ~]# ll folder_b总用量 0lrwxrwxrwx. 1 root root 7 Nov 13 18:11 eee.txt -> bbb.txt [root@localhost ~]# rm -rf bbb.txt [root@localhost ~]# ll folder_b总用量 0lrwxrwxrwx. 1 root root 7 Nov 13 18:11 eee.txt -> bbb.txt 删除了原文件,软链接的箭头目标为红色一闪一闪,表示找不到目标文件。 常用目录作用 [root@localhost ~]# ls /bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys temp tmp usr var 说明: /根目录 /bin命令保存目录(普通用户权限) /sbin命令保存目录(root权限) /boot启动目录,包含启动相关文件,和开机有关 /dev设备文件保存目录 /etc配置文件保存目录 /home普通用户家目录 /lib系统库保存目录 /mnt系统挂载目录 /media挂载目录(常用于光盘挂载) /root超级用户家目录 /tmp临时目录 /proc直接写入内存的 /sys直接写入内存的 /usr系统软件资源目录 /var系统相关文档内容

优秀的个人博客,低调大师

linux下vim 命令详解

vi: Visual Interface 可视化接口 vim: VI iMproved VI增强版 全屏编辑器,模式化编辑器 vim模式: 编辑模式(命令模式) 输入模式 末行模式 模式转换: 编辑-->输入: i: 在当前光标所在字符的前面,转为输入模式; a: 在当前光标所在字符的后面,转为输入模式; o: 在当前光标所在行的下方,新建一行,并转为输入模式; I:在当前光标所在行的行首,转换为输入模式 A:在当前光标所在行的行尾,转换为输入模式 O:在当前光标所在行的上方,新建一行,并转为输入模式; 输入-->编辑: ESC 编辑-->末行: : 末行-->编辑: ESC, ESC 注:输入模式和末行模式之间不能直接切换 一、打开文件 vim +# :打开文件,并定位于第#行 vim +:打开文件,定位至最后一行 vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首 注:默认处于编辑模式 二、关闭文件 1、末行模式关闭文件 :q 退出 :wq 保存并退出 :q! 不保存并退出 :w 保存 :w! 强行保存 :wq --> :x 2、编辑模式下退出 ZZ: 保存并退出 三、移动光标(编辑模式) 1、逐字符移动: h: 左 l: 右 j: 下 k: 上 #h: 移动#个字符 2、以单词为单位移动 w: 移至下一个单词的词首 e: 跳至当前或下一个单词的词尾 b: 跳至当前或前一个单词的词首 #w: 移动#个单词 3、行内跳转: 0: 绝对行首 ^: 行首的第一个非空白字符 $: 绝对行尾 4、行间跳转 #G:跳转至第#行 gg: 第一行 G:最后一行 5、末行模式 .: 表示当前行 $: 最后一行 #:第#行 +#: 向下的#行 四、翻屏 Ctrl+f: 向下翻一屏 Ctrl+b: 向上翻一屏 Ctrl+d: 向下翻半屏 Ctrl+u: 向上翻半屏 五、删除单个字符 x: 删除光标所在处的单个字符 #x: 删除光标所在处及向后的共#个字符 六、删除命令: d d命令跟跳转命令组合使用 #dw, #de, #db dd: 删除当前光标所在行 #dd: 删除包括当前光标所在行在内的#行; 七、粘贴命令 p p: 如果删除或复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面 P: 如果删除或复制为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面 八、复制命令 y 用法同d命令 九、修改:先删除内容,再转换为输入模式 c: 用法同d命令 十、替换: r:单字符替换 #r: 光标后#个字符全部替换 R: 替换模式 十一、撤消编辑操作 u u:撤消前一次的编辑操作 #u: 直接撤消最近#次编辑操作 连续u命令可撤消此前的n次编辑操作 撤消最近一次撤消操作:Ctrl+r 十二、重复前一次编辑操作 .:编辑模式重复前一次编辑操作 十三、可视化模式 v: 按字符选取 V:按矩形选取 十四、查找 /PATTERN ?PATTERN n 下一个 N 上一个 十五、查找并替换 在末行模式下使用s命令 headline,footlines#PATTERN#string#g 1,$:表示全文 %:表示全文 十六、使用vim编辑多个文件 vim FILE1 FILE2 FILE3 :next 切换至下一个文件 :prev 切换至前一个文件 :last 切换至最后一个文件 :first 切换至第一个文件 :q退出当前文件 :qa 全部退出 十七、分屏显示一个文件 Ctrl+w, s: 水平拆分窗口 Ctrl+w, v: 垂直拆分窗口 在窗口间切换光标: Ctrl+w, ARROW(h,j,k,l或方向键) :qa 关闭所有窗口 十八、分窗口编辑多个文件 vim -o : 水平分割显示 vim -O : 垂直分割显示 十九、将当前文件中部分内容另存为另外一个文件 末行模式下使用w命令 :ADDR1,ADDR2w /path/to/somewhere 二十、将另外一个文件的内容填充在当前文件中 :r /path/to/somefile 附加到当前文件光标后 二十一、跟shell交互 :! COMMAND 二十二、高级话题 1、显示或取消显示行号 :set nu :set nonu mu = number 2、显示忽略或区分字符大小写 :set ic :set noic ic = ignorecase 3、设定自动缩进 :set ai :set noai ai = autoindent 4、查找到的文本高亮显示或取消 :set hlsearch :set nohlsearch 5、语法高亮 :syntax on :syntax off 注:特性当前有效,如果想要永久有效需修改配置文件 二十三、配置文件 /etc/vimrc 针对所有用户 ~/.vimrc 针对当前用户

优秀的个人博客,低调大师

linux资源管理命令

一、系统资源 网络资源、存储资源,计算资源 二、系统资源管理名命令 1.查看目录下的文件使用情况 du -sh 目录/文件 注:du -sh查看的是目录/文件占用block块的大小 ll -h查看文件/目录的本身大小 2.查看文件系统(格式化好的分区)的使用情况 df -h 注:查看文件系统使用i节点的情况 df -i 查看文件系统的使用情况,同时查看文件系统的格式 df -Th 3.查看内存使用情况 free -m/g/k 4.进程与线程 1)当一个应用程序运行时,会在内存和CPU中产生一个或多个与该应用程序对应的进程 2)每个进程下,存在多个线程 3)进程是系统资源管路的最小单位,线程是程序运行的最小单位 4)系统内最高进程是systemd进程,它在系统启动是诞生,是系统所有其他进程的父进程 5)进程的诞生是通过派生,派生出其他的进程的进程被称为父进程,被派生的进程称为“子进程” 6)进程在完成被执行后,会退出 7)如果一个子进程没有被执行,其父进程就退出了,那么该子进程被称为“孤儿进程”,“孤儿进程”会被systemd进程接管 8)如果一个进程以被执行,但不释放资源,那么该进程被称为“僵尸进程” 5.查看系统进程情况 ps -elf :侧重于查看父进程和子进程间的关系(PID、PPID、NI) ps aux :侧重于查看每个进程占用的系统资源(CPU、内存)的情况(PID、%CPU、%MEN、STAT) 注:在使用 ps aux时,重点关注状态为z的僵尸进程 例:查看系统占用CPU最高的前五个进程 ps aux |sed 1d|sort -rn -k3|head -n5 查看系统占用内存最高的前五个进程 ps aux |sed 1d|sort -rn -k4|head -n5 查看系统内的僵尸进程,输出僵尸进程的PID、STAT ps aux|awk '$8 ~/z/'|awk '{print $2,$8}' 6.以树形机构显示系统进程 pstree 注:如果没有该命令,可以使用yum进行安装 yum install psmisc -y 显示进程PID pstree -p 用户名 7.显示当前系统信息 top 实时显示当前系统状态(每隔3秒刷新一次) 内置命令: h 帮助(ESC或q退出帮助) 空格 立即刷新 s 设置刷新时间 r 设置一个进程的优先级(-20到19,-20优先级最高) k 终止一个进程 q 退出top 注:仅显示一个top的输出结果:top -n1 8.显示进程打开的文件/目录 1)显示进程打开的文件/目录 losf 文件/目录 例:显示/mnt/cdrom 被哪个进程占用 losf /mnt/cdrom 2)显示进程打开的端口号 例:显示TCP22号端口被哪个进程占用 lsof -i tcp:22 3)显示root账户打开的所有文件 lsof -u root 4)显示PID为1的进程打开的所有文件 lsof -p l 9.显示系统负载 uptime 10.向其他进程发送信号 kill -信号名/信号代码 进程的PID 注:共64个信号,前32个信号被称为非实时信号,后32个信号,称为实时信号 kill -l查看说有信号 SIGHUP 1 使程序退出或重新加载 SIGINT 2 中断当前程序 SIGKILL 9 使程序强制退出 SIGTERN 15 使程序自然退出 SIGCONT 18 使暂停的程序继续运行 SIGSTOP 19 使正在运行的程序暂停 SIGSTP 20 使正在运行的程序终止 11.控制所有同名进程 killall -信号名/信号代码 进程名 12.进程调度 1)前台命令/程序放入后台执行;& 例:将命令ping 127.0.0.1> /dev/null 放入后台运行 ping 127.0.0.1> /dev/null & 2)前台命令/程序放入后台暂停(挂起):ctrl+Z 3)后台暂停的命令/程序继续执行:bg 后台进程编号 4)将后台程序放入前台运行:fg 后台进程编号 5)杀死后台程序:kill -9 %后台进程编号 6)查看后台程序:jobs 13.nohup 常用于程序的启动。当前中终端退出后,在当前终端执行的命令/程序依然执行 nohup 命令/程序/脚本 14.优先级 多个程序以队列的方式等待CPU的处理,可以对程序赋予优先级以确保哪些程序可以优先被执行 优先级从-20(最高)到19(最低) 1)在程序启动时服务程序优先级 nice -优先级 程序/脚本/命令 & 例:将 ping 127.0.0.1进程优先级设置为-20 nice --20 ping 127.0.0.1 将ping 127.0.0.1进程优先级设置为19 nice -19 ping 127.0.0.1 2)修改程序的优先级 renice 优先级 命令/程序/脚本 例:将PID为25245的进程优先级调整为-19 renice -19 25245 将PID为25245的进程优先级调整为+20 renice 20 25245

优秀的个人博客,低调大师

linux 查看系统信息命令

- uname -a - 查看内核/操作系统/CPU信息 - head -n 1 /etc/issue - 查看操作系统版本 - cat /proc/cpuinfo - 查看CPU信息 - hostname - 查看计算机名 - lspci -tv - 列出所有PCI设备 - lsusb -tv - 列出所有USB设备 - lsmod - 列出加载的内核模块 - env - 查看环境变量资源 - free -m - 查看内存使用量和交换区使用量 - df -h - 查看各分区使用情况 - du -sh <目录名> - 查看指定目录的大小 - grep MemTotal /proc/meminfo - 查看内存总量 - grep MemFree /proc/meminfo - 查看空闲内存量 - uptime - 查看系统运行时间、用户数、负载 - cat /proc/loadavg - 查看系统负载磁盘和分区 - mount | column -t - 查看挂接的分区状态 - fdisk -l - 查看所有分区 - swapon -s - 查看所有交换分区 - hdparm -i /dev/hda - 查看磁盘参数(仅适用于IDE设备) - dmesg | grep IDE - 查看启动时IDE设备检测状况网络 - ifconfig - 查看所有网络接口的属性 - iptables -L - 查看防火墙设置 - route -n - 查看路由表 - netstat -lntp - 查看所有监听端口 - netstat -antp - 查看所有已经建立的连接 - netstat -s - 查看网络统计信息进程 - ps -ef - 查看所有进程 - top - 实时显示进程状态用户 - w - 查看活动用户 - id <用户名> - 查看指定用户信息 - last - 查看用户登录日志 - cut -d: -f1 /etc/passwd - 查看系统所有用户 - cut -d: -f1 /etc/group - 查看系统所有组 - crontab -l - 查看当前用户的计划任务服务 - chkconfig –list - 列出所有系统服务 - chkconfig –list | grep on - 列出所有启动的系统服务程序 - rpm -qa - 查看所有安装的软件包 - service mysqld status -查看mysql的状态

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

用户登录
用户注册