java卸载文件在哪里找_如何从Java卸载Linux文件夹

我试过了:

final ProcessBuilder pb = new ProcessBuilder("umount", "foldername");

final Process p = pb.start();

投掷

umount: /home/user/foldername is not in the fstab (and you are not

root)

我试过了

final ProcessBuilder pb = new ProcessBuilder("sudo","umount", "foldername");

final Process p = pb.start();

投掷

sudo: sorry, you must have a tty to run sudo

我获得了root密码,但是无法将其提供给ProcessBuilder.另外,我无法编辑fstab(或任何需要编辑的内容),因为它是从保存的OS映像在远程服务器上启动的远程虚拟机.

我只想以root用户身份运行命令.

解决方法:

您有两种选择:

>使控制终端可用于sudo,以便用户可以在其中键入密码.

pb = new ProcessBuilder("sh", "-c", "sudo umount foldername

Process p = pb.start();

p.waitFor();

>使用gksudo而不是sudo执行程序.使用GTK的系统通常带有gksu软件包,作为su和sudo的图形界面.

pb = new ProcessBuilder("gksudo","umount", "foldername");

>打开sudo的终端仿真器窗口:

pb = new ProcessBuilder("xterm","-e","sudo","umount","foldername");

标签:shell,linux,java

来源: https://codeday.me/bug/20191201/2081409.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值