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

Re: Diskless boot NFS server image



> My packages only writes to files under /var/lib/diskless. It also creates
> symlinks under /tftpboot.

i hope /tftpboot isn't necessary unless the kernel is tftp booted.
that directory doesn't look nice in a fsstnd/fhs system.

> Everything I have done is done at the server, hence there is no need
> to use ssh. A record is kept of all files copied, and if the file
> already exists and hasn't changed since the last copy, it is
> not copied again. (This excludes devices, currently devices are always
> considered the same if they exist).
> I am not sure if this addresses your concern...

if you don't have a full copy (e.g. shared /usr), you can alway be trapped.
for example the new version of program xyz has a different config file
(incompatible with the old). so in the time gap between your server (/usr)
update and your clients /etc update can cause misfunctions. of course it's 
easy to you to minimize this time gap, since everything is on the same machine.

also, keep in mind that some packages "do magic" in the post/pre-rm/inst
scripts, for example konvert old style config files to new style. this
is not done on your client /etc. you can fix this with syncroniozing everything
(with a logn exception list).

as usual any situation with shareing filesystems via nfs is a security problem
(nightmare filesystem...). It's possible to limit this (/usr partition, exported
readonly - /usr doesn't contain security sensitive data and read-only exporting
fixes this). But the whole nfs problem is too big for us. maybe some day someone
will write something better...

The key problem is that administrating several machines isn't easy, and every
software increses the komplexity a bit. So you need either very good
dokumentation or a very easy to understand mechanism. I have to admit that
i don't understand much of diskless-0.0.1, and i don't have the time for 
reading source now.

for now i will stik to my 3 script combination, as it fits my setup for now
(one to run on the client after any update (to call lilo, kill some app,
call init or whatever), one to update the client via rsync (and call the first
script in the end), and one script as daemon to look for newly booted clients
and update them)).

please keep me up to date with your development.

note: i noticed that one of your scripts "exec /sbin/init". is this now 
possible ? some time ago it was not possible (init only worked, if it's
pid was 0).

andreas


Reply to: