#Linux
共 121 篇文章
cron 报 command not found,终端却能执行:先区分 PATH 与任务隔离环境
cron 中找不到终端可用命令时,检查任务自己的 PATH、账户及解释器;绝对路径仍不存在时,继续检查面板隔离文件系统。
Docker Git 上下文构建报 /.git not found
Git 上下文默认不保留 .git,忽略规则例外不能恢复它。用预定义参数保留构建所需仓库信息,或明确选择路径上下文,并限制最终产物。
Podman rootless 发布低端口报 permission denied:检查 Linux VM 的权限阈值
Podman rootless 发布低端口报 permission denied 时,核对实际 Linux 或 machine VM 的端口阈值,按客户端能力改高端口,或由管理员评估绑定策略。
root 删除文件报 Operation not permitted:检查 immutable 属性
root 删除文件仍报 Operation not permitted 时,检查目标和父目录的 immutable 属性,再按授权范围解除保护;区分只读挂载与普通权限错误。
修改主机名后 sudo 报 unable to resolve host
修改主机名后,sudo 提示 unable to resolve host。比较当前名称、/etc/hostname 与 NSS 解析结果,确认旧 hosts 映射后备份修正,并检查 sudo、云主机配置覆盖和回退方法。
日志轮转后 tail -f 不再显示新内容:按文件名继续跟踪
日志轮转后 tail -f 没有新输出时,确认新文件是否已写入,区分描述符跟踪与名称跟踪,用 GNU tail -F 处理同名替换并保留日志采集边界。
sudo source 报 command not found,环境变量没有传给后续命令
source 是 Bash 内建命令,sudo 不会自动调用 Shell 解释它。按变量用于当前终端还是提权程序,选择直接加载或在同一次 Bash 调用中加载并启动程序。
Docker 设置 --cpus=1 后,nproc 仍显示多个处理器
--cpus 限制 CPU 时间配额,--cpuset-cpus 限制可调度的处理器集合。核对 Docker 配置与 nproc 实现,区分 GNU coreutils 9.8 的 cgroup v2 行为。
Bash =~ 正则加引号后始终不匹配
Bash 将被引用的正则部分按字面匹配。通过区分变量赋值与匹配处的引用,修正条件表达式,并正确处理返回状态和 BASH_REMATCH 捕获结果。
grep -c 同一行多次匹配只计一次,统计结果偏小
GNU grep 的 -c 统计匹配行数。用 -o 分离非空匹配后计数,并区分无匹配、读取失败,以及完整单词、重叠和空匹配的不同要求。
Docker 交互容器第一次按 Ctrl-P 无法调出历史命令
Docker 默认脱离序列以 Ctrl-P 开头,会影响交互容器中的历史快捷键。用 --detach-keys 更换当前连接的序列,并区分客户端配置、终端映射和退出主进程。
xargs 删除已有文件却报 No such file:转义引号成了文件名的一部分
xargs 处理带空格文件名时,转义双引号被当作路径字符,导致已有文件仍找不到。区分 shell 引用与参数内容,用 NUL 分隔并保留删除恢复条件。
APT 更新 Docker 软件源时报 Signed-By 冲突
APT 更新 Docker 软件源时报 Signed-By 冲突。定位同一仓库的重复 .list 与 .sources 条目,备份后只停用确认多余的配置,保留签名验证,并核对索引更新、软件包来源和回退路径。
scp 在两台不同 SSH 端口的远程主机之间复制时连错端口
远端到远端复制需要分别表达两端的 SSH 端口。使用独立 Host 配置和本地 -3 中转,核对有效端口,并区分连接、认证与 SFTP 子系统故障。
systemd timer 只执行一次:oneshot 服务仍是 active (exited)
systemd 定时器只执行一次且服务保持 active (exited) 时,检查 RemainAfterExit;一次任务应结束为 inactive,带 ExecStop 的服务须先核对生命周期。
MariaDB 本机 root 报 Access denied,sudo 却能登录:检查 unix_socket
本机 MariaDB root 密码登录失败而 sudo 登录成功时,查看完整认证定义;保留管理入口,给应用建立限定权限账号,并区分 socket 与 TCP。
Linux 脚本已有执行权限,运行仍报 Permission denied
Linux 脚本已有执行位仍报 Permission denied 时,检查实际路径的 noexec 挂载限制,区分解释器读取与直接执行,并选择迁移目录或调整挂载策略的处理方式。


