Differences between revisions 19 and 20
Revision 19 as of 2019-02-26 14:34:49
Size: 2532
Comment:
Revision 20 as of 2019-03-15 06:45:19
Size: 4326
Comment:
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
 * ~give/stable/bin/prac_install_vx <from_prac> <to_prac>  * ~give/stable/bin/prac_install_vx [from_prac] to_prac
Line 13: Line 13:
   . if <from_prac> != <to_prac>
      . copy <from_prac> from virtual directory if exists
      . copy <from_prac> from gaol directory otherwise
   . if from_prac != to_prac
      . copy from_prac from virtual directory if exists
      . copy from_prac from gaol directory otherwise
Line 17: Line 17:
      . copy <from_prac> from gaol directory       . copy from_prac from gaol directory
Line 27: Line 27:
 * /home/vxconf/vx.conf.d is the repository for vx.conf files for commonly used products e.g. gcc, python, gedit, fluxbox
   prac-install-vx creates ~/exams/prac/etc/vx.conf.d and fill it with symbolic links to vx.conf files in /home/vxconf/vx.conf.d
   {{{
-rw-r--r-- 1 vxconf vxconf 433 Mar 14 21:31 000-header.conf
-rw-r--r-- 1 vxconf vxconf 220 Mar 14 21:31 100-basicx.conf
-rw-r--r-- 1 vxconf vxconf 159 Mar 14 21:31 100-fontconfig.conf
-rw-r--r-- 1 vxconf vxconf 99 Mar 14 21:31 100-rxvt.conf
-rw-r--r-- 1 vxconf vxconf 202 Mar 14 21:31 200-wm-fluxbox.conf
-rw-r--r-- 1 vxconf vxconf 351 Mar 14 21:31 200-wm-fvwm.conf
-rw-r--r-- 1 vxconf vxconf 608 Mar 14 21:31 300-interp-perl.conf
-rw-r--r-- 1 vxconf vxconf 210 Mar 14 21:31 300-interp-pylint.conf
-rw-r--r-- 1 vxconf vxconf 1894 Mar 14 21:31 300-interp-python.conf
-rw-r--r-- 1 vxconf vxconf 860 Mar 14 21:31 300-toolchain-binutils.conf
-rw-r--r-- 1 vxconf vxconf 3374 Mar 14 21:31 300-toolchain-clang.conf
-rw-r--r-- 1 vxconf vxconf 1690 Mar 14 21:31 300-toolchain-gcc.conf
-rw-r--r-- 1 vxconf vxconf 105 Mar 14 21:31 300-toolchain-gdb.conf
-rw-r--r-- 1 vxconf vxconf 79 Mar 14 21:31 300-toolchain-make.conf
-rw-r--r-- 1 vxconf vxconf 212 Mar 14 21:31 300-toolchain-valgrind.conf
-rw-r--r-- 1 vxconf vxconf 84 Mar 14 21:31 400-browser-firefox.conf
-rw-r--r-- 1 vxconf vxconf 54 Mar 14 21:31 400-browser-midori.conf
-rw-r--r-- 1 vxconf vxconf 369 Mar 14 21:31 400-browser-nautilus.conf
-rw-r--r-- 1 vxconf vxconf 84 Mar 14 21:31 400-viewer-evince.conf
-rw-r--r-- 1 vxconf vxconf 110 Mar 14 21:31 400-viewer-xpdf.conf
-rw-r--r-- 1 vxconf vxconf 328 Mar 14 21:31 500-editor-emacs.conf
-rw-r--r-- 1 vxconf vxconf 300 Mar 14 21:31 500-editor-gedit.conf
-rw-r--r-- 1 vxconf vxconf 52 Mar 14 21:31 500-editor-idle.conf
-rw-r--r-- 1 vxconf vxconf 47 Mar 14 21:31 500-editor-nedit.conf
-rw-r--r-- 1 vxconf vxconf 96 Mar 14 21:31 500-editor-spyder3.conf
-rw-r--r-- 1 vxconf vxconf 26 Mar 14 21:31 500-editor-vi.conf
-rw-r--r-- 1 vxconf vxconf 161 Mar 14 21:31 500-editor-vim.conf
   }}}
   ~- thanks to Jashank for the original idea -~
Line 33: Line 66:
 * dpkg-query, apt-cache depends
 . find files needed by gcc
 {{{
apt-cache depends --recurse --no-pre-depends --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances gcc | egrep -v '^ ' | xargs dpkg --listfiles | egrep -v '^($|/lib|/bin$|/usr($|/bin$|/(lib|share)))'| sort | uniq | less
 }}}
 ~- thanks Jashank! -~

Virtual Exam

Work in Progress or Draft only

Please read the documentation of virtual exam

/!\ The way the virtual exam white listed software (etc/vx.conf) will be rewritten early in Term 1 to better cope with software changes on CSE computers.

Useful scripts

  • ~give/stable/bin/prac_install_vx [from_prac] to_prac
    • set up a standard virtual exam environment
    • if from_prac != to_prac
      • copy from_prac from virtual directory if exists
      • copy from_prac from gaol directory otherwise
    • else
      • copy from_prac from gaol directory
  • priv passwd
    • change the vxN (eg vx6) password before and after the exam with this script
    • add the class account public key to the exam account (eg cs2521exam)
  • priv chown <path_wildcard>

    • change work directory ownership from 90<uid> to the exam account to access students' files

    • after changing ownership, students can't start the exam. so, do this only after the exam has finished.
  • /home/vxconf/vx.conf.d is the repository for vx.conf files for commonly used products e.g. gcc, python, gedit, fluxbox
    • prac-install-vx creates ~/exams/prac/etc/vx.conf.d and fill it with symbolic links to vx.conf files in /home/vxconf/vx.conf.d
      -rw-r--r-- 1 vxconf vxconf  433 Mar 14 21:31 000-header.conf
      -rw-r--r-- 1 vxconf vxconf  220 Mar 14 21:31 100-basicx.conf
      -rw-r--r-- 1 vxconf vxconf  159 Mar 14 21:31 100-fontconfig.conf
      -rw-r--r-- 1 vxconf vxconf   99 Mar 14 21:31 100-rxvt.conf
      -rw-r--r-- 1 vxconf vxconf  202 Mar 14 21:31 200-wm-fluxbox.conf
      -rw-r--r-- 1 vxconf vxconf  351 Mar 14 21:31 200-wm-fvwm.conf
      -rw-r--r-- 1 vxconf vxconf  608 Mar 14 21:31 300-interp-perl.conf
      -rw-r--r-- 1 vxconf vxconf  210 Mar 14 21:31 300-interp-pylint.conf
      -rw-r--r-- 1 vxconf vxconf 1894 Mar 14 21:31 300-interp-python.conf
      -rw-r--r-- 1 vxconf vxconf  860 Mar 14 21:31 300-toolchain-binutils.conf
      -rw-r--r-- 1 vxconf vxconf 3374 Mar 14 21:31 300-toolchain-clang.conf
      -rw-r--r-- 1 vxconf vxconf 1690 Mar 14 21:31 300-toolchain-gcc.conf
      -rw-r--r-- 1 vxconf vxconf  105 Mar 14 21:31 300-toolchain-gdb.conf
      -rw-r--r-- 1 vxconf vxconf   79 Mar 14 21:31 300-toolchain-make.conf
      -rw-r--r-- 1 vxconf vxconf  212 Mar 14 21:31 300-toolchain-valgrind.conf
      -rw-r--r-- 1 vxconf vxconf   84 Mar 14 21:31 400-browser-firefox.conf
      -rw-r--r-- 1 vxconf vxconf   54 Mar 14 21:31 400-browser-midori.conf
      -rw-r--r-- 1 vxconf vxconf  369 Mar 14 21:31 400-browser-nautilus.conf
      -rw-r--r-- 1 vxconf vxconf   84 Mar 14 21:31 400-viewer-evince.conf
      -rw-r--r-- 1 vxconf vxconf  110 Mar 14 21:31 400-viewer-xpdf.conf
      -rw-r--r-- 1 vxconf vxconf  328 Mar 14 21:31 500-editor-emacs.conf
      -rw-r--r-- 1 vxconf vxconf  300 Mar 14 21:31 500-editor-gedit.conf
      -rw-r--r-- 1 vxconf vxconf   52 Mar 14 21:31 500-editor-idle.conf
      -rw-r--r-- 1 vxconf vxconf   47 Mar 14 21:31 500-editor-nedit.conf
      -rw-r--r-- 1 vxconf vxconf   96 Mar 14 21:31 500-editor-spyder3.conf
      -rw-r--r-- 1 vxconf vxconf   26 Mar 14 21:31 500-editor-vi.conf
      -rw-r--r-- 1 vxconf vxconf  161 Mar 14 21:31 500-editor-vim.conf

      thanks to Jashank for the original idea

  • ~give/stable/bin/vx-conf-product.pl
    • strace the command
    • feed the output of strace to this script
    • add vx.conf files as arguments
    • script will output files that are missing from the config files

Tips

  • when the exam crashes after you authenticated with your zid, check the stderr.log file under <exam_account>/var directory. Look at the latest directories.

    marimba % ls -lt ~/var | head -5
    total 988
    drwxr-xr-x 2 cs9024exam cs9024exam 4096 Feb 13 06:59 marimba-25528
    drwxr-xr-x 2 cs9024exam cs9024exam 4096 Feb 12 20:49 wagner-7800
    drwxr-xr-x 2 cs9024exam cs9024exam 4096 Feb 12 20:33 vx4-45795
    drwxr-xr-x 2 cs9024exam cs9024exam 4096 Feb 12 18:39 vx4-34624
  • after changing ownership of the work directories (to exam account), you can't start the exam with the same work directories.
    • create a new toplevel work directory.
      cd ~/exams/18s2supp
      mv work work.19dec
      mkdir work
      chmod 1777 work
    • or remove the student's work directory
      cd ~/exams/18s2supp/work
      priv chown z5555555
      rm -r z5555555

VirtualExam (last edited 2022-10-25 16:12:21 by MeiChengWhale)