axis_examplecompt_changesinfo-opsversion-1.30version-2.00version-3.01version-3.02
Last change
on this file since b814529 was
3c7da22,
checked in by Ted Faber <faber@…>, 17 years ago
|
Parameterize federate.sh and smbmount.pl (several parameters were hard wired)
make_hosts runs on deter nodes when DETER is the master testbed. It puts
all the federated hosts into /etc/hosts
|
-
Property mode set to
100755
|
File size:
1.7 KB
|
Rev | Line | |
---|
[61f19e0] | 1 | #!/usr/local/bin/perl |
---|
| 2 | use IO::Handle; |
---|
| 3 | |
---|
| 4 | $TMCC="/usr/local/etc/emulab/tmcc"; |
---|
[3c7da22] | 5 | $SHARE=shift || "USERS"; |
---|
| 6 | $PUSER=shift || "jhickey"; |
---|
| 7 | $ADDR=shift || `cat /usr/local/etc/emulab/bossnode`; |
---|
[61f19e0] | 8 | |
---|
| 9 | chomp $ADDR; |
---|
| 10 | print $ADDR; |
---|
| 11 | |
---|
| 12 | # |
---|
| 13 | # Do SMB Mounts |
---|
| 14 | # |
---|
| 15 | #system("umount -A -f -t nfs,smbfs"); # or die("Failed to unmount NFS"); |
---|
| 16 | |
---|
| 17 | open(TM, "$TMCC -s $ADDR accounts windows |") or die("Failed to execute TMCC"); |
---|
| 18 | |
---|
| 19 | # create a smb config to set autoflush for smb config |
---|
| 20 | open(CONFIG, ">/etc/nsmb.conf") or die("Failed to open /etc/nsmb.conf"); |
---|
| 21 | CONFIG->autoflush(1); |
---|
| 22 | |
---|
| 23 | print CONFIG "[$SHARE]\naddr=$ADDR\n\n"; |
---|
| 24 | |
---|
| 25 | while(<TM>) { |
---|
| 26 | if (/ADDUSER LOGIN=(\S+) PSWD=(\S+) UID=(\d+) GID=(\d+).*HOMEDIR=(\S+) / ) { |
---|
| 27 | $user = $1; |
---|
| 28 | $pswd = $2; |
---|
| 29 | $uid = $3; |
---|
| 30 | $gid = $4; |
---|
| 31 | $homedir = $5; |
---|
| 32 | |
---|
| 33 | $user =~ tr/a-z/A-Z/; |
---|
| 34 | my $pass = `smbutil crypt '$pswd'`; |
---|
| 35 | |
---|
| 36 | print CONFIG "[$SHARE:$user]\npassword=$pass\n"; |
---|
| 37 | print "mount_smbfs -N -f 744 -d 755 -u $uid -g $gid //$user\@$SHARE/$user $homedir\n"; |
---|
| 38 | system("mount_smbfs -N -f 744 -d 755 -u $uid -g $gid //$user\@$SHARE/$user $homedir"); |
---|
| 39 | |
---|
| 40 | if($user =~ m/$PUSER/i) { |
---|
| 41 | print "mount_smbfs -N -f 774 -d 755 -u $uid -g $gid //$user\@$SHARE/share /share\n"; |
---|
| 42 | system("mount_smbfs -N -f 774 -d 755 -u $uid -g $gid //$user\@$SHARE/share /share"); |
---|
| 43 | open(MOUNTS, "$TMCC -s $ADDR mounts |") or die("Failed to execute TMCC"); |
---|
| 44 | while(<MOUNTS>) { |
---|
| 45 | if(/LOCAL=\/proj\/(\S+)/) { |
---|
| 46 | print "mount_smbfs -N -f 774 -d 755 -u $uid -g $gid //$user\@$SHARE/proj-$1 /proj/$1\n"; |
---|
| 47 | system("mount_smbfs -N -f 774 -d 755 -u $uid -g $gid //$user\@$SHARE/proj-$1 /proj/$1"); |
---|
| 48 | } |
---|
| 49 | } |
---|
| 50 | } |
---|
| 51 | } |
---|
| 52 | } |
---|
| 53 | |
---|
| 54 | close(CONFIG); |
---|
| 55 | |
---|
Note: See
TracBrowser
for help on using the repository browser.