Xref: utzoo unix-pc.general:6142 comp.sys.att:10499 Path: utzoo!utgpu!watserv1!watmath!att!icus!lenny From: lenny@icus.ICUS.COM (Lenny Tropiano) Newsgroups: unix-pc.general,comp.sys.att,icus.general Subject: Frequently asked questions and hints about the AT&T UNIX PC (2 of 2) Keywords: questions, 3B1, UNIX PC, PC7300, hints, suggestions, FAQ Message-ID: <1308@icus.ICUS.COM> Date: 27 Sep 90 23:32:17 GMT Expires: 1 Nov 90 04:00:01 GMT Followup-To: poster Organization: ICUS Software Systems, Islip, New York Lines: 601 ------------------------------------------------------------------ Answers to some frequently asked questions about the AT&T UNIX PC, as well as some frequent problems and useful hints with them Continuation from Part 1 of FAQ ------------------------------------------------------------------ 30. How can I get my machine to ask what load device and what program to boot from? By default the UNIX PC is set up with the non-verbose system loader. This can be changed to the "verbose" loader, and that will ask what program and device to load from. *** WARNING *** Any time you write to the disk device like the following, be extra careful that you type the correct device name. A backup is always recommended. Insert a blank diskette in the floppy drive. # fdfmt.vl # /etc/ldrcpy /dev/rfp020 /dev/rfp000 Reboot your machine and you'll be able to load from the floppy or the hard disk whatever program you desire (not that there is too much you can load). What I have done on my machine is copy the several diagnostic utilities to the hard disk (for easy retrieval). Insert your diagnostic disk ... # mount /dev/fp021 /mnt -r # mkdir /dgn # cp /mnt/s4diag /dgn/s4diag # umount /dev/fp021 This can be repeated for diagnostics like, STARLAN, Voice Power, DOS-73, Floppy Tape, etc. Name the diagnostic programs something unique (slndiag, vpdiag, dosdiag, etc.) Now you can load from the hard disk /dgn/s4diag, /dgn/vpdiag, etc.. and have that diagnostic utility handy when needed. NOTE: After you do this procedure your system will not reboot automatically (after power failures) without some user input. 31. How do I get multiple login windows? Don't be afraid to edit your /etc/inittab, even though there is a big warning at the top of the file (providing you are careful nothing will happen). It is fairly easy to start up several windows with logins on them, all you need to do is after the: vid:2:respawn:/etc/getty window 9600 vd2:2:respawn:/etc/getty window 9600 vd3:2:respawn:/etc/getty window 9600 ^ NOTE: in all cases there is a blank "space" there. This will start up 3 windows with logins. Using the option of the window manager, you can toggle between all of them. 32. Is there such a thing as Floppy UNIX? Can I run my machine that way and do things like filesystem checks (/etc/fsck)? Yes, most definitely. The Foundation Set diskettes have a floppy UNIX on it. Make a copy of the Floppy Filesystem Disk (Disk 3 of ##) Insert the original floppy filesystem diskette, and have a formatted 10 sectors/track diskette ready. Type the "fpcp" command and copy it. Now that you have a copy, we need to place a copy of /etc/fsck on it. # mount /dev/fp021 /mnt # cp /etc/fsck /mnt/etc/fsck # cp /etc/inittab /mnt/etc/inittab.save (That above line is useful for the next situation, see item #32) # sync # umount /dev/fp021 Now you have a disk that will help you do a standalone filesystem check. How do you get to boot this? First boot the system using the "Floppy Boot Disk" (Disk 2 of ##). It then will stop and ask you to insert the Floppy Filesystem Disk. Now put your "copy" in. When it comes to the first question you then should interrupt this script. This is done by pressing (that's ). At this point you will get a "#" # umount /dev/fp002 (the disk is already mounted as /mnt) warning: /dev/fp002 not in mount table (you may get this, it's OK) # /etc/fsck -D -S /dev/rfp002 (do your filesystem check) # sync;sync;reboot (reboot the system) NOTE: that /etc/fsck is running off the floppy root filesystem disk you have in now, the -s option the restructures (salvages) the free-list on the root filesystem partition. *** THE FOLLOWING IS NOT FOR THE UNINHIBITED OR CASUAL USER *** For the real UNIX hacker out there (and you are fortunate enough to have a tape drive on your machine) you could grab the fp_unix.sh.Z, conf.sh.Z and kern.cpio.Z files from the OSU Archives. This is a set of tools, along with the kernel object files for 3.51m, that will let you link in the tape driver (tp.o) to your floppy UNIX kernel and give you full control of the tape device from the floppy UNIX. This is very handy for doing full backups or restorals from the floppy! 33. My machine hung at the boot message: Version #.##x Real memory = ####### Available memory = ####### Main board is P3...P5 (NOTE: Main board could also be P5.1 if your machine was upgraded) What can I do? Do I need to reload everything?? I've seen this all too many times, so I've taken some precautions. 9 times out of 10 the /etc/inittab file is either deleted, corrupted, or truncated because of some filesystem damage during a system crash. The machine will hang there at that Main board prompt forever, since /etc/init is looking for the inittab file. Follow the directions in item #32 (above) and insert boot the floppy filesystem disk that you made. On there, if you followed directions, is /etc/inittab.save, which can be happily copied to the /mnt/etc/inittab file (when the hard disk root filesystem (/dev/fp002) is mounted from the floppy as /mnt). # umount /dev/fp002 # fsck -s /dev/rfp002 # mount /dev/fp002 /mnt # ls -l /mnt/etc/inittab (if it's not there, or corrupted ...) # cp /etc/inittab.save /mnt/etc/inittab # sync # umount /dev/fp002 # sync;sync;reboot The other one time (out of 10) I've seen the /etc/inittab file there, but there was /etc/utmp.lck file on the system. This happens in very rare "race" conditions with the pututent(3C) routines. Removing this file, and rebooting will generally recover the system. 34. I heard the UNIX PC isn't the most secure machine? How can I make it a bit more secure? The best way to not worry about security is don't allow users on your machine that aren't trusted. Especially users that have shell access. There are several serious problems with the UNIX PC's software, specifically the User Agent (UA). The UA (the windowing environment, also known as the Office environment) has some serious security problems. The best solution, of course, would be to remove the entire UA system from your machine. This isn't the easiest procedure (since there are lots of programs scattered all around the disk that is tied into the UA) and probably not the most desirable for some novice users. What's so wrong with it? Well look in your trusty manuals, in section 4. The manual UA(4) states: (talking about UA configuration files) [...] (page 4) EXEC and SH have a number of variations, which are used depending on the intelligence of the process being invoked. [...] The variations are specified via option characters as follows: -n Run the process without a window -w Run the process without waiting -d Run the process in a dimensionless window -p Run the process with superuser privileges [...] The "-p" option being the problem. For a little experiment, which I do to show the security conscious user (who still likes the UA), is give me a non-privileged user account. Then I do this, create a file in my home directory called "Office" with the following lines: Name=Super User UNIX Default = Run Run=EXEC -pwd $SHELL Then I type: $ exec /usr/bin/ua I select my new object that I just created "Super User UNIX" and then at the "#" prompt type "id" for the effect. # id uid=0(root) gid=0(root) OK, convinced? If you really *LOVE* the UA, you can do something about this. Protect the programs /usr/lib/ua/uasetx and /usr/lib/ua/uasig so they are not executable by "other" and only excutable by a "trusted" group. -rwsr-x--- 1 root trusted 4268 Jan 1 1970 /usr/lib/ua/uasetx -rwsr-x--- 1 root trusted 2068 Jan 1 1970 /usr/lib/ua/uasig Want more? OK. Send yourself some electronic mail. Nothing elaborate is necessary. $ mail myself < /dev/null Select the [mailbox] icon when it comes up, and then when you're in /bin/mail, at the "?" prompt type "! /bin/sh", poof! Root shell. # id uid=0(root) gid=0(root) # pwd /etc/lddrv This can easily be corrected with my "email" program that has been posted to unix-pc.sources and is archived on OSU as "email.sh.Z" That program sets the correct user id, group id, and home directory. Other things to look for are covered in lots of books on UNIX security. Directories protected as 777 (world writable), setuid programs that aren't very security conscious... etc. 35. What the heck is a +IN suffix on a file? On the UNIX PC, "+IN" denotes an "Installable File". If you were to use the UA (and after the above item, you're probably not!) it would show that it's an Installable File. The Installable format is just a normal CPIO archive. The file can be installed by hand by doing: # mkdir /tmp/install # mv FILE+IN /tmp # cd /tmp/install # cpio -icduvmB < ../FILE+IN [...] # ./Install A list of other Suffixes are detailed in the file /usr/lib/ua/Suffixes 36. I heard there was some hidden mode in the diagnostics for expert users only? What is it? How do I get it? How do I become an expert? The diagnostic floppy has a mode in it for the more experienced system testers. Basically from this mode, there is no need for navigating through menus, pick the test and it does it. The diagnostic tests can be run several times (for testing intermittent hardware). The diagnostic output can be sent to a parallel printer for review later, and also for unattended testing (since the output can scroll off the screen rather easily). How do you enter this mode? Simple. At the first menu prompt, after booting the diagnostic disk, type in "s4test". If you typed it in correctly you will get a prompt. expert> From there you can type "?" for a "semi-verbose" command syntax, and a list of many of the tests. For more detail on what tests and subtest you can do, grab a nice file by Craig Votava , "s4test.info.Z" from the OSU Archives. 37. I turned on my UNIX PC and all I have is a "green screen". What can I do? This symptom crops up in a lot of UNIX PC's. Generally speaking I've been able to revive the UNIX PC with only little fuss. Open the machine, as described in item #4, down to the motherboard. Carefully, reseat all the socketed chips, especially the 68010 CPU. Vacuum all the "dust bunnies" from the machine. 7 times out of 10 the machine will boot afterwards. If the machine still doesn't boot, it could be something more serious. Check with the ``ASCRC'' (see item #27) on how you can go about getting the machine repaired. 38. I turn on the machine and I hear the hard disk and fan, but I have no video? Well the first thing you could do is check the "brightness control". After you are sure that it's not that, the problem generally goes away by replacing the power supply. If you don't have a spare one, again' you'll have to deal with either AT&T or ASCRC. 39. After installing the Development Set, but there are no include header files in /usr/include/*? What gives? I've seen this once before, and it has to do with the ordering of packages that you install. Because of a bug in one of the packages' Installation script, presumably "Curses/Terminfo Programmers Package,"' it tries to copy curses.h to /usr/include, but if /usr/include doesn't exist, it will make a *file* called /usr/include, which is really curses.h. To prevent this from happening, install the packages in this order: Curses/Terminfo End User Package Development Set 3.5x Curses/Terminfo Programmers Package 40. Why with GCC (GNU C compiler) available for the UNIX PC, and in particular there are pre-compiled binaries for it, why do I need the development set (which is hard to come by in the first place)? Arnold Robbins says ... For a number of reasons. 1. You need the include files from /usr/include and /usr/include/sys. 2a. You need 'as', the assembler. 2b. You need 'ld', the loader. 2c. You need the C libraries (/lib/libc.a, etc). None of these come with GCC. 3. If you're starting with just GCC source, you need the C compiler for bootstrapping. Note that bootstrapping GCC from scratch on a Unix-PC is a painful operation (requiring much time and disk space). You're much better off using the binaries that are on osu-cis, and/or bootstrapping with an earlier version of GCC. The only problem with using the binaries off osu-cis, is adhering to /usr/local/bin convention compiled into these binaries. GAS (GNU assembler) and the GNU loader (ld) aren't ported for use with the UNIX PC, at least not completely. 41. I'm receiving a lot of floppy access errors (FDERR) when I format, or when I try to access the floppy drive for write. What's the problem here? Jon H. LaBadie, Boyd Ostroff, and Perry Miller have suggested to me that it could be the light occluding the write protect sensor on the floppy drive. The easiest solution for this is to get a can of compressed air, or blow real hard into the floppy aperature several times. This generally will remove the dust or dirt from the area, and hopefully will solve the problem. (With the light being blocked, the floppy drive is considered permanently write protected!) If the problem persists after you follow the *simple* solution, you might have to open the machine, remove the floppy drive and do a closer examination. If all else fails, a standard TEAC 360K floppy drive is the one-for-one replacement. 42. I'm running rn(1) from the on-board modem device (/dev/ph[0 or 1]) and it's coming up with. Can't open /dev/tty. The problem is a line in the term.c file. The lines that have to be changed for rn to work are: Before change: [...] devtty = open("/dev/tty",O_RDONLY); if (devtty < 0) { printf(cantopen,"/dev/tty") FLUSH; finalize(1); } fcntl(devtty,F_SETFL,O_NDELAY); [...] After change: [...] devtty = open("/dev/tty",O_RDWR); /* changed for UNIX PC */ if (devtty < 0) { printf(cantopen,"/dev/tty") FLUSH; finalize(1); } fcntl(devtty,F_SETFL,O_NDELAY); [...] This is since the /dev/phN devices *require* DATA connections to be opened with O_RDWR, so changing the O_RDONLY (or in some versions the number "0") will solve your problems. 43. Can I do more than uucp(1) or cu(1) with my STARLAN boards? Can I hook the STARLAN to Ethernet? Let me answer the second question first, no, you cannot connect STARLAN to an Ethernet network, at least not directly. STARLAN, or in the case of the UNIX PC, STARLAN-1 (1BASE5) is a 1Mbps (megabits/sec) network over twisted pair wire. The URP protocol used to communicate over STARLAN-1 on the UNIX PC. The newer STARLAN standard is STARLAN-10 (10BASE2) and is 10Mbps which is more *like* Ethernet. The protocol used is the ISO/OSI standard, and therefore it's interconnectability is increased. However, this is *NOT* compatible with the UNIX PC version. There is an expensive item that AT&T sells, called the STARLAN 1:10 BRIDGE. This connects the two networks together, if this is a necessity, but plan to spend around $4,500 for the convenience. (AT&T PEC Code: STARLAN 1:10 BRIDGE 2611-005) According to AT&T STARGROUP documentation, there is software available to interconnect STARLAN-10 hardware to Ethernet using IEEE 802.3, TCP/IP protocol, this of course in conjunction with the BRIDGE could connect STARLAN-1 via the STARLAN 1:10 BRIDGE to STARLAN-10, and then to Ethernet, a round-about way, but presumably possible. If you want to connect your UNIX PC to a *real* Ethernet, you'll need to hunt down the AT&T UNIX PC Ethernet board. This board runs a version of the TCP/IP drivers, distributed by Wollogong. The board will require the proper cables, as well as, a tranceiver. This increases the cost of Ethernet interconnectability. The Wollogong TCP/IP drivers are an older version, which I'm sure isn't support by Wollogong anymore. It's rumored that there are many bugs, and the throughput of the board is no where near what Ethernet should be getting. I was told that throughput over STARLAN-1 was better than over the TCP/IP Ethernet board, where if it were working properly shouldn't be the case. Thanks to the hard work of Roger Florkowski (cs.utexas.edu!taliesin!roger), UNIX PC STARLAN users don't have to be limited with just uucp'ing and cu'ing over the network. He has ported and created a bunch of BSD network utilities (r*commands). With his package, which was posted to unix-pc.sources, and now resides archived on OSU-CIS (bsdslan.cpio.Z), you can do remote tape operations, remote copies, and remote shell commands. 44. Can I run SLIP (Serial Line Internet Protocol) on my UNIX PC? So far there hasn't been anyone who ported a SLIP device driver. That would be the optimal solution, but in the interim we do have an answer for those who want to run SLIP. There is the KA9Q/W9NK TCP/IP Version 890421.1 available for the UNIX PC. Thanks to Phil Karn (the original developer), Gary Sanders, and Rob Stampfli the package supports SLIP (which in theory over a modem or direct serial line (preferably 9600 baud or higher) one could SLIP on over (sorry for the pun) to an Internet machine allowing Dialup/Direct SLIP logins. With the pseudo-tty driver (pty) you can have multiple TELNET sessions (even on the UNIX PC side). Built into the "net" package is FTP, TELNET, FINGER, SMTP, and others. KA9Q is available from OSU-CIS, Gary Sander's BBS or via anonymous uucp login on Rob's UNIX PC: kd8wk Any ACU 2400 16147598597 in:--in: uucp word: anonymous To obtain the net source, issue the following uucp command: uucp kd8wk!~/pub/netsrc.cpio.Z /usr/spool/uucppublic To obtain an executable for the AT&T 7300, enter the following: uucp kd8wk!~/pub/netexe.7300.Z /usr/spool/uucppublic Gary's HAM RADIO BBS Access: System Name: N8EMR Phone: 614-895-2553 (19.2K Trailblazer, 2400, 1200) Login: hbbs Data Settings: 8 Bits, NO Parity, 1 Stop Bit Times: 24hrs 45. I'm having trouble configuring my Hayes compatible external modem on the UNIX PC? How do I do it? Thanks to Jim Adams, I have included in the OSU Archives, HDB_Modem.Z, which is an informational posting (posted to unix-pc.uucp and comp.sys.att) on how to set up your external modem under HDB uucp. The file particularly uses the "hayes" modem as the example, although information could probably be extracted for uses with other modems. If you want information on how to set up your Telebit Trailblazer modem, get the file tb-setup.sh.Z, also archived. This posting was too large to include in its entirety here, so a completely seperate posting was made. He goes into how to set up the modem, proper cabling, proper Devices and Dialers entries, and a discussion on HFC (hardware flow control). 46. What are the consequences of "fsck -s" (salvaging the freelist)? Jim Adams sent me some information I'd like to share with you, regarding the uses (and dangers) of salvaging the freelist using the fsck(1M) command. fsck(1M) provides for a method of salvaging and reconstructing the freelist maintained by the UNIX filesystem. It is dangerous to haphazardly do anything with the filesystem, as well as just reconstructing the freelist. If the filesystem isn't in a good state, it's possible that the freelist could be further damaged by just salvaging it. fsck(1M) will salvage the freelist when necessary, or when the question "SALVAGE (Y/N)?" is answered "yes". Jim has said, that the alternative method, fsck -S, should be used if you wish to salvage the freelist. The salvage will only be done if the filesystem is properly constructed, and nothing damaging could occur by it's reconstruction. If errors are found during the fsck phases, other than errors like "POSSIBLE FILE SIZE ERROR I=nnn" (which occurs from sparse files, also known as files with holes in them) the salvage will not be done. fsck(1M) is designed to be run on a mounted root filesystem, as long as the block device is used and the system is in a quiescent (quiet) state. fsck(1M) can be run on the raw/character device when the filesystem isn't mounted, and this is generally much faster. fsck(1M) will automatically reboot the system without sync'ing, if the "mounted" root filesystem was modified, just as you should (since the in-core image of the filesystem would be different). There is no "re-mount" facility on the UNIX PC, otherwise the root filesystem could just be remounted. Another suggestion made was to run "fsck -D" to check directories for bad blocks. This takes longer, but is considered worth it. (fsck -D is similar to the MSDOS CHKDSK facility) 47. What does the option to "dismount -s" do? It should never be used, it's an historical option (as the manual notes), used to un-mount the "Syquest" external drive. This unfortunately causes the first hard disk to RECAL if you don't have the second disk upgrade. With the second disk upgrade it improperly un-mounts all the filesystems, but to my knowledge doesn't handle the /etc/mnttab file correctly for all the partitions on the second disk. In my opinion, it's much safer to use multiple /etc/umount commands, to un-mount multiple partitions. This works for all cases, and there is no second guessing on what the command is actually doing. If you want to mimic the operation of dismount, you can easily issue the "sync" command before the "umount" command. As far as clearing the "pulled-flag" as the manual indicates, I never had any problem just using the /etc/umount command (on floppies, as well as, my other partitions and hard disk) 48. What's /etc/update? What does it do? /etc/update is an antiquated command, that is no longer necessary to be used. It is not a shell script, but could easily be written as one. The executable, /etc/update basically takes one argument, the number of seconds to sleep, or defaults to 30 (I believe). It then sleeps that interval and then issues a sync(2) system call. This is a continuous process, it detaches itself from the current tty with the setpgrp(2) call, and closes all file descriptors 0, 1, and 2 (stdin, stdout, and stderr). It was to be run by /etc/init, as a boot-time process, and was to remain there for the duration of the machine's uptime. ______________________________________________________________________________ Thanks to the following people, and I apologize if I inadvertently left your name out. Lenny Tropiano Gil Kloepfer, Jr. Brian Botton Brad Bosch Darren Friedlien Thad Floryan Mike "Ford" Ditto Craig Votava John McMillian Jan Isley <...!gatech!bagend!jan> John Milton <...!cis.ohio-state.edu!n8emr!uncle!jcm> Alex S. Crain Robert Granvin Roger Florkowski <...!cs.utexas.edu!taliesin!roger> Brant Cheikes Mark Dapoz <...!cs.utoronto.edu!hybrid!mdapoz> Scott H. Mueller Emmet P. Gray <...!uunet!uiucuxc!fthood!egray> Mark Galassi David Brierley Arnold Robbins Jon H. LaBadie <...!princeton!jonlab!jon> Boyd Ostroff Perry Miller Karl Kleinpaste Gary W. Sanders <...!osu-cis!n8emr!gws> Rob Stampfli <...!osu-cis!n8emr!kd8wk!res> James Warner Adams All the people who were kind enough to make suggestions, additions, and corrections -- the list is a bit too long to include here. -- | Lenny Tropiano ICUS Software Systems lenny@icus.ICUS.COM | | {ames,pacbell,decuac,sbcs,hombre,rayssd}!icus!lenny attmail!icus!lenny | +------ ICUS Software Systems -- PO Box 1; Islip Terrace, NY 11752 ------+ -- | Lenny Tropiano ICUS Software Systems lenny@icus.ICUS.COM | | {ames,pacbell,decuac,sbcs,hombre,rayssd}!icus!lenny attmail!icus!lenny | +------ ICUS Software Systems -- PO Box 1; Islip Terrace, NY 11752 ------+