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指令正常

相关推荐
Fcy64816 分钟前
Linux下 Socket编程 —— TCP网络编程
linux·网络·tcp/ip
hflmwl81 小时前
Motrix电脑版官网免费下载,motrix服务器绿色版官方下载安装
运维·服务器·motrix
LongRunning2 小时前
【Linux】RK3568(三)操作-视频流
linux
Discipline~Hai2 小时前
Linux网络编程02-TCP协议
linux·网络·tcp/ip·嵌入式·linux网络编程
智恒百亿2 小时前
RTX5090 八卡算力服务器:解析大模型私有化部署热门硬件的市场现状
运维·服务器·ai算力
java_logo2 小时前
Docker 部署 HertzBeat:轻松搭建无代理实时监控与告警平台
运维·docker·容器·监控告警·部署教程·hertzbeat·轩辕镜像
gsls2008082 小时前
OpsKat封装MCP:用 Go 标准库把运维 CLI 变成 AI 的“手“
运维·人工智能·golang·mcp
abc light2 小时前
Linux TCP网络
linux·网络·tcp/ip
元岳数字人小元2 小时前
数字人一体机如何落地?多模态智能交互设备全解析
运维·人工智能·人机交互·交互·源代码管理
Jason_zhao_MR2 小时前
电能质量监测为什么需要PTP精确时钟同步
linux·单片机·嵌入式硬件·嵌入式