在使用 Ubuntu 或其他 Linux 系统时,你是否遇到过这样的情况:想删除一个文件,系统却提示“文件正被使用”?或者修改配置文件后无法重启服务?这时候,你就需要一个工具来找出到底是谁在“霸占”这个文件。这就是
fuser命令的用武之地!
本文将手把手教你如何使用 Ubuntu fuser命令 来查看文件被哪个进程占用,并提供实用示例,即使是 Linux 小白也能轻松上手。

什么是 fuser 命令?
fuser是 Linux 系统中一个非常实用的命令行工具,用于显示正在使用指定文件、文件系统或网络端口的进程信息。它能告诉你哪些进程打开了某个文件,甚至还能帮你终止这些进程。
安装 fuser(如未预装)
大多数 Ubuntu 系统默认已安装
fuser,它属于
psmisc软件包。如果系统提示找不到该命令,可运行以下命令安装:
sudo apt updatesudo apt install psmisc基本语法
fuser
的基本用法如下:
假设你想知道 fuser [选项] 文件或目录常用示例
1. 查看谁在使用某个文件
/var/log/syslog
被哪些进程占用:
输出可能类似于: 这里的 加上 fuser /var/log/syslog/var/log/syslog: 1234 56781234
和 5678
就是正在使用该文件的进程ID(PID)。2. 显示详细信息(含进程名)
-v
参数可以显示更友好的输出,包括用户、进程名等:
输出示例: 其中: 如果你确认可以安全终止这些进程,可以使用 这会向所有使用该文件的进程发送 你也可以用 fuser -v /var/log/syslog USER PID ACCESS COMMAND/var/log/syslog syslog 1234 F.... rsyslogd/var/log/syslog root 5678 f.... tail
- ACCESS 列表示访问类型(F=打开用于写,f=打开用于读等)
- COMMAND 是进程名称3. 终止占用文件的进程
-k
选项(kill):sudo fuser -k /var/log/syslogSIGKILL
信号,强制结束它们。建议先用 -v
查看再操作,避免误杀重要进程。4. 检查端口占用(网络文件)
fuser
查看哪个进程占用了某个网络端口,比如 80 端口:
这在排查 Web 服务冲突时非常有用。 - 使用 sudo fuser 80/tcp常见应用场景
无法卸载 U 盘或挂载点 → 使用 fuser -v /mnt/usb
查看占用进程 日志文件无法轮转 → 检查是否有进程锁定了日志文件 服务启动失败提示端口被占用 → 用 fuser 8080/tcp
找出罪魁祸首小贴士
fuser
通常需要 sudo 权限,尤其是查看系统文件或终止进程时。
- 如果不确定能否终止某个进程,请先用 ps -p PID
查看进程详情。
- fuser
是 Linux进程管理 中不可或缺的工具之一,配合 lsof
使用效果更佳。
总结
通过本教程,你应该已经掌握了如何使用 Ubuntu fuser命令 来查看文件被哪个进程占用,并能安全地处理文件锁定问题。无论是日常运维还是故障排查,
fuser都是一个高效、简洁的利器。
记住关键词:Ubuntu fuser命令、查看文件被哪个进程占用、Linux进程管理、文件锁定排查——下次遇到类似问题,你就知道该怎么做了!
