如何使用Free Pascal将sudo \ root密码传递给Linux命令

关于这个问题的大部分问题似乎都与C有关。 我使用Free Pascal和Lazarus IDE ,版本分别为2.4.0和0.9.30。

我正在创build一个调用并将parameter passing给Linux命令的GUI。 我不希望我的用户必须使用sudo \ root来运行整个GUI,而是在适当的时候提示input密码。

我正在使用TProcess调用Linux命令并传递和读取值。 我不能解决,但是,如何将sudo密码从我自己的程序传递给命令?

举个例子,采取以下正常的命令行:

 dd if=/dev/hda1 of=~/image.dd Enter sudo password: 

我的程序调用了dd ,并从GUI界面传递of值和值,然后需要收集并将sudo密码传递给dd

有点旧,但是 – 在命令前面使用pkexec,例如:pkexec ls / root

您将每次都有用于输入root密码的GUI信息。 在LinuxMint测试

在你已经使用TProcess的前提下,不要直接向dd发出命令行调用,你可以使用以下调用su / sudo方法之一:

  • gksudo ( Ubuntu natty手册页 )
  • kdesudo ( Ubuntu的natty手册页 )