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

Re: es 0.7: ^C at prompt



 > >|PS.  Are there any plans to make it possible to get at the ~user mechanism in
 > >|some way?  I have a machine that many people don't have logins on but that has
 > >|access to their home directories via amd/NFS.  Thus a passwd file mechanism
 > >|doesn't work for most people in the dept.  I'd like to (say) be able to define
 > >|a function that gets called when doing ~ expansion.
 > 
 > > Amd supports a home directory map, independent of the passwd file.
 > > /u/schwartz then points to /home/groucho/schwartz, or whatever.  This
 > > is a thing that goes so nicely in the OS, it's a shame to force it on
 > > the shell, especially since other programs often want the short name
 > > for users' homes.
 > 
 > I wonder how it manages to be independent of the passwd file?  It sounds
 > like a great idea, if that's true.  Unfortunately, I don't know what Amd
 > is, but on one of our systems, the one where I want to use es in a big
 > way, we expect to have around 10K users in the very near future, and a
 > lot more possibly later.  A 10K file directory is going to be a darn slow
 > way to look things up.
 >
 > 	Donn Cave, University Computing Services, University of Washington
 > 	donn@cac.washington.edu

Size is not usually a problem because amd will only create links (from say
/homes/fred to /home/fredsmachine/fred) when they are needed (ie. referenced).
There's a timeout value that allows them to be automatically removed if
they're not referenced.  Thus the /homes directory doesn't usually get too
big.

I guess the real issue is that amd is general enough that your homes map can
be generated any way you like (ie. not just from the passwd file on a local
machine).  If we use "user" to mean "a user on the local network" (eg. within
a dept.) then it is straightforward (say using a merged passwd file) to make
amd set up /homes/user for all these people on all machines regardless of
whether they have a login or not.  Then we want ~user to map to /homes/user as
I suggested in a previous message.  (Clearly not everyone runs amd, hence the
%home mechanism that Paul mentioned to allow people like me to customize it.
There are also amd management issues to do with making sure each user has a
unique or prime home directory on the machines in question.)

Some other posters have raised the issue whether this kind of thing should be
in a shell or not.  I would argue that ~user is a useful enough notation that
it should be there, but others can (and do) disagree.  The main point is that
given that es has it, it should be customizable because the passwd file based
implementation is not flexible enough to cope with situations like those
described in the previous paragraph.

Tony