tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Reparenting processes?



	hello.  Dependning on why you're doing this and what you're running, I
wonder if either screen(1) using the detach feature will do what you want,
or if tmux(1) using a similar detach feature will do what you want.  They
don't actually reparent, but do allow you to log out of one shell and then
log into another and reattach the session you had running before you logged
out initially.

-Brian
On Dec 7,  8:54pm, Mouse wrote:
} Subject: Reparenting processes?
} I've been thinking about building a way to move a job between shells,
} in particular between one window, ssh session, whatever, and another.
} 
} Obviously, this will involve much hackery of existing facilities.  For
} example, it involves switching controlling terminals.  I expect I can
} manage most of it without too much trouble - though that's said without
} having actually tried it.
} 
} But the real bugaboo in my mind is reparenting processes.
} 
} I'm writing here to ask two questions.
} 
} One is: does anyone have experience trying this, or otherwise have any
} reports on attempts to do this, to share?  I'd be interested in any.
} 
} The other is: is there any security property that such a facility would
} break badly?  (There are lots of minor things that might break, such as
} potentially changing terminal type, but that's basically no different
} from telling the terminal emulator to change emulation on the fly,
} which my terminal emulator has been capable of for decades.  I haven't
} come up with any major security issues yet, but that means little.)
} 
} I'm willing to require - indeed, I expect to _want_ to require - that
} the two parents (old and new) be cooperating in this endeavour.  I'm
} willing to require that all three processes be running with the same
} root, though it'd be nice if that weren't necessary.  It would address
} some, though not all, of the desired use cases if all three processes
} have to be running with the same UID.  It would even be of _some_ use
} if it required cooperation from root in some form (a fourth process,
} maybe?).
} 
} As far as I can tell, reparenting currently is limited to (1) init
} inheriting orphans and (2) sharply limited partial reparenting due to
} ptrace().
} 
} /~\ The ASCII				  Mouse
} \ / Ribbon Campaign
}  X  Against HTML		mouse%rodents-montreal.org@localhost
} / \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B
>-- End of excerpt from Mouse




Home | Main Index | Thread Index | Old Index