首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在通过udev on plug out删除之前使用挂载点获取PID

如何在通过udev on plug out删除之前使用挂载点获取PID
EN

Stack Overflow用户
提问于 2016-07-13 13:54:45
回答 2查看 298关注 0票数 0

我想知道在Debian OS中删除存储设备时,udev在卸载和删除之前使用任何挂载点的进程的机制。

当我跳过删除udev规则文件中的目录时,它得到了很多进程,包括内核等。

如果有人在笔式驱动器中上传或下载时从系统中移除笔式驱动器,我想在屏幕上实现一个警告消息。

请帮帮我。

EN

回答 2

Stack Overflow用户

发布于 2016-07-13 16:55:48

您可以使用lsof命令。此命令列出哪个进程正在使用哪个文件。输出包含命令、PID、用户PID、文件类型、设备、侧边、文件名等。您可以使用grep for mount point来查找谁在使用您的设备。

语法:

代码语言:javascript
代码运行次数:0
运行
复制
#lsof  | grep <mount point>

代码语言:javascript
代码运行次数:0
运行
复制
#lsof  <mount point>

另一种选择是使用fuser命令。它显示使用给定文件/目录的进程It

语法:

代码语言:javascript
代码运行次数:0
运行
复制
#fuser <mount point >
票数 1
EN

Stack Overflow用户

发布于 2016-07-15 19:14:58

感谢您的回复。我是通过fuser得到的。我的问题是被用户删除后如何处理。在我的系统中,热插拔是由udev规则管理的。其显示指定文件名/media/pen-drive不存在。删除操作是ACTION==" Remove ",ENV{dir_name}!="",RUN+="/bin/sh -c '/bin/fuser -m /media/%E{dir_name'",RUN+="/bin/umount -l /media/%E{dir_name}",RUN+="/bin/rmdir /media/%E{dir_name}“

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38343625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档