linux - 在 linux 和 mac 中使用 JNA 或类似的方法关闭并重新启动计算机

标签 linux jna restart shutdown

我正在尝试用 java 编写一个函数,它将关闭、强制关闭、重新启动和强制重新启动计算机,它应该可以在 Windows、Linux 和 Mac 上运行。

Windows 不是问题,但由于 sudo 权限,我无法在 Linux 上运行命令来关闭。因此,我正在考虑使用 JNA 关闭计算机(我知道您可以在 Windows 上使用 JNA 来执行此操作),但我无法在网上找到任何适用于 linux 或 mac 的示例。

谁能帮帮我?将不胜感激!

即使不是通过 JNA,只要我能找到一些方法来完成它,它也会对我有很大帮助。

最佳答案

如果您仅使用 Java 就可以简单地覆盖系统保护,那将是一个很大的安全漏洞!我很惊讶您可以在 Windows 上执行此操作。

无论如何,只有当您对您的机器具有管理访问权限才能将程序设置在有权关闭/重启的特定组中时才能这样做。否则,您不能这样做。

我认为您可以直接将这些权限授予您的 JVM,但如果其他 Java 程序试图关闭,那可能很危险。

关于linux - 在 linux 和 mac 中使用 JNA 或类似的方法关闭并重新启动计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7633433/

相关文章:

swift - 如何在 SpriteKit 和 Swift 中重启游戏

用于执行 Bash/ksh 环境和 shell 应用程序的 Python GUI?

c - 在内核程序中获取 root 用户 id 并与当前用户 id 进行比较

java - 为什么我在 jna 中扩展 Structure 的类构造函数中遇到 NullPointerException?

java - JNA:如何将字符串作为 void* 从 Java 传递到 C

Java - 检查另一个 Java 应用程序是否正在运行

debugging - Emacs GDB 重新运行行为

linux - Flex : MXML syntax highlighting, GNU/Linux 上的自动完成和括号匹配功能?

linux - 如何在 Bash 中编写将在 CTRL+C 上中断的循环?

ffmpeg - 为什么在使用 Java JNA 编码声音文件时出现提示音?