Short Answer
In the unresponsive terminal:
- Hit Ctrl+Z.
- Type
bg
and enter.
- Type
disown
and enter.
Long Answer
In the unresponsive terminal, hit Ctrl+Z, this will "pause" the process (or "job") and return the console control to you. However, you'll notice that gedit
becomes unresponsive and you can't use it.
Extra: if you want to, you can execute the command jobs
, you'll notice that it'll read Stopped for the gedit
command, that's why you can't use it.
To make the job successfully run in the background (i.e. to make gedit
responsive again), execute the command bg
(meaning background). You'll now be able to use gedit
, and at the same time have the prompt to yourself.
Extra: now, if you execute jobs
, you'll notice that it'll read Running.
You can overcome all of this from the very beginning. When you're launching gedit
from the terminal, add an &
to the end of the command, so something like this gedit /path/to/file &
. This will launch gedit
in the background from the first place (you might need to hit Enter a couple of times to get the console control back).
Extra: if you were following these extra notes, you might have noticed that the second time you did jobs
, you could see that bash added a &
to the end of the gedit
command.
Once you get used to this system, you might notice that if you close the terminal, gedit will also terminate, without even a confirmation dialog. To prevent this from happening, run disown
, which will detach the gedit process from the terminal, removing it from the list returned by jobs
.
Best Answer
gedit
is a graphical program, so just as you would not run it asroot
with straightsudo
, you shouldn't run it as another user with straightsudo
or straightsu
.Instead, if you (i.e.,
foo
) have the power to run programs as another user withsudo
, this is probably the easiest way forfoo
to rungedit
asbar
:If you don't have the power to run programs as another user with
sudo
but you cansu
tobar
, then this is the easiest way:The
-w
flag (equivalent to--su-mode
) makesgksu
(which is a frontend for bothsudo
andsu
) usesu
instead ofsudo
.xhost
command to makegksu -w ...
work.If you want a graphical terminal instance (
gnome-terminal
) from which you can run anything asbar
including graphical applications, you should consider just running a new instance ofgnome-terminal
asbar
(which you can do the same way as runninggedit
, detailed above).