How to execute "gksudo umount VirtualDVD"

Demosthenes Koptsis demosthenesk at gmail.com
Fri Oct 28 04:05:17 EDT 2016


Yes it was pasted wrong...

     def umount(self):
         '''unmounts VirtualDVD'''
         cmd = 'gksudo umount VirtualDVD'
         proc = subprocess.Popen(str(cmd), shell=True, 
stdout=subprocess.PIPE).stdout.read()
         print proc

it fails silently.... the gksudo runs correctly. I can input the password.

But the umount does nothing. I keep have mounted the VirtualDVD folder.


On 10/28/2016 12:54 AM, Ian Kelly wrote:
> On Thu, Oct 27, 2016 at 3:30 PM, Demosthenes Koptsis
> <demosthenesk at gmail.com> wrote:
>> I want to execute the command "gksudo umount VirtualDVD"
>>
>> My code is this but it fails:
>>
>> def umount(self):
>>      '''unmounts VirtualDVD''' cmd ='gksudo umount VirtualDVD' proc =
>> subprocess.Popen(str(cmd),shell=True,stdout=subprocess.PIPE).stdout.read()
>>      print proc
> It looks like your code pasted incorrectly.
>
>> It pops up the gksudo dialog, and then fails. But i don't get any stdout or
>> stderror.
> Fails how? Is there an error? Does it hang? Does nothing happen at all?
>
> My initial thought is that you might want to try using
> Popen.communicate instead of stdout.read in case you're getting
> deadlocked. See the big red warning below
> https://docs.python.org/3/library/subprocess.html#subprocess.Popen.stdout




More information about the Python-list mailing list