如题,macOS 系统,多用户,A 和 B ,都是管理员权限(这个应该无所谓)。 A 用户有个 X 软件的开机启动项,X 软件会设置系统代理之类的影响网络的功能。
场景 2 是没问题的。 场景 1 的问题是:1 、如果 B 用户也把 X 软件设置为开机启动,会因为开了两个 X 软件,发生端口冲突等异常; 2 、如果 B 用户不把 X 软件设置为开机启动,直接正常用的时候,他无法控制 X 软件(因为是 A 用户启的,在后台运行),会有时因为 X 软件导致的网络问题无法正常上网。
诉求: 场景 1 切换 B 用户时,自动关掉该 X 软件;之后切换回 A 用户时,再次自动重新打开该 X 软件; 或者让 B 用户也能看到 X 软件( X 软件启动后会出现在 A 用户的菜单栏)或控制这软件(重新打开的效果是重复开、有两个进程)。
如何做到?谢谢🙏
1
zhaoxin 2023-02-22 17:39:42 +08:00
不清楚你用的是哪个软件,如果是 torrent 这种下载类型的软件,端口是可以重新设置的。而且 A 和 B 的设置应该是单独的。这样,你只要设置成不同的端口就可以了。
你也可以 A 、B 使用不同软件,比如一个用 qBitTorrent ,一个用 Transmission 。或者使用多个版本,一个用 4.0 ,一个用 4.5 。 如果你的确需要在 B 中结束 A 的进程,在活动监视器里选所有进程应该就可以了。在视图->显示所有进程。 |
2
dragonfly74 OP @zhaoxin 感谢回复。软件是 ClashX ,你懂的。
我即使更改端口,成功启动了两个,也会受之前 A 用户启动的第一个影响; 使用不同软件,和上述一样,因为 A 用户启动的 X 软件并未关闭,也会作用于全局(系统代理)。 不过你倒是让我想起写一个脚本,给 B 用户用,帮他关掉 A 启动的软件的后台进程 |
3
zhaoxin 2023-02-22 17:53:17 +08:00
@dragonfly74 ClashX 的话,只要 A 开了,B 没有必要开。就可以正常上网啦。B 根本不需要开 ClashX 啊。
|
4
dragonfly74 OP @zhaoxin 当 A 开了,节点后来挂了,B 用的时候,就会根据规则,所有国外网站打不开,需要 B 可以控制,或者 B 登陆时软件关闭( B 用户不需要它)
|
5
dragonfly74 OP 最终写了个脚本,放在公共桌面,其他用户登录后需要的时候,手动运行一下这个脚本。脚本里面内容很简单,就是杀掉这个软件进程,重新打开一次这个软件
|