Obecně, musí se uživatel přihlásit, aby spustil proces a stal se jeho vlastníkem (ruid nebo euid)? Vztahuje se to na některého uživatele nebo uživatele bez oprávnění root?
Například:
-
V zaváděcí sekvenci Linuxu jádro spustí systém init jako první proces a poté proces init spustí
login
aby se každý uživatel mohl přihlásit.
Proces init je ve vlastnictvíroot
a provede uživateleroot
Před spuštěníminit
se musíte přihlásit proces? Viz Proč existuje proces `systemd` vlastněný každým přihlášeným uživatelem? -
Při použití
ssh
pro spuštění příkazu bez spuštění interaktivního shellu se musíme nejprve přihlásit nebo nespustit příkaz?
Pokud se ke spuštění procesu jako jeho vlastník nemusím přihlásit, jak to mohu udělat?
Děkuji.
Přijatá odpověď:
Ne, ke spuštění procesu běžícího jako daný uživatel se nemusíte přihlašovat. Přihlášení je konstrukce uživatelského prostoru; jádro se o to nestará. Existuje několik příkladů tohoto; například úlohy cron mohou běžet jako jakýkoli uživatel, aniž by byl tento uživatel přihlášen.
Chcete-li odpovědět na vaše konkrétní otázky:
- ne, root se ke spuštění
init
nemusí přihlašovat naštěstí (představte si, že byste jinak zvládli flotilu tisíců serverů a milionů virtuálních počítačů); - připojení pomocí SSH se počítá jako přihlášení.