Linux系统之fuser命令的基本使用
Linux系统之fuser命令的基本使用
- 一、fuser命令介绍
- 二、fuser命令使用帮助
- 2.1 help帮助信息
- 2.1 基本语法
- ①通用选项
- ②文件/设备相关选项
- ③网络相关选项
- ④进程操作选项
- ⑤其他选项
- 三、fuser命令的基本使用
- 3.1 查找挂载点的进程
- 3.2 查看指定设备进程信息
- 3.3 查找监听特定端口的进程
- 3.4 查找使用特定文件的进程
- 四、注意事项
一、fuser命令介绍
fuser
是一个在类 Unix 系统中非常有用的命令行工具,它可以帮助用户找出哪些进程正在使用指定的文件、文件系统或网络端口。这对于需要确定某个资源被哪个进程占用的情况特别有用,比如当你尝试卸载一个挂载点但系统提示设备忙时。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。
二、fuser命令使用帮助
2.1 help帮助信息
命令行下的help帮助信息
[root@openEuler-test ~]# fuser --help
fuser: Invalid option --help
Usage: fuser [-fIMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE][-k [-i] [-SIGNAL]] NAME...fuser -lfuser -V
Show which processes use the named files, sockets, or filesystems.-a,--all display unused files too-i,--interactive ask before killing (ignored without -k)-I,--inode use always inodes to compare files-k,--kill kill processes accessing the named file-l,--list-signals list available signal names-m,--mount show all processes using the named filesystems orblock device-M,--ismountpoint fulfill request only if NAME is a mount point-n,--namespace SPACE search in this name space (file, udp, or tcp)-s,--silent silent operation-SIGNAL send this signal instead of SIGKILL-u,--user display user IDs-v,--verbose verbose output-w,--writeonly kill only processes with write access-V,--version display version information-4,--ipv4 search IPv4 sockets only-6,--ipv6 search IPv6 sockets onlyudp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]
2.1 基本语法
fuser [-<选项>] <文件/目录/端口号>
①通用选项
-a
,--all
: 显示命令行中指定的所有文件,包括那些当前没有被任何进程使用的文件。-s
,--silent
: 静默模式。如果没有进程使用指定的文件或端口,则不显示任何输出。-u
,--user
: 在输出中显示每个进程对应的用户名。-v
,--verbose
: 详细模式。提供更详细的输出信息。-V
,--version
: 显示fuser
命令的版本信息。
②文件/设备相关选项
-I
,--inode
: 总是使用 inode 号来比较文件,而不是路径名。-m
,--mount
: 显示所有正在使用指定挂载点或块设备的进程。-M
,--ismountpoint
: 只有当指定的名称是一个挂载点时才执行请求。-w
,--writeonly
: 只杀死具有写权限的进程。
③网络相关选项
-n
,--namespace SPACE
: 指定搜索的名字空间(可以是file
、udp
或tcp
)。-4
,--ipv4
: 仅搜索 IPv4 套接字。-6
,--ipv6
: 仅搜索 IPv6 套接字。
④进程操作选项
-k
,--kill
: 杀死访问指定文件或端口的所有进程。-i
,--interactive
: 在杀死进程之前询问用户(只有与-k
一起使用时有效)。-SIGNAL
: 发送这个信号代替默认的 SIGKILL 信号(只有与-k
一起使用时有效)。
⑤其他选项
-l
,--list-signals
: 列出可用的信号名称。NAME...
: 要检查的一个或多个文件名、目录名或网络端口号。
三、fuser命令的基本使用
3.1 查找挂载点的进程
查询当前的文件系统
[root@openEuler-test ~]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/openeuler-root ext4 69G 2.3G 63G 4% /
devtmpfs devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs tmpfs 3.7G 0 3.7G 0% /dev/shm
tmpfs tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
tmpfs tmpfs 1.5G 8.8M 1.5G 1% /run
tmpfs tmpfs 3.7G 0 3.7G 0% /tmp
/dev/mapper/openeuler-home ext4 512G 30M 486G 1% /home
/dev/sda2 ext4 974M 175M 732M 20% /boot
执行以下命令,这将列出所有正在使用/home 的进程 ID。
[root@openEuler-test ~]# fuser -mv /homeUSER PID ACCESS COMMAND
/home: root kernel mount /home
3.2 查看指定设备进程信息
查看指定设备上的进程信息,包括进程的用户、进程ID、对设备的访问方式和命令,此处显示了/dev/mapper/openeuler-home设备上正在使用的进程信息。
[root@openEuler-test ~]# fuser -mv /dev/mapper/openeuler-homeUSER PID ACCESS COMMAND
/dev/dm-2: root kernel mount /home
3.3 查找监听特定端口的进程
显示出所有正在监听 TCP 端口 80 的进程。
[root@openEuler-test ~]# fuser -n tcp 80
80/tcp: 1944 21789 21790 21797
3.4 查找使用特定文件的进程
在当前终端,监控日志文件。
tail -f /var/log/messages
新建一个终端,执行以下命令,列出所有正在使用/var/log/messages 的进程 ID。
[root@openEuler-test ~]# fuser -v /var/log/messagesUSER PID ACCESS COMMAND
/var/log/messages: root 1071 F.... rsyslogdroot 25183 f.... tail
四、注意事项
- 谨慎使用
-k
选项:在使用-k
杀死进程之前,请确保你了解这些进程的功能及其对系统的影响。 - 结合
-i
选项确认操作:使用-i
选项可以在杀死进程前要求用户确认,以防止误操作。 - 仔细检查目标文件或端口:确保指定正确的文件、目录或网络端口号,避免影响不相关的资源。
- 理解命令输出:熟悉
fuser
的输出格式,以便正确解读哪些进程正在使用指定的资源。 - 利用
-u
查看用户名:使用-u
选项可以显示每个进程对应的用户名,帮助更好地识别和管理进程。 - 选择合适的命名空间:通过
-n
选项选择正确的命名空间(如file
,tcp
,udp
)来精确查找相关资源。 - 注意权限问题:运行
fuser
可能需要足够的权限,特别是在处理系统关键文件或端口时,可能需要 root 权限。 - 考虑使用
-s
静默模式:当不需要任何输出信息时,可以使用-s
选项来静默执行,适用于脚本中自动化处理。 - 避免滥用
-k
信号:除非必要,否则不要随意更改默认的 SIGKILL 信号,因为这可能导致进程无法正常关闭。 - 测试与验证:在生产环境中使用前,先在测试环境中进行充分测试,以确保命令的行为符合预期。
相关文章:
Linux系统之fuser命令的基本使用
Linux系统之fuser命令的基本使用 一、fuser命令介绍二、fuser命令使用帮助2.1 help帮助信息2.1 基本语法①通用选项②文件/设备相关选项③网络相关选项④进程操作选项⑤其他选项 三、fuser命令的基本使用3.1 查找挂载点的进程3.2 查看指定设备进程信息3.3 查找监听特定端口的进…...
解决`-bash: ./configure:/bin/sh^M:解释器错误: 没有那个文件或目录`的问题
解决`-bash: ./configure:/bin/sh^M:解释器错误: 没有那个文件或目录`的问题 一、错误原因分析二、解决方法方法一:使用`dos2unix`工具方法二:使用`sed`命令方法三:使用`tr`命令方法四:在文本编辑器中转换方法五:在Windows系统中使用适当的工具三、预防措施四、总结在使…...
【时时三省】(C语言基础)结构体的声明
山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 结构的基础知识 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 数组是一组相同类型的元素的集合 结构体也是一些值的集合,结构的每…...
群聊前选择患者功能的实现
和普通群聊不同,开启一个图文会话聊天,必须先选择患者、团队、医生。 原来是集成到腾讯IM当中,现在需要单独写一个页面 原来的代码在这里: const handleShow () > {uni.navigateTo({url: /pageB/active-home/active-home})}…...
目标检测,图像分割,超分辨率重建
目标检测和图像分割 目标检测和图像分割是计算机视觉中的两个不同任务,它们的输出形式也有所不同。下面我将分别介绍这两个任务的输出。图像分割又可以分为:语义分割、实例分割、全景分割。 语义分割(Semantic Segmentation)&…...
关于 EKS Bottlerocket AMI 版本与 Karpenter 配置的说明
问题1: Bottlerocket AMI 版本问题 之前,后端团队发现在使用 Bottlerocket v1.26.2 AMI 版本时,存在某些问题。经过 Bottlerocket 团队调查,此行为是罕见的 race condition 导致的结果。 我们在环境中重现了此状况,并且关注到由于 kubelet device manager 的启动时间晚于 NVI…...
安全设备-日志审计-网络路由配置
1 网络设置 菜单项‘网络’‘网络设置’子项。进入网卡列表展示页面。点击操作列‘编辑’图标,可编辑对应网卡信息。 图11-1 网卡信息 设备接口的 GE0/1 接口IP:192.168.0.1子网掩码:255.255.255.0 图11-2 配置网卡 1 IP地址2 子网掩码3 主机DNS4 备份DNS 2 通…...
Linux服务器生成SSH 密钥对与 GitLab 仓库进行交互
目录 生成 SSH 密钥对 将公钥添加到 GitLab 测试 SSH 连接 生成 SSH 密钥对 在执行脚本的机器上打开终端,执行以下命令(假设使用默认的 RSA 算法,一路回车使用默认设置即可,也可以根据需要指定其他算法和参数)&…...
react 的路由功能
1. 安装依赖 pnpm add react-router-dom 2. 基本的路由设置(BrowserRouter) 在 main.tsx 入口文件中使用BrowserRouter组件来包裹整个应用。它会监听浏览器的 URL 变化。 import { StrictMode } from "react";import { createRoot } from …...
vscode python code runner执行乱码
打开vscode code runner插件配置,如图所示: 然后在setting.json修改运行python的默认命令: 将原来 替换成 "python":"set PYTHONIOENCODINGutf8 && python", 参考:Vscode——python环境输出中文乱…...
Element UI 打包探索【3】
目录 第九个命令 node build/bin/gen-cssfile gulp build --gulpfile packages/theme-chalk/gulpfile.js cp-cli packages/theme-chalk/lib lib/theme-chalk 至此,dist命令完成。 解释why Element UI 打包探索【1】里面的why Element UI 打包探索【2】里面…...
windows使用docker安装centos7
参考文章:docker容器安装CentOS7.9 需要指出来的步骤 2.5 安装常用工具及ssh服务 由于centos7不维护,需要更换镜像源才能正常使用yum install命令安装 更换镜像源文章:CentOS 7配置yum镜像源 2.9Xshell远程连接docke_centos7.9 文章没有指…...
写一个流程,前面的圆点和线,第一个圆上面没有线,最后一个圆下面没有线
上图 最近写类似于这种的还挺多的,记录一下css方法 遍历列表之后 <div class"item" v-for"(item,index) in recordList"> 加这样一个盒子 <div class"timeline"> <div class"line1" v-if"index ! 0&…...
Javascript Insights: Visualizing Var, Let, And Const In 2024
11/2024 出版 MP4 |视频:h264, 19201080 |音频:AAC,44.1 KHz 语言:英语 |大小: 2.96 GB |时长: 5 小时 34 分钟 为所有认真的 JavaScript 开发人员可视化与 VAR、LET、CONST 和 EXECUTON CONTE…...
【工具】AI 工具集整理推荐
ai工具集 我私人使用了一段时间,效果不错,有很多AI工具,可以提升工作的效率。...
如何通过终端连接无线网
1 先连接对方服务器 ssh root192.168.3.219 # root是用户名字 192.168.3.219是对方的ip地址2 开启 WiFi:输入sudo nmcli r wifi on,开启系统的无线网络功能 sudo nmcli r wifi on3 扫描附近的 WiFi 热点:执行sudo nmcli dev wifi&#x…...
elasticsearch报错fully-formed single-node cluster with cluster UUID
1.问题描述 k8s集群内部署的es中间件起不来,查看日志发现如下警告,节点发现功能开启,但是目前我是单节点服务,所以尝试编辑sts将节点发现功能去掉或者在部署时将你的sts的yaml文件和chart文件修改重新部署以去掉该功能 {"t…...
前端 vue3 + element-plus + ts 对话框示例
【父组件】:SampleInput.vue,局部代码片段 引入子组件 ApplyItemChooseDialog.vue,定义变量,用于渲染和显示标识 <script>片段代码 import ApplyItemChooseDialog from "/views/accept/ApplyItemChooseDialog.vue&q…...
南京移动“智慧+关怀”服务体系助力老年群体生活安全有保障
在数字化浪潮汹涌澎湃的当下,江苏移动南京分公司秉持“人民邮电为人民”的服务理念,推出一系列创新服务举措,为社区老年群体提供贴心、便捷的数字服务,让老人在享受科技发展成果的同时,感受到社会的温暖与关怀。 贴心…...
Elasticsearch 安全特性讲解与使用
Elasticsearch安全特性讲解与使用指南 1. Elasticsearch概览1.1 简介1.2 应用场景1.3 核心特性2. Elasticsearch安全特性2.1 安全性的重要性2.2 权限控制用户身份验证角色管理访问控制列表(ACL)2.3 数据加密数据传输加密数据静态加密2.4 审计日志2.5 IP筛选2.6 案例分析案例背景…...
第12章 手写Spring MVC
第十二章 手写Spring MVC 12.1 基本结构搭建 12.1.1 创建Maven模块 12.1.2 引入Servlet依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XM…...
C#基础31-35
31.已知学生的记录由学号和学习成绩构成,N名学生的数据已存入student数组中。找出成绩最低的学生记录(假定最低成绩的记录是唯一的)并输出。 32.在键盘上任意输入一个字符串,该字符串全部由英文字母组成,把字符串中的最后一个字符的ASCII值右移4位后加最后第二个字符的ASCII…...
GPT相关的学术库——收藏更新自用
GOT-OCR2.0 General OCR Theory: Towards OCR-2.0 via a Unified End-to-end Model https://github.com/Ucas-HaoranWei/GOT-OCR2.0/tree/main ChatPaper 工具名称工具作用是否在线?在线预览备注ChatPaper通过ChatGPT实现对论文进行总结,帮助科研人进…...
速度革命:esbuild如何改变前端构建游戏 (1)
什么是 esbuild? esbuild 是一款基于 Go 语言开发的 JavaScript 构建打包工具,以其卓越的性能著称。相比传统的构建工具(如 Webpack),esbuild 在打包速度上有着显著的优势,能够将打包速度提升 10 到 100 倍…...
AR商业化的“AI转身”
AI会不会是AR厂商良药? 作者|周立青 编辑|杨舟 11月,国内“AR四小龙”之一的Rokid举办了新品发布会,在发布会的同步直播间,出现了一条不合时宜的“什么时候发去年的工资”的评论。 “公司确实没有给我们发2023年的十三薪和年终…...
Python 中的装饰器是什么?
装饰器是Python中一种非常强大的功能,它允许你在不修改原始函数代码的前提下,增加额外的功能或改变函数的行为。 装饰器本质上是一个接受函数作为参数的函数,并返回一个新的函数。 通过装饰器,我们可以轻松地实现诸如日志记录、…...
jupyter notebook的 markdown相关技巧
目录 1 先选择为markdown类型 2 开关技巧 2.1 运行markdown 2.2 退出markdown显示效果 2.3 注意点:一定要 先选择为markdown类型 3 一些设置技巧 3.1 数学公式 3.2 制表 3.3 目录和列表 3.4 设置各种字体效果:加粗,斜体&#x…...
oracle 创建只可以查询权限用户+sqldeveloper如何看到对应表
声明 申明部分是从其他csdn用户哪里复制的,只是自己操作后发现无法达到我最后的预期,所以关闭忘记是看的那篇了,如果有侵权请见谅,联系我删除谢谢。 好了,故事的开始是我最近删投产表了。没错职业黑点,清…...
化工行业 FMEA 与安全生产的关系
【大家好,我是唐Sun,唐Sun的唐,唐Sun的Sun。】 在化工行业这个充满复杂性和潜在危险的领域中,确保安全生产是至关重要的目标。失效模式及影响分析(FMEA)作为一种有效的风险管理工具,在保障化工行…...
前端node.js
一.什么是node.js 官网解释:Node.js 是一个开源的、跨平台的 JavaScript 运行时环境。 二.初步使用node.js 需要区分开的是node.js和javascript互通的只有console和定时器两个API. 三.Buffer Buffer 是一个类似于数组的 对象,用于表示固定长度的字节序列。Buffer…...
深度学习:GPT-2的MindSpore实践
GPT-2简介 GPT-2是一个由OpenAI于2019年提出的自回归语言模型。与GPT-1相比,仍基于Transformer Decoder架构,但是做出了一定改进。 模型规格上: GPT-1有117M参数,为下游微调任务提供预训练模型。 GPT-2显著增加了模型规模&…...
Java线程池详解:从基础到实践
Java线程池详解:从基础到实践 在现代多线程编程中,线程池是一个非常重要的工具。它能帮助开发者更高效地管理线程资源,避免频繁创建和销毁线程导致的性能损耗,并提供更灵活的任务调度机制。本文将详细讲解线程池相关知识…...
A*(A-star)算法
概述 A*(A-star)算法是一种在图中寻找从初始节点到目标节点最短路径的启发式搜索算法。它结合了Dijkstra算法的确保性(保证找到一条最短路径)和贪心算法的高效性(快速找到目标)。A*算法通过评估函数f(n) …...
计算机类大厂实习春招秋招开发算法面试问答练习题
计算机类大厂实习春招秋招开发算法面试问答练习题 下面有十个非常重要且常问,面试者却注意不到的问题,我们一个个来看,一个个来学。 线程创建到删除过程中,底层是怎么实现的 1.线程创建 线程创建是线程生命周期的起点。在操作系统中,线程可以通过多种方式创建,但无论哪…...
C++ 11重点总结1
智能指针 智能指针: C11引入了四种智能指针: auto_ptr(已弃用)、unique_ptr、shared_ptr和weak_ptr。智能指针可以更有效地管理堆内存,并避免常见的内存泄漏问题。 shared_ptr: 自定义删除器。 shared_ptr使用引用计数来管理它指向的对象的生命周期。多个shared_ptr实例可以指向…...
Java异常
目录 一、异常的层次结构 1.1、Throwable 1.2、Error(错误) 1.3、Exception(异常) 运行时异常 非运行时异常 (编译异常) 1.4、可查的异常(checked exceptions)和不可查的异常…...
《热带气象学报》
《热带气象学报》创刊于1984年,前身为《热带气象》,1993年更名为《热带气象学报》,是广东省气象局主管,中国气象局广州热带海洋气象研究所主办的中文学术期刊。 本刊坚持“热带气象”的办刊特色,主要刊登:…...
解决docker不加载 /etc/docker/daemon.json文件的问题
文章目录 问题起源解决方案问题反思 问题起源 如题,最近在ubuntu24.04-LTS-server安装docker时,安装成功后设置源来设置镜像。 设置完成功拉取镜像,我就关机下次使用。 但是当我重启发现呢,镜像都不在了,但是由于网络…...
数据结构(初阶7)---七大排序法(堆排序,快速排序,归并排序,希尔排序,冒泡排序,选择排序,插入排序)(详解)
排序 1.插入排序2.希尔排序3.冒泡排序4.选择排序(双头排序优化版)5.堆排序6.快速排序1). 双指针法2).前后指针法3).非递归法 7.归并排序1).递归版本(递归的回退就是归并)2).非递归版本(迭代版本) 计算机执行的最多的操作之一就有排序,排序是一项极其重要的技能 接下…...
题解 洛谷 Luogu P1182 数列分段 Section II 二分答案 C/C++
题目传送门: P1182 数列分段 Section II - 洛谷 | 计算机科学教育新生态https://www.luogu.com.cn/problem/P1182思路: 二分答案,每次以区间 [l, r] 中点 m 为每段和的阈值 判断在此前提下,划分段数是否不大于 M 是就记录答案…...
鸿蒙心路旅程:从实践到创新——开发者的深度技术分享
目录 1. 引言:成为HarmonyOS NEXT开发者的动机 2. 项目初始化与架构设计:从零开始的技术规划 2.1 DevEco Studio的配置与项目初始化 2.2 分层架构设计 3. 分布式应用设计:挑战与解决方案 3.1 分布式架构设计:分布式软总线 …...
elementUI非常规数据格式渲染复杂表格(副表头、合并单元格)
效果 数据源 前端代码 (展示以及表格处理/数据处理) 标签 <el-table :data"dataList" style"width: 100%" :span-method"objectSpanMethod"><template v-for"(item, index) in headers"><el-table-column prop"…...
mysl数据库(八)事务、三种读现象
事务、三种读现象 文章目录 事务、三种读现象一、事务介绍二、事务的使用三、三种读现象 一、事务介绍 事务是mysql的一种机制,一个事务里可以包含多条sql语句。执行事务相当于拍了一张快照,在事务执行完提交以前可以回滚至最初的状态,当然事…...
【DVWA】File Inclusion文件包含实战
安能有术无道有道无心,乐得仁心仁义正心行道。 1.File Inclusion(Low) 相关代码分析 <?php// The page we wish to display $file $_GET[ page ];?>可以看到,服务器端对page参数没有做任何的过滤跟检查。 服务器期望用户的操作是点击下面的…...
(免费送源码)计算机毕业设计原创定制:Java+ssm+JSP+Ajax SSM棕榈校园论坛的开发
摘要 随着计算机科学技术的高速发展,计算机成了人们日常生活的必需品,从而也带动了一系列与此相关产业,是人们的生活发生了翻天覆地的变化,而网络化的出现也在改变着人们传统的生活方式,包括工作,学习,社交…...
异常处理(4)throws
异常处理(4) throws 前言:运行时异常(RuntimeException)或它的子类可以不做处理,因为这类异常很普遍,若全部处理,可能会对程序的可读性和运行效率产生影响。此外,即使不使…...
点云欧式聚类,条件欧式聚类算法原理及推导
点云欧式聚类算法数学推导 点云欧式聚类(Euclidean Clustering for Point Clouds)是点云处理中常用的一种无监督聚类方法。它基于欧式距离将点云中的点划分为多个簇,常用于分割、目标检测等任务。以下是算法的数学推导和实现原理。 问题定义…...
每日十题八股-2024年11月27日
1.类型互转会出现什么问题吗? 2.为什么用bigDecimal 不用double ? 3.装箱和拆箱是什么? 4.Java为什么要有Integer? 5.Integer相比int有什么优点? 6.那为什么还要保留int类型? 7.说一下 integer的缓存 8.怎么…...
C++虚函数面试题及参考答案
什么是虚函数?它的作用是什么? 虚函数是在基类中使用关键字 virtual 声明的成员函数。当在派生类中重写(override)这个函数时,会根据对象的实际类型来调用相应的函数版本,而不是仅仅根据指针或引用的类型来…...
如何搭建C++环境--1.下载安装并调试Microsoft Visual Studio Previerw(Windows)
1.首先,打开浏览器 首先,搜索“Microsoft Visual Studio Previerw” 安装 1.运行VisualStudioSetup (1).exe 无脑一直点继续 然后就到 选择需要的语言 我一般python用pycharm Java,HTML用vscode(Microsoft Visual Studio cod…...