mac 卸载流氓软件安全助手
之前个人电脑在公司使用过一段时间,为了使用网线联网安装了公司指定的 联软上网助手,谁知安装容易卸载难,后来找运维来卸载,输入管理员密码后,也无反应,最后不了了之了,这个毒瘤软件长期在后台驻留,看着心烦,近来终于找到方法给它卸载掉了,心情舒畅之余特来此记录一下。
推荐方案1
1、打开 finder => 应用程序 => 找到安全助手 => 移到废纸篓
2、打开 /opt/LVUAAgentInstBaseRoot 目录, 里面有个 uninstall.exe 双击运行一下, 会打开一个终端窗口,会自动执行卸载操作,有可能会提示输入管理员密码,输入后,后续依然有可能会弹窗出安全助手的卸载提示窗,让输入后台管理员的密码,输入后稍等片刻就成功的卸载完成了(我之前卸载不掉就是从正常卸载界面输入管理员密码无效,这次是从终端启动卸载后,成功的)。

3、最后删除 /opt/ 下的 LVUAAgentInstBaseRoot、lvagentcmd、log 三个文件,就清理干净了。

备选方案2
以上操作也可以在终端通过指令完成
# cd 到 opt 目录下
cd /opt# 列出 `/opt` 目录下文件和文件夹的命令。`-l` 选项表示使用长格式显示,`-O` 选项表示显示文件的扩展属性。
ls -lO# 将文件由隐藏状态改为可见,lsattr 是 Linux系的命令,Mac下你需要使用 chflags
sudo chflags -f -R nohidden LVUAAgentInstBaseRoot# 解锁文件修改权限
sudo chflags -f -R noschg LVUAAgentInstBaseRoot# 重命名,相当于删除了原文件
sudo mv LVUAAgentInstBaseRoot OLD_LVUAAgentInstBaseRoot# 批量关闭相关进程
sudo pkill dvc-screen-exe dvc-unisensitive-exe dvc-core-exe dvc-remote-exe
参考链接:https://www.zhihu.com/question/308601708/answer/1916872794
思考
opt 文件夹是什么
在 2022 我用 MacBook Pro 整一年 【感想 与 踩坑指南】 中我们提过,/opt 属于用户级的程序目录,可以理解为widow 的 D:/Software,opt 在英文中有可选的意思,这里可以用于放置第三方大型软件或游戏,当你不需要时,直接 rm -rf 掉即可, 在硬盘容量不够时,也可将 opt 单独挂载到其他磁盘上使用。

opt 下的 LVUAAgentInstBaseRoot 目录是什么
联软旗下安全软件的文件目录,相关数据都在这里面,不过文件默认在保护模式无法删除,rm -rf 可能都不行。
mac 下怎么对文件设置和解除保护模式
为了防止意外的强制删除文件带来的麻烦,有时我们需要将特定文件保护起来,即使使用 rm -rf 命令也无法直接删除这些文件。
在 Linux 系统中,可以使用 lsattr 命令来改变文件的属性,从而实现文件保护。然而,在 macOS 中,由于其基于 Unix,命令的使用略有不同。对于 macOS 用户,需要使用 chflags 命令来修改文件的属性。例如,要保护文件LVUAAgentInstBaseRoot,可以执行以下命令:
sudo chflags schg LVUAAgentInstBaseRoot
执行此命令后,文件将被锁定,即使使用 sudo 也无法直接删除。要解锁文件,可以执行相同的命令,并将 schg 替换为 noschg。
chflags 命令的语法如下:
chflags [-R] flags fileName# -R 是可选参数,用于递归地应用标志到指定目录下的所有文件和子目录。
# flags 是要设置的标识参数。
# fileName 要操作的文件或目录。
flags 支持的常用参数如下:
hidden:将文件或目录隐藏,使其在图形界面的 Finder 中不可见。
nohidden:取消文件或目录的隐藏标记。
uchg:防止文件被修改、重命名或删除,只有超级用户或文件的拥有者才能更改标志。
nouchg:取消用户更改禁止标志。
schg:防止文件被修改、重命名或删除,只有超级用户才能更改标志。
noschg:取消系统更改禁止标志。
# 查看文件的 flags
ls -lO fileName

总结
有些软件为了不让顺利的卸载,真是煞费苦心,通过深入的了解它们防删除手段,才能针对性的找到解决办法,举一反三,类似的问题,也可以尝试同样的思路。
相关文章:
mac 卸载流氓软件安全助手
之前个人电脑在公司使用过一段时间,为了使用网线联网安装了公司指定的 联软上网助手,谁知安装容易卸载难,后来找运维来卸载,输入管理员密码后,也无反应,最后不了了之了,这个毒瘤软件长期在后台驻…...
EM算法到底是什么东东
EM(Expectation-Maximization期望最大化)算法是机器学习中非常重要的一类算法,广泛应用于聚类、缺失数据建模、隐变量模型学习等场景,比如高斯混合模型(GMM)就是经典应用。 🐤 第一步ÿ…...
⭐算法OJ⭐滑动窗口最大值【双端队列(deque)】Sliding Window Maximum
文章目录 双端队列(deque)详解基本特性常用操作1. 构造和初始化2. 元素访问3. 修改操作4. 容量操作 性能特点时间复杂度:空间复杂度: 滑动窗口最大值题目描述方法思路解决代码 双端队列(deque)详解 双端队列(deque,全称double-ended queue)是…...
oracle 快速创建表结构
在 Oracle 中快速创建表结构(仅复制表结构,不复制数据)可以通过以下方法实现,适用于需要快速复制表定义或生成空表的场景 1. 使用 CREATE TABLE AS SELECT (CTAS) 方法 -- 复制源表的全部列和数据类型,但不复制数据 C…...
沧州铁狮子
又名“镇海吼”,是中国现存年代最久、形体最大的铸铁狮子,具有深厚的历史文化底蕴和独特的艺术价值。以下是关于沧州铁狮子的详细介绍: 历史背景 • 铸造年代:沧州铁狮子铸造于后周广顺三年(953年)&#…...
Python•判断循环
ʕ⸝⸝⸝˙Ⱉ˙ʔ ♡ 判断🍰常用的判断符号(比较运算符)andor括号notin 和 not inif-elif-else循环🍭计数循环 forrange()函数简易倒计时enumerate()函数zip()函数遍历列表遍历元组遍历字符串遍历字典条件循环 while提前跳转 continue跳出循环 break能量站😚判断🍰 …...
【力扣hot100题】(060)分割回文串
每次需要判断回文串,这点比之前几题回溯题目复杂一些。 还有我怎么又多写了循环…… class Solution { public:vector<vector<string>> result;string s;bool palindromic(string s){for(int i0;i<s.size()/2;i) if(s[i]!s[s.size()-1-i]) return …...
C++---day7
#include <iostream> #include <cstring> #include <cstdlib> #include <unistd.h> #include <sstream> #include <vector> #include <memory>using namespace std;class Stu { private:public:};// 自定义 vector 类,重…...
SvelteKit 最新中文文档教程(17)—— 仅服务端模块和快照
前言 Svelte,一个语法简洁、入门容易,面向未来的前端框架。 从 Svelte 诞生之初,就备受开发者的喜爱,根据统计,从 2019 年到 2024 年,连续 6 年一直是开发者最感兴趣的前端框架 No.1: Svelte …...
C#后端开发培训教程
C#后端开发培训教程 SqlServer 1.创建数据、备份还原数据库 2.SqlServer:数据类型 3.Sql语句:增删改查 4.班级、学生数据结构示例 C#基础语法 C#基础语法、数据类型 C#数组、集合、类操作 C#面向对象基础 C# JSON 数据格式序列化 C# Linq 数据源操作基础语…...
flink 增量快照同步文件引用关系和恢复分析
文章目录 文件引用分析相关代码分析从state 恢复,以rocksdb为例不修改并行度修改并行度keyGroupRange过程问题 文件引用分析 每次生成的checkpoint 里都会有所有文件的引用信息 问题,引用分析里如何把f1,f2去掉了,可以参考下面的代码&#…...
c++概念—内存管理
文章目录 c内存管理c/c的内存区域划分回顾c语言动态内存管理c动态内存管理new和delete的使用new和delete的底层逻辑operator new函数和operator delete函数new和delete的实现操作方式不匹配的情况定位new new/delete和malloc/free的区别 c内存管理 在以往学习c语言的过程中&…...
如何判断多个点组成的3维面不是平的,如果不是平的,如何拆分成多个平面
判断和拆分三维非平面为多个平面 要判断多个三维点组成的面是否为平面,以及如何将非平面拆分为多个平面,可以按照以下步骤进行: 判断是否为平面 平面方程法: 选择三个不共线的点计算平面方程:Ax By Cz D 0检查其…...
私有化视频会议系统,业务沟通协作安全不断线
BeeWorks Meet视频会议平台具备丰富而强大的功能,能够满足企业多样化的业务场景需求。其会议管理功能,让企业能够轻松安排和管理各类会议。 从创建会议、设置会议时间、邀请参会人员到会议提醒,一应俱全,确保会议的顺利进行。多人…...
无人机双频技术及底层应用分析!
一、双频技术的核心要点 1. 频段特性互补 2.4GHz:穿透力强、传输距离远(可达5公里以上),适合复杂环境(如城市、建筑物密集区),但易受Wi-Fi、蓝牙等设备的干扰。 5.8GHz:带宽更…...
【电视软件】小飞电视v2.7.0 TV版-清爽无广告秒换台【永久更新】
软件介绍 小飞电视是一款电视端的直播软件,无需二次付费和登录,资源丰富,高清流畅。具备开机自启、推送功能、自定义直播源、个性化设置及节目预告等实用功能,为用户带来良好的观看体验。基于mytv开源项目二改,涵盖央…...
video自动播放
文章目录 前言在iOS系统中,H5页面的自动播放功能受到了一些限制,为了提升用户体验和保护用户隐私,Safari浏览器对于自动播放的行为做了一些限制。 一、自动播放的限制二、解决方案 前言 在iOS系统中,H5页面的自动播放功能受到了一…...
以太网安全
前言: 端口隔离可实现同一VLAN内端口之间的隔离。用户只需要将端口加入到隔离组中,就可以实现隔离组内端口之间的二层数据的隔离端口安全是一种在交换机接入层实施的安全机制,旨在通过控制端口的MAC地址学习行为,确保仅授权设备能…...
Linux 递归查找并删除目录下的文件
在 Linux 中,可以使用 find 命令递归查找并删除目录下的文件 1、示例命令 find /path/to/directory -type f -name "filename_pattern" -exec rm -f {} 2、参数说明 /path/to/directory:要查找的目标目录type f:表示查找文件&am…...
Valgrind——内存调试和性能分析工具
文章目录 一、Valgrind 介绍二、Valgrind 功能和使用1. 主要功能2. 基本用法2.1 常用选项2.2 内存泄漏检测2.3 详细报告2.4 性能分析2.5 多线程错误检测 三、在 Ubuntu 上安装 Valgrind四、示例1. 检测内存泄漏2. 使用未初始化的内存3. 内存读写越界4. 综合错误 五、工具集1. M…...
【BUG】生产环境死锁问题定位排查解决全过程
目录 生产环境死锁问题定位排查解决过程0. 表面现象1. 问题分析(1)数据库连接池资源耗尽(2)数据库锁竞争(3) 代码实现问题 2. 分析解决(0) 分析过程(1)优化数据库连接池配置(2)优化数…...
学习MySQL第七天
夕阳无限好 只是近黄昏 一、子查询 1.1 定义 将一个查询语句嵌套到另一个查询语句内部的查询 我们通过具体示例来进行演示,这一篇博客更侧重于通过具体的小问题来引导大家独立思考,然后熟悉子查询相关的知识点 1.2 问题1 谁的工资比Tom高 方…...
Spring启示录、概述、入门程序以及Spring对IoC的实现
一、Spring启示录 阅读以下代码: dao package org.example1.dao;/*** 持久层* className UserDao* since 1.0**/ public interface UserDao {/*** 根据id删除用户信息*/void deleteById(); } package org.example1.dao.impl;import org.example1.dao.UserDao;/**…...
电机的了解到调试全方面讲解
一、什么是电机 电机是一种将电能转换为机械能的装置,通常由定子、转子和电磁场组成。 当电流通过电机的绕组时,产生的磁场会与电机中的磁场相互作用,从而使电机产生旋转运动。电机广泛应用于各种机械设备和工业生产中,是现代社会不可或缺的重要设备之一。 常见的电机种…...
笔试专题(七)
文章目录 乒乓球筐(哈希)题解代码 组队竞赛题解代码 删除相邻数字的最大分数(线性dp)题解代码 乒乓球筐(哈希) 题目链接 题解 1. 两个哈希表 先统计第一个字符串中的字符个数,再统计第二个字…...
Vue2 插槽 Slot
提示:插槽的目的是让我买原来的设备具备更多的扩展性。 文章目录 前言在组件中定义插槽(子组件视角)1. 默认插槽2. 具名插槽(带名称的插槽)3. 作用域插槽(带数据的插槽) 使用插槽(父…...
说一下java的探针agent的应用场景
什么是agent Java探针通常是指Java Agent 它是一种可以在JVM启动时或运行时加载的组件,用来修改或增强字节码,从而监控或改变程序的行为 agent应用在哪些方面 1.Arthas就是应用了我们的探针技术 2.代码热替换实现我们的热部署,Java Agent可…...
【嵌入式学习3】UDP发送端、接收端
目录 1、发送端 2、接收端 3、UDP广播 1、发送端 from socket import *udp_socket socket(AF_INET,SOCK_DGRAM) udp_socket.bind(("127.0.0.1",3333))data_str "UDP发送端数据" data_bytes data_str.encode("utf-8") udp_socket.sendto(d…...
Linux 系统 SVN 源码安装与配置全流程指南
Linux系统SVN源码安装与配置全流程指南 一、环境准备 系统要求 CentOS 7及以上版本需安装GCC编译工具链 依赖项 APR/APR-UTIL(Apache可移植运行库)SQLite(嵌入式数据库)zlib(数据压缩库) 二、下载及安装…...
Redis 的五种数据类型面试回答
这里简单介绍一下面试回答、我之前有详细的去学习、但是一直都觉得太多内容了、太深入了 然后面试的时候不知道从哪里讲起、于是我写了这篇CSDN帮助大家面试回答、具体的深入解析下次再说 面试官你好 我来介绍一下Redis的五种基本数据类型 有String List Set ZSet Map 五种基…...
