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

Re: Suggestion



Thomas MANGIN wrote:

> I would like to submit a sugestion even if I wasn t able to install Hurd
> for the moment due to hardware and internet access restruiction.
> I notice in Linux init process that user level applications have no
> possibility to change anything in the "boot sequence" I mean add a new
> entry to Path or excute a user level deamon and so on. I was thinking
> about domething like and /etc/init.d/application folder where every
> software would be able to write. This will allow something like
> for I in /etc/init.d/application/*
> do
>  exec $i
> done
> 
> This is mainly the basic idea. If this is totally stupid I would like t
> oknow where I am false

I'm not exactly sure, but I think there are good reasons for this to not
beeing possible.

The first reason is security. Keep in mind that Unix systems are not
only designed for the desktop, but also as multiuser systems. Allowing
every user application to set programs for running at startup would
allow users to execute programs with root privileges. This is definitely
not acceptable. On the other hand, users with legitime root previleges
(system administrators) can change the startup environment, even by
means of programs or scripts.
Perhaps it is possible to modify the init scripts so that programs added
by ordinary users are run with their privileges. But htink of you being
a user in a multi-user environment. You want to have your program
started immediately, not after the next reboot, which can be months
later. Also, system administrators will normally not allow ordinary
users to reboot the machine, since this might interrupt sessions of
other users.

The second reason, I think, is, the question of how specific the
services are to a user. A user might want to have a program run which
only she or he needs. To save system resources, such a program should
not be run all the time. Rather, such programs should only be run while
that user is logged on. A mechanism for this exists: A user can start
background processes in the login script of his shell.
Also not that the Hurd has an additional possibility not available on
traditional unix systems: a user can set a 'translator' on a file she or
he owns. A translator is a kind of server process. Calls for open,
close, read, write of the file the translator is set on are passed to
the translator, which can service it. Since the translator runs with the
privileges of the owner of the file, this is a save thing.

-- Matthias


Reply to: