1. 13 Dec, 2010 1 commit
  2. 08 Dec, 2010 2 commits
  3. 07 Dec, 2010 3 commits
  4. 20 Oct, 2010 1 commit
    • Mike Hibler's avatar
      Support for no shared filesystem (unsupport for shared filesystem?) and · c1c1bce2
      Mike Hibler authored
      (eventual) support for NFS servers without race conditions!
      
      This means no NFS between nodes and ops/fs. There are still NFS mounts of
      ops on boss however.
      
      Added new defs-* variable NOSHAREDFS, which when set non-zero will disable
      the export of NFS filesystems to nodes.  Involved lots of little changes:
      
       * /users, /proj, and /share filesystems are not exported to nodes.
      
       * Returned mount info now includes an FSTYPE key which will be set to "LOCAL"
         if NOSHAREDFS is in effect (by default it is set to "NFS-RACY"; more on
         this later).  In the case where it is set to LOCAL, the other mount lines
         no longer contain REMOTE=foo settings.  Because of this change,
         THE TMCD VERSION NUMBER HAS BEEN BUMPED TO 32.
      
       * The client rc.mounts script will now create local versions of /users/*,
         /proj/<pid>, and /share when FSTYPE=LOCAL.  It first runs mkextrafs to
         create a large partition for these, since someday we will likely want
         to pre-populate these with a non-trivial amount of data.  Right now,
         the only thing that is put in the user's homedir is the standard dotfiles
         for the OS and the Emulab authorized_keys file (so you can login).
      
       * Linktest had to be modified to fetch the various results files (via
         loghole) rather than just assuming they were in /proj.  And also changed
         to invoke tevc with the local copy of the event key so it won't try to
         read it over NFS.
      
       * create_image was modified to ssh to the node and run the imagezip
         command, capturing the output of ssh.  This is controlled via the "-s"
         option which defaults to on for a NOSHAREDFS system, but can also be
         used on a normal system.
      
       * elabinelab's can be configured with/without a shared FS via the
         CONFIG_SHAREDFS attribute (note polarity change) which defaults to 1.
      
      Another new defs-* variable, NFSRACY, will some day allow you to specify
      (by setting to 0) that your NFS server does NOT have the nefarious mountd
      race condition when changing /etc/exports.  Currently, this defaults to 1
      since all versions of FreeBSD supported as an "fs" node have this "feature."
      Rumor has it that FreeBSD 8 does not have this problem nor, presumably,
      would a Linux NFS server.
      
      The only use of this variable right now is to set the FSTYPE returned by the
      tmcd "mounts" call, which in turn is used by one client script, rc.topomap
      (via a libsetup function) to determine whether it should try copying
      the topo file multiple times.
      
      Random: add python2.6 to list of python's checked for in configure.
      Random: resync defs-example-privatecnet with defs-example.
      Random: did a little code-pissin here and there.
      c1c1bce2
  5. 19 Oct, 2010 1 commit
    • Mike Hibler's avatar
      Minor tweaks to "linktest unplugged". · c3008371
      Mike Hibler authored
      In elab_linktest.pl, put explicit command line arguments after the defaults
      so that they will override them in linktest.pl.  Also, don't conflate LOGDIR
      and PROJDIR.
      
      Half-assed attempt to free the script from the notion of a pid/eid, by
      defining EVENTID param.  However, we still wind up reading a pid/eid from a
      file though this could also be eliminated.
      c3008371
  6. 12 Oct, 2010 2 commits
  7. 11 Oct, 2010 2 commits
  8. 14 Sep, 2010 3 commits
  9. 20 Aug, 2010 1 commit
    • Mike Hibler's avatar
      Fix invocation of recursive make. · 5ab949d2
      Mike Hibler authored
      "make -C dir foo" != "cd dir && make foo"
      PWD in a shell script evaluates different, presumably because it is
      inherited from the invoking shell/make.
      5ab949d2
  10. 18 Aug, 2010 4 commits
  11. 14 Oct, 2009 2 commits
  12. 01 Apr, 2009 1 commit
  13. 28 Jul, 2008 2 commits
  14. 18 Oct, 2007 1 commit
    • Mike Hibler's avatar
      Preliminary support for Ubuntu Linux. · 38bc8fa1
      Mike Hibler authored
       * added new tmcd directory with Ubuntu (really, Debian) specifics
       * fixed up GNUmakefiles to not do "-g wheel" when creating directories
       * other, relatively minor tweaks
      38bc8fa1
  15. 02 Aug, 2007 1 commit
  16. 25 May, 2007 1 commit
  17. 08 May, 2007 1 commit
  18. 25 Apr, 2007 1 commit
  19. 24 Apr, 2007 1 commit
  20. 23 Apr, 2007 2 commits
  21. 23 Mar, 2007 1 commit
  22. 22 Feb, 2007 1 commit
  23. 09 Jan, 2007 1 commit
  24. 21 Dec, 2006 1 commit
  25. 10 Nov, 2006 1 commit
  26. 25 Oct, 2006 1 commit
    • Leigh B. Stoller's avatar
      Makefile Whacking! Try to deal with the problem caused by the delay · 7590f9c5
      Leigh B. Stoller authored
      between when something is installed and when post-install runs. Short
      of a global lock (which we probably need anyway someday), my solution
      is this. In your makefiles, add these variables before the line that
      has the include of $(TESTBED_SRCDIR)/GNUmakerules:
      
      	SETUID_BIN_SCRIPTS   =
      	SETUID_SBIN_SCRIPTS  =
      
      I have added three new rules to GNUmakerules that look like this:
      
      	$(addprefix $(SBINDIR)/, $(SETUID_SBIN_SCRIPTS)): $(SBINDIR)/%: %
      		echo "Installing (setuid) $<"
      		-mkdir -p $(INSTALL_SBINDIR)
      		$(SUDO) $(INSTALL) -o root -m 4755 $< $@
      
      Yep, your eyes ain't lying to you; use sudo to run the target so that
      install does the right thing (which is that the old file is not
      replaced until the new one has the proper attributes on it).
      
      Note that post-install is still needed for the initial install, but
      should no longer be needed for day to day installs since all that other
      stuff post-install does is mkdir/chmod on directories.
      7590f9c5
  27. 23 Oct, 2006 1 commit