银河麒麟终端与Shell实战:软件安装、脚本与故障排查
2026/8/31 14:24:29 网站建设 项目流程

这次我们来看银河麒麟系统的终端与 shell。在国产化替换和信创环境中,很多刚接触麒麟系统的用户,遇到的第一道坎往往不是图形界面操作,而是这个看起来黑乎乎的终端窗口。软件装不上、脚本跑不起来、命令报错、权限拒绝,最终都要回到终端去排查。终端和 shell 不是可选项,而是日常开发、运维、软件安装、日志分析的基本功。

这篇文章重点讲四块内容:第一,麒麟系统终端如何打开、如何配置,以及终端里高频使用的快捷键;第二,软件商店和命令行安装、卸载软件怎么操作,遇到“错误代码 0006”这类问题怎么排查;第三,shell 脚本从入门到批量任务怎么写,包括变量、循环、错误处理、后台运行;第四,常见报错和排查方法,尽量做到每一步都可以照着验证。目标很直接:让刚换到麒麟系统的开发者或运维,能靠这篇文章完成日常的软件安装、脚本执行和故障定位。

如果你的工作环境里也出现了“麒麟软件商店错误代码 0006”“终端打不开”“执行 shell 报权限不足”这类问题,建议直接把文章收藏,遇到哪一类,跳到对应章节去查。下面从核心能力速览开始。

1. 核心能力速览

能力项说明
操作系统麒麟软件桌面版 / 服务器版,常见版本如银河麒麟 V10
默认 ShellBash,兼容常见 Linux 命令
终端入口图形界面终端、桌面版快捷键、SSH 远程终端
软件包管理软件商店 + 命令行包管理工具
软件安装方式图形化搜索安装、命令行安装、本地安装包安装
批量任务能力shell 脚本、循环批量处理、定时任务、后台运行
远程运维能力SSH 登录、终端复用工具对接
接口 API不直接提供统一 API,依赖具体软件服务,需要按具体产品确认
资源占用终端进程本身占用很低,脚本任务按复杂度变化
适合场景国产化替代、信创环境、桌面运维、服务器管理、shell 脚本批量任务

这里需要先说清楚一个边界:麒麟系统不是一套版本的“固定软件”,桌面版和服务器版、不同架构 CPU、不同发行小版本,在软件源、包管理工具和默认内核上会有差异。下面讲到的操作,适用于大多数基于常见 Debian/Ubuntu 生态的银河麒麟桌面环境,如果遇到“命令不存在”或“软件源不匹配”,请以本机的实际版本和官方文档为准。

2. 适用场景与使用边界

2.1 适合谁用

  • 从 Ubuntu/Debian 切到麒麟系统的开发者,几乎可以沿用熟悉的 apt、dpkg、bash 命令。
  • 国产化环境下的运维人员,需要批量安装软件、写巡检脚本、部署服务。
  • 使用麒麟桌面版办公的技术用户,遇到软件商店异常时,需要命令行作为备选安装路径。
  • 需要做 shell 脚本入门和批量任务练手的新手,麒麟系统的终端本身就是一套完整的 Linux 练习环境。

2.2 能解决什么问题

  • 软件安装失败、软件商店打不开时,用命令行走通“安装、卸载、更新”的替代方案。
  • 批量处理文件,例如批量重命名、批量压缩日志、批量检查服务状态。
  • 远程登录服务器做日常维护,查看系统负载、磁盘空间、进程状态。
  • 编写定时任务,让系统自动执行备份、清理、巡检等重复工作。

2.3 不适合什么场景

  • 依赖 Windows 专有软件、且没有 Linux 替代方案的业务,不建议强行用终端绕过,应该先在软件商店或厂商兼容清单中找替代。
  • 完全不会 Linux 命令的普通办公用户,只处理文档表格,图形界面和软件商店仍是最优路径,命令行不是万能入口。
  • 没有授权、没有测试环境的生产服务器上,不建议直接执行网上复制来的安装脚本或未知命令。

2.4 安全与合规边界

终端权限高,误操作影响大。尤其是以 root 权限执行的命令,可能直接修改系统关键配置。这里明确几条底线:

  • 不运行来源不明的 shell 脚本,不向陌生服务器执行反弹 shell 类命令,遇到来历不明的“一键脚本”先审计内容再执行。
  • 涉及软件安装、数据删除、系统配置修改时,先备份。
  • 在多人环境或生产环境操作时,使用普通用户账号,需要提权时用 sudo,并记录操作日志。
  • 涉及远程连接时,优先使用 SSH 密钥登录,不要暴露不必要的服务端口。

3. 环境准备与前置条件

3.1 检查系统版本

打开终端后,先确认系统版本和 CPU 架构。不同架构的软件包不通用,x86 和 ARM 的安装包不能混用。

uname -a cat /etc/os-release

uname -a可以查看内核版本和机器架构,cat /etc/os-release能显示发行版名称和版本号。如果后面安装软件遇到“架构不匹配”,第一步就是查这里。

3.2 确认当前用户权限

普通用户执行系统级命令时,经常遇到Permission denied。先用whoami确认当前用户。

whoami sudo -v

sudo -v的作用是验证当前用户是否有 sudo 权限,并刷新 sudo 时间戳。如果没有输出错误,说明可以提权;如果提示当前用户不在 sudoers 文件中,则需要找管理员账号处理。

3.3 软件源与网络连通性

麒麟系统的软件商店和命令行包管理都依赖软件源。安装软件前先检查网络:

ping -c 4 mirrors.aliyun.com

也可以直接执行一次软件源刷新,看是否报错。这一步能区分“软件源不可用”和“软件包不存在”两类问题。

sudo apt update

如果apt update出现大量 404、连接超时或公钥错误,说明软件源配置有问题,先不要继续安装软件,优先修复源配置。这里不推荐立即删除系统自带的源,更稳妥的方式是把源文件备份后替换。

3.4 磁盘空间

安装大型软件、开发工具链时,可能占用数 GB 空间。用df -h检查根分区空间:

df -h /

如果输出显示根分区剩余空间不足,先清理缓存包和旧内核,再继续安装。

4. 终端启动与高频操作

4.1 打开终端的方式

麒麟桌面版打开终端有几个常见入口:

  • 在桌面空白处右键,菜单里选择“打开终端”。
  • 使用快捷键Ctrl + Alt + T,不同桌面环境快捷键可能不同,但多数版本支持。
  • 在开始菜单搜索“终端”启动。
  • 通过 SSH 远程登录到麒麟服务器,进入的就是远程 shell。

启动后,你会看到类似这样的提示符:

user@kylin:~$

user是当前用户名,kylin是主机名,~表示当前在用户家目录,$表示当前是普通用户。如果是 root 用户,末尾通常是#

4.2 终端里的换行与续行

刚接触终端的人,经常遇到“命令太长,回车后报错”的问题。其实 shell 支持使用反斜杠\换行,把一条长命令分成多行输入:

sudo apt install \ python3-pip \ vim \ curl

这里反斜杠的含义是“当前行没有结束,下一行继续”。输入反斜杠后回车,终端会出现>提示符,继续输入即可。

顺带对比一下不同平台的换行符:Windows 命令提示符 cmd 使用^换行,PowerShell 使用反引号`换行,Linux 终端使用\换行。这三者不能混用。

4.3 终端里的历史命令与搜索

使用上下方向键可以在历史命令中切换。如果历史命令太多,使用Ctrl + R进入反向搜索模式,输入关键字后回车即可执行:

# 按 Ctrl + R 后输入 apt # 终端会匹配历史中最近一次包含 apt 的命令

常用快捷键整理:

快捷键作用
Ctrl + Alt + T打开终端(桌面版常见)
Ctrl + Shift + C复制
Ctrl + Shift + V粘贴
Ctrl + C中断当前命令
Ctrl + D退出当前 shell
Ctrl + L清屏
Ctrl + R搜索历史命令
Tab命令和路径补全

4.4 终端复用与多窗口

日常排查问题经常要同时看日志、跑命令、编辑文件,开一堆终端窗口容易混乱。终端复用工具能在同一个终端里开多个会话。麒麟系统软件源里常见的是tmux,通过命令行安装:

sudo apt install tmux

启动 tmux:

tmux new -s work

常用操作:

# 在 tmux 中新建窗口 Ctrl + b 然后按 c # 切换窗口 Ctrl + b 然后按 0 或 1 # 分离会话,任务继续在后台运行 Ctrl + b 然后按 d # 重新接入会话 tmux attach -t work

使用终端复用的一个明显好处是:SSH 连接突然断开时,tmux 里的任务不会跟着中断,重新登录后还能恢复现场。

5. 软件安装与卸载:软件商店和命令行走一遍

5.1 软件商店的基础操作

麒麟系统自带软件商店,日常办公用户优先在商店里搜索、安装、卸载软件。商店的优势是图形化、依赖自动处理,适合不熟悉命令行的用户。

如果软件商店能正常打开,直接搜索软件名,点击安装即可。但商店偶尔会遇到“错误代码 0006”或安装进度卡住的情况。从社区反馈看,这类问题通常和网络、软件源、缓存或商店服务有关。遇到时按下面的顺序排查:

  1. 先确认系统时间是否正确,时区偏差会导致 HTTPS 请求失败。
  2. 检查网络连通性,确认能否正常访问软件源。
  3. 清理软件商店缓存后重启商店。
  4. 尝试用命令行刷新软件源,再回商店安装。
  5. 查看商店日志或系统日志,定位具体报错。

如果商店一直无法使用,不要死磕,直接切到命令行安装,这是更可控的路径。

5.2 命令行的软件源刷新与更新

命令行安装前,先更新软件源索引:

sudo apt update

升级已安装软件:

sudo apt upgrade

注意:upgrade在部分场景下不处理内核相关更新,如需完整升级,需要在确认兼容性后执行sudo apt dist-upgrade。生产环境升级前务必备份。

5.3 安装软件的命令写法

安装单个软件:

sudo apt install vim -y

同时安装多个软件:

sudo apt install curl wget git -y

这里的-y表示自动确认,不加的话安装过程会交互式询问 Y/n。写脚本时建议加上,避免卡在确认环节。

如果已经下载了.deb安装包,用dpkg安装:

sudo dpkg -i 软件包名称.deb

dpkg -i不会自动处理依赖,如果提示缺少依赖,先执行sudo apt -f install修复依赖,再重新安装。

5.4 卸载软件的两种方式

卸载软件用apt remove

sudo apt remove 软件包名称

如果想把配置文件也一起清理,用apt purge

sudo apt purge 软件包名称

卸载后清理不再需要的依赖:

sudo apt autoremove

图形化软件商店里的“卸载”按钮,本质上是调用系统包管理能力。玩家在商店里卸载失败时,命令行是可靠的替代方案。这里的关键是:先查出准确的包名。

5.5 查询软件包信息

不知道包名时,用apt search搜索:

apt search 关键字

查看某个软件是否已安装:

apt list --installed | grep 软件名

查看软件包详细信息:

apt show 软件包名称

这里举一个实际场景:想给麒麟系统安装分区编辑器,但不知道包名。可以先搜索:

apt search 分区编辑器

搜索关键字太多时过滤慢,也可以直接搜英文名。常见工具如gparted,在多数麒麟软件源中可以直接安装:

sudo apt install gparted

如果提示找不到,先sudo apt update刷新源,再用apt search gparted确认包名是否一致。

6. shell 脚本入门与批量任务

6.1 第一个 shell 脚本

在终端里创建一个测试脚本:

mkdir -p ~/shell-lab cd ~/shell-lab vim hello.sh

在 vim 中输入:

#!/bin/bash echo "Hello, Kylin Shell" echo "当前用户: $(whoami)" echo "当前目录: $(pwd)"

保存后添加执行权限:

chmod +x hello.sh

执行脚本:

./hello.sh

这里解释一下,#!/bin/bash称为 shebang,指定脚本使用哪个解释器执行。chmod +x给脚本添加可执行权限。如果直接用bash hello.sh执行,也可以不添加执行权限。

6.2 变量与输入

shell 脚本里使用变量不需要声明类型:

#!/bin/bash name="kylin" echo "系统名称: ${name}"

读取用户输入:

#!/bin/bash read -p "请输入文件夹名称: " folder_name mkdir -p "${folder_name}" echo "已创建目录: ${folder_name}"

执行后终端会等待输入,输入内容后自动创建目录。这里的${folder_name}写法比$folder_name更安全,尤其当变量后面紧跟其他字符时,${}能明确边界。

6.3 循环与批量任务

写一个批量创建目录的脚本:

#!/bin/bash for i in 1 2 3 4 5 do mkdir -p "dir_${i}" echo "已创建 dir_${i}" done

执行后,当前目录下会生成dir_1dir_5五个目录。这是一个最朴素的批量任务例子,可以扩展到批量重命名文件、批量压缩日志、批量检查服务状态。

批量重命名文件是更常见的需求。假设当前目录有一批.txt文件,想统一加前缀:

#!/bin/bash for file in *.txt do mv "${file}" "备份_${file}" done

如果文件名带空格,for file in *.txt也能正确处理,因为通配符展开后的每个文件名会被当作一个整体。但普通字符串切分可能会出错,这也是 shell 脚本的常见坑之一。

批量安装软件包列表:

#!/bin/bash packages=(vim curl git tmux) for pkg in "${packages[@]}" do echo "正在安装: ${pkg}" sudo apt install -y "${pkg}" done

实际使用时,建议不要无脑批量安装,先确认每个包名确实存在,再执行。

6.4 条件判断与错误处理

判断目录是否存在:

#!/bin/bash if [ -d "/tmp/kylin-test" ]; then echo "目录存在" else echo "目录不存在,正在创建" mkdir -p /tmp/kylin-test fi

判断文件是否存在:

if [ -f "/etc/hosts" ]; then echo "hosts 文件存在" fi

在执行关键步骤时,建议启用“出错即停”:

#!/bin/bash set -e echo "步骤1: 更新索引" sudo apt update echo "步骤2: 安装软件" sudo apt install -y curl

这里的set -e表示脚本中任何一条命令返回非零退出码时,立即停止执行。这样做的好处是,不会在第一步失败后继续执行后续命令,把系统环境搞得一团糟。

如果明确希望某条命令失败时忽略错误继续执行,可以在命令末尾加|| true

sudo apt install -y optional-package || true echo "即使安装失败也继续执行"

使用|| true要谨慎,它意味着彻底忽略命令的错误状态,适合“能装最好,装不上不影响主流程”的场景,不适合核心部署步骤。

6.5 权限、执行方式和常见坑

脚本报Permission denied,先看权限:

ls -l script.sh

如果权限位没有x,执行权限缺失,用chmod +x script.sh添加。或者使用显式解释器执行:

bash script.sh

在 Windows 下编辑过脚本再拷到麒麟系统,经常遇到\r字符导致脚本报错。可以用sed快速处理:

sed -i 's/\r$//' script.sh

这里把每行末尾的 Windows 换行符\r删除,转成 Linux 格式。如果不处理,脚本可能报$'\r': command not found或行为异常。

7. 接口 API、远程终端与自动化对接

在麒麟系统里,“接口能力”通常不是终端本身提供的,而是终端作为客户端去调用其他服务的接口。这里讲三个常用对接场景。

7.1 通过 curl 调用 HTTP 接口

麒麟系统自带 curl,可以用它测试 REST API。例如发送一个 GET 请求:

curl -X GET http://127.0.0.1:8080/api/health

发送带 JSON 数据的 POST 请求:

curl -X POST http://127.0.0.1:8080/api/submit \ -H "Content-Type: application/json" \ -d '{"name": "kylin", "task": "backup"}'

如果接口返回中文乱码,检查是否缺少-H "Accept: application/json",或者接口本身返回了非 UTF-8 编码。用curl -v可以查看完整请求响应过程,排查连接、证书、路由类问题。

7.2 远程终端与 SSH 连接

开发或运维人员经常要登录远程服务器。麒麟系统终端自带 SSH 客户端:

ssh user@192.168.1.100

指定端口:

ssh -p 2222 user@192.168.1.100

第一次连接时会提示确认主机指纹,输入yes后继续。生产环境建议使用密钥登录,不直接使用密码。生成密钥:

ssh-keygen -t ed25519

将公钥拷贝到服务器:

ssh-copy-id user@192.168.1.100

远程登录后,配合 tmux 可以做到会话保持。即使本地断网,远程 tmux 里的任务仍然在跑。

7.3 第三方终端工具接入

除了系统自带终端,很多用户习惯使用跨平台终端工具,比如 Tabby。这类工具通常支持 SSH 连接、SFTP 文件传输、主题定制,可以在本机安装后,通过 SSH 协议连到麒麟服务器。第三方工具的角色是“终端模拟器 + SSH 客户端”,最终执行的命令仍然由麒麟系统的 shell 解释处理。第一次使用第三方终端工具时,重点检查字符编码是否设置为 UTF-8,否则中文日志和文件名可能显示乱码。

如果你在 Cursor、VS Code 这类编辑器里集成终端,在麒麟系统中同样可以直接打开系统 shell。遇到“终端进程启动失败”“无法加载文件”这类报错,优先检查编辑器配置的 shell 路径是否正确。

7.4 定时任务的批量调度

shell 脚本配合 crontab,能实现周期性批量任务。编辑当前用户的定时任务:

crontab -e

添加一条每天凌晨 1 点执行备份脚本的任务:

0 1 * * * /home/user/scripts/backup.sh >> /home/user/logs/backup.log 2>&1

查看当前定时任务:

crontab -l

定时任务执行时没有交互终端,脚本里如果依赖当前用户环境变量,可能要显式写绝对路径。这也是新手经常遇到的坑:手动执行正常,定时任务却不生效。

8. 资源占用与性能观察

8.1 终端本身的占用

终端进程是轻量进程,空闲时 CPU 占用接近于零,内存占用通常在几十 MB 级别。真正消耗资源的是终端里运行的程序,比如编译任务、大文件压缩、数据库查询。排查性能问题时,先分清是 shell 本身慢,还是执行的具体程序慢。

8.2 观察系统负载

top查看实时进程和系统负载:

top

q退出。如果只关心内存,用free -h

free -h

查看磁盘空间:

df -h

8.3 脚本任务的性能观察

shell 脚本大量循环执行时,如果循环体内每次都调用外部命令,整体耗时会明显上升。比如批量处理 1000 个文件,每个文件都启动一次lssed,性能可能比预期差很多。优化方向有两个:减少循环内的外部命令调用次数;用更快的工具替代,例如用find-exec参数批量处理,而不是逐条启动命令。

find ./logs -name "*.log" -exec gzip {} \;

这条命令会批量压缩logs目录下的所有.log文件。find -execfor循环加gzip的写法更简洁,且对文件名中的空格处理更好。

8.4 后台运行与日志隔离

长时间运行的脚本,直接用./long_task.sh执行,关闭终端就中断了。可以使用nohup让命令在后台运行:

nohup ./long_task.sh > task.log 2>&1 &

这里&表示后台执行,nohup让进程忽略挂断信号,> task.log 2>&1把标准输出和错误输出都写入日志文件。之后可以用tail -f task.log实时查看进度。

如果需要恢复前台交互,可以用jobsfg

jobs fg %1

8.5 端口与进程排查

排错时经常要确认某个端口是否被占用。使用ss命令:

ss -tlnp | grep 8080

查看端口 8080 的监听状态。如果提示-p需要权限,加sudo重试。查找指定进程:

ps -ef | grep 软件名

强制结束异常进程:

sudo kill -9 进程PID

使用kill -9要非常谨慎,它会直接终止进程且不给予清理机会,优先尝试普通kill

9. 常见问题与排查方法

问题现象可能原因排查方式解决方案
终端打不开桌面环境异常、快捷键被占用、会话卡死检查系统桌面服务,尝试重启系统重启桌面会话;查看系统日志定位
软件商店提示“错误代码 0006”网络异常、软件源不可用、商店缓存损坏、系统时间偏差检查网络、系统时间,清理商店缓存,查看日志先修复网络和软件源,再重启商店
apt update 报 404 或公钥错误软件源配置错误、源地址失效备份源文件,检查源地址是否匹配当前版本和架构恢复正确源配置,重新刷新索引
安装软件提示依赖错误软件源索引过期、本地包依赖不完整执行sudo apt -f install修复依赖apt update,再重试安装
命令提示 command not found软件未安装、包名不对、环境变量缺失apt search搜索,确认包名安装对应软件包,或修正命令路径
运行脚本报 Permission denied脚本没有执行权限使用ls -l查看权限位chmod +x 脚本名
脚本报$'\r': command not found脚本在 Windows 编辑过,换行符为 CRLFfile命令查看编码格式执行sed -i 's/\r$//' 脚本名
普通用户执行系统命令被拒绝权限不足,命令需要提权确认是否在 sudoers 列表中使用sudo,或切换管理员用户
中文文件名或日志乱码终端字符编码不是 UTF-8,或软件不兼容中文检查终端设置中的字符编码改为 UTF-8,或安装中文字体
定时任务不执行crontab 语法错误、脚本路径相对、环境变量缺失手动执行脚本看是否正常,查看 cron 日志脚本中写绝对路径,检查 crontab 语法
远程 SSH 连接被拒绝SSH 服务未启动、防火墙拦截、端口错误查看systemctl status sshd,检查防火墙启动 SSH 服务,放行端口或修正端口
批量任务执行到一半卡住等待用户输入、网络阻塞、磁盘写满查看进程状态、磁盘空间、日志尾部给命令加-y参数,清理磁盘,重启任务

这里要特别提醒:如果是 Windows 平台上的终端模拟器报类似“终端进程启动失败: 启动期间发生本机异常(无法启动 conpty)”的错误,那是 Windows 终端的 conpty 子系统问题,与麒麟系统无关。遇到时检查对应终端模拟器的版本、shell 路径和系统更新状态。在 Android 调试设备时遇到adb shell无法打开 root shell,属于设备权限策略,需要检查设备是否允许调试和提权,不要尝试绕过设备的安全机制。

10. 最佳实践与使用建议

10.1 先从最小命令集开始

刚上手麒麟终端时,不需要记住所有命令。先掌握几个核心命令组合:cd切换目录、ls查看文件、pwd确认当前位置、sudo提权、apt install安装软件、chmod +x赋予脚本执行权限。这六个命令足以覆盖日常 80% 的操作。

10.2 保存一份最小可运行配置

在服务器或新装系统上,建议把常用工具一次性装好,减小后续排错成本:

sudo apt update sudo apt install -y vim git curl wget tmux tree htop

这组命令安装的是基础工具,不涉及特定业务软件,兼容性风险较低。装完后,vim用于编辑、git用于代码管理、tmux用于会话保持、htop用于资源观察,日常运维基本够用。

10.3 目录和文件规划要清楚

建议把脚本统一放到~/scripts,把日志统一放到~/logs,把安装包统一放到~/packages。脚本里所有路径尽量写成绝对路径,或者在脚本开头定义变量:

#!/bin/bash BASE_DIR="/home/user/scripts" LOG_DIR="/home/user/logs" mkdir -p "${LOG_DIR}"

这样做的好处是:定时任务执行时不会因为“当前目录不对”而找不到文件。

10.4 写批量脚本时加日志和重试

批量任务不是“写完就能跑”的。实际执行时,经常有某个文件格式错误、某个网络请求超时。正确的做法是每处理一个项目就写一行日志,并把失败信息记录下来:

#!/bin/bash LOG_FILE="/home/user/logs/batch.log" while read -r file_path do if process_file "${file_path}"; then echo "[OK] ${file_path}" >> "${LOG_FILE}" else echo "[FAIL] ${file_path}" >> "${LOG_FILE}" fi done < file_list.txt

这样执行结束后,通过grep "\[FAIL\]" batch.log能快速定位失败项。

10.5 权限和隔离意识

日常使用不要一直用 root 登录。普通用户能完成的操作,用普通用户执行;需要安装软件或修改系统配置时,用sudo提权。多人共用的服务器上,为不同角色创建独立账号,避免一个误操作影响所有人。

10.6 合规与授权意识

在麒麟系统上安装第三方工具、运行脚本、连接远程主机时,要确认软件来源和授权范围。处理他人文件、音频、图像、代码时,尊重版权和数据隐私。涉及“反弹 shell”“绕过安全限制”等方式的行为,无论技术演示还是实际操作,都存在明显安全风险,不建议在未授权环境尝试,也不要向不明服务器主动发起连接,这是底线。

11. 总结与下一步

麒麟系统的终端与 shell,本质上仍然是 Linux 生态里那一套成熟的命令体系和脚本能力。当前阶段最值得先验证的功能有三个:一是用命令行成功完成一次软件安装和卸载,确认软件源和包管理工具可用;二是把日常手动执行的批量操作整理成一个 shell 脚本,尤其是批量重命名、批量备份这类高频任务;三是尝试用 tmux 做一次远程会话保持,体验“断线不丢现场”的效果。

最容易踩的坑也有三个:第一个是软件源配置不正确,导致apt update大面积报错,这种情况优先检查版本和架构匹配;第二个是脚本从 Windows 拷过来后出现 CRLF 换行符,执行前先处理\r;第三个是普通使用中忘记权限边界,不是所有命令都需要 sudo,但需要 sudo 的命令不加权限又跑不通,这道题要先习惯sudo -v验证、sudo提权、chmod +x赋权的节奏。

下一步建议按顺序做三件事:备份当前系统的软件源配置,记录一份本机软件包清单;把常用的环境初始化命令整理成脚本,方便新机器快速复现;结合具体的业务场景,例如日志清理、磁盘检查、服务健康巡检,写两个定时任务。等到这一步跑通,你在麒麟系统上的终端和 shell 能力就已经能支撑日常开发和运维了。建议收藏备用,排查问题时直接对照文章里的表格。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询