java - 如何仅使用 java 挂载设备?

标签 java linux mount

好吧,我意识到这可能是不可能的......

我有一台运行 Linux 的设备,它可能没有可见的用户界面。它将有一个打开的 USB 端口...我希望能够编写 java 以允许整个系统检测设备何时插入 USB 端口,然后挂载该设备。

我知道如何从命令行执行此操作,但它需要“sudo”来派生一个具有提升权限的新进程来执行该任务。我不知道如何编写可以绕过(是的,我想绕过)mount 的安全保护的java 程序。

runtime.exec() 并没有真正完成我希望完成的工作。这是“不能用 Java 完成”的问题吗?

我希望在不求助于外部可执行代码的情况下做到这一点。

最佳答案

你无法绕过mount的安全保护。保护不在安装中。保护在内核中。

如果您偶然找到一种方法并将其发布,它将被删除。

如果您可以控制正在运行的操作系统,则可以将选项 user 添加到/etc/fstab 中的挂载点。这样做之后,“mount/path”和“umount/path”从 runtime.exec() 开始工作,无需提升。 mountumount 是 setuid-root 以允许它工作。

关于java - 如何仅使用 java 挂载设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55871641/

相关文章:

java - Spring Data JPA 不在 Spring Boot 应用程序中使用 AttributeConverter

windows - 如何安装 DBD::优势

监控linux系统的python插件

Java catch linux挂载/卸载文件夹

php - 允许 Apache/PHP 对挂载目录进行读/写访问

java - 为什么我在 Jersey REST API 上发布 POST 时收到 500 响应?

java - 开发中的 Oracle jdk 和生产中的 Jrockit,这会导致任何问题吗?

linux - 制作一个可点击的 Linux 桌面快捷方式来执行 ant 构建脚本

ubuntu - 挂载 HDFS 目录

java - 如何在 Java 中创建 JSON 数组