linux df -Th指令卡死

问题

复制代码
今天发现服务器某些指令卡死,并且root目录也没法ls查看,df -Th也卡死,如下

解决方法

复制代码
经过搜索后发现是磁盘问题导致,是root下某个挂载点导致错误,可以用如下脚本来测验挂载点是否有错误
bash 复制代码
# 创建一个测试脚本,逐个挂载点测试
cat > /test_mounts.sh << 'EOF'
#!/bin/bash
echo "测试每个挂载点的响应时间..."

for mnt in $(mount | awk '{print $3}'); do
    echo -n "测试 $mnt ... "
    timeout 2 stat "$mnt" >/dev/null 2>&1
    if [ $? -eq 0 ]; then
        echo "正常"
    elif [ $? -eq 124 ]; then
        echo "卡死/超时 ← 可能是这个导致df卡死"
    else
        echo "错误"
    fi
done
EOF

chmod +x /test_mounts.sh
./test_mounts.sh

执行后结果如下

发现是/root/thinclient_drives挂载点导致错误,查后发现这个 xrdp 客户端驱动器映射的 FUSE 挂载有问题。使用如下指令重新启动就好了

bash 复制代码
# 1. 清理当前挂载
sudo fusermount -uz /root/thinclient_drives 2>/dev/null
sudo umount -l /root/thinclient_drives 2>/dev/null

# 2. 删除并重建目录
sudo rm -rf /root/thinclient_drives
sudo mkdir -p /root/thinclient_drives
sudo chmod 700 /root/thinclient_drives

# 3. 重启 xrdp 服务
sudo systemctl restart xrdp-sesman

如果不想用xrdpu也可以直接禁用(上面重启和下面禁用2选1即可)

bash 复制代码
# 1. 永久禁用客户端驱动器映射
sudo sed -i 's/^FuseMountName=.*/#FuseMountName=thinclient_drives/' /etc/xrdp/sesman.ini

# 2. 或完全禁用 FUSE 通道
sudo sed -i 's/^ChansrvPort=.*/ChansrvPort=DISABLED/' /etc/xrdp/sesman.ini

# 3. 重启服务
sudo systemctl restart xrdp-sesman

重启后发现root目录和df -Th指令正常

相关推荐
Fleshy数模30 分钟前
MySQL 表创建全攻略:Navicat 图形化与 Xshell 命令行双模式实践
linux·mysql
神梦流1 小时前
GE 引擎的非标准数据流处理:稀疏张量与自定义算子在图优化中的语义保持
linux·运维·服务器
兜兜转转了多少年1 小时前
从脚本到系统:2026 年 AI 代理驱动的 Shell 自动化
运维·人工智能·自动化
.小墨迹2 小时前
apollo学习之借道超车的速度规划
linux·c++·学习·算法·ubuntu
林深现海2 小时前
Jetson Orin nano/nx刷机后无法打开chrome/firefox浏览器
前端·chrome·firefox
Lsir10110_2 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
Sheffield2 小时前
command和shell模块到底区别在哪?
linux·云计算·ansible
历程里程碑2 小时前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴2 小时前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
承渊政道2 小时前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee