Subject: installation guide for newbies Several people have asked for a Plan 9 installation guide. I re-installed my system from scratch today, and kept notes as I went. This is no substitute for the installation manual, and doesn't mean you won't have to read the manpages. I'm using u9fs for my fileserver, so there's nothing here about fs(4). Some of what I did will not be needed if you're running a real fileserver. Most of my configuration files and scripts can be ftp'd from plan9.ecf.toronto.edu You should probably do things in the order specified. /lib/ndb/local add entries for your plan9 systems /lib/ndb/mkfile substitute local site name for 'kremlin.mos.su' /lib/ndb/hosts a copy of /etc/hosts from a Unix system 'cd /lib/ndb; mk' to build a hash index of the database /sys/log/ create: ftp httpd mail nfs telnet 'chmod 750 /sys/src' in case someone breaks through your firewall /rc/bin/termrc set $cpu to your cpuserver, $site to your site name for mail, start 'ndb/dns' & setup swap /rc/bin/cpurc start daemons as required & setup swap /rc/bin/service/ add local services (tcp113 tcp79), restrict some services (tcp23 tcp513), customize ftp and httpd (tcp21 tcp80) /adm/users add local users, put programmers in group 'sys' /adm/timezone/local copy another file in /adm/timezone to it Boot your cpu server, then (on its console): % auth/wrkey to set passwd, authid, authdom % auth/keyfs serves /mnt/keys, from /adm/keys & #r/nvram % auth/changeuser bootes to add bootes (authid) % auth/changeuser upas so that upas' crontab will work % auth/changeuser steve set passwd for steve, then do the same thing for every other user you added to /adm/users For each user: Boot a terminal, log in as the user, run /sys/lib/newuser to setup /usr/$user Try 'cpu' to test that authentication works. Run 'mail -c' to create your mail directory, /mail/box/$user Run 'auth/cron -c' to create your (empty) crontab file, /cron/$user/cron /lib/namespace setup local bins and icmp device, if you wish /lib/namespace.ftp namespace for ftp daemon /lib/namespace.httpd namespace for http daemon /lib/vgadb use pcdist as master copy for this /lib/sky/here you latitude, longitude and elevation /cron/upas/cron 'chown' it to upas, substitute 'kremvax' with the hostname of your cpu server /mail/lib/names.local add local aliases, if you wish /mail/lib/remotemail substitute 'research' with the hostname of your local smart mail server and substitute '.att.com' with your domain name 'chmod 777 /mail/tmp' allow delivery of large mail messages(!) /sys/lib/http content type description file If using u9fs as your fileserver: /sys/lib/newuser patch it to 'mkdir $home', before 'cd $home' 'chmod 1777 /usr' so that users can create their home directories 'chmod 1777 /mail/box' default mode is 777 see http://www.ecf.toronto.edu/plan9/info/u9fs for other u9fs tips and patches If you are upgrading from the old (Jan/93) release: You may want to keep some files and directories that are not in the new release, such as /lib/areacodes, /lib/bible, /lib/chess/*, /lib/graphics.formats/, /lib/map/phones, /lib/tiger, /help and its associated binaries. Also snarf binaries for programs that are not included in the new release (cda compress juggle quiz zork etc.).