Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: Check if home dir is mounted?

by klekker (Pilgrim)
on Apr 11, 2007 at 13:31 UTC ( [id://609363]=note: print w/replies, xml ) Need Help??


in reply to Check if home dir is mounted?

> How can I perform a simple check to make sure a user's home directory is mounted to a specific system?

sub has_mounted_home { my $uid = shift || die 'Wrong Parameters!\n'; my @userinfo = getpwnam("$uid"); # $uid not found: return if @userinfo == 0; my $local_homedir = $userinfo[7]; # perhaps use Linux::Mounts instead of: my $mount_result = `/bin/mount | /bin/grep $local_homedir`; # needs improvement because /homes/user1 will match e.g. /homes/us +er12 ... return $mount_result ne ""; } foreach my $uid ('uid1', 'uid2', 'uid3') { print "$uid has a mounted home\n" if has_mounted_home($uid); }

That should do if you don't have an automounter but static mounted homes. If you have an automounter, try f00li5h or shmems solutions since you'll have to access the directories before they are mounted automatically what you'll have to check then.

I prefere looking into the 'mounts' instead of just checking if e.g. '/homes/user1' exists. It may exist but without a mounted home directory to it!

k

Replies are listed 'Best First'.
Re^2: Check if home dir is mounted?
by f00li5h (Chaplain) on Apr 12, 2007 at 05:50 UTC

    /bin/mount will print out that /home is mounted but trying to match "/home/f00li5h" against "/dev/wd0k on /home type ext2fs (local)" will not match, unless every single user's homedir is a it's own mount point... has_mounted_home() won't work for user's who's homedirs are below mount points...

    it all depends on which solution is more sensible for your unique set of mountpoints

    @_=qw; ask f00li5h to appear and remain for a moment of pretend better than a lifetime;;s;;@_[map hex,split'',B204316D8C2A4516DE];;y/05/os/&print;

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://609363]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2024-04-20 01:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found