From news.csusb.edu!csus.edu!csusac!charnel.ecst.csuchico.edu!rat!decwrl!ames!agate!howland.reston.ans.net!europa.eng.gtefsd.com!MathWorks.Com!news.kei.com!babbage.ece.uc.edu!montjoy Sun Aug 7 21:23:19 1994 Path: news.csusb.edu!csus.edu!csusac!charnel.ecst.csuchico.edu!rat!decwrl!ames!agate!howland.reston.ans.net!europa.eng.gtefsd.com!MathWorks.Com!news.kei.com!babbage.ece.uc.edu!montjoy From: montjoy@thor.ece.uc.edu (Rob Montjoy) Newsgroups: comp.sys.sun.admin,comp.sys.sun.misc,comp.unix.solaris,comp.answers,news.answers Subject: FAQ: Sun Computer Administration Frequently Asked Questions Supersedes: Followup-To: poster Date: 2 Aug 1994 20:18:44 GMT Organization: University of Cincinnati Lines: 2423 Sender: montjoy@thor.ece.uc.edu (Rob Montjoy) Approved: news-answers-request@MIT.Edu Distribution: inet Expires: 30 Aug 1994 20:18:37 GMT Message-ID: NNTP-Posting-Host: ra.ece.uc.edu Summary: Answers to questions which appear in comp.sys.sun.* Keywords: Sun Computer Admin FAQ Status: RO Originator: montjoy@ra.ece.uc.edu Xref: news.csusb.edu comp.sys.sun.admin:2092 comp.sys.sun.misc:659 comp.unix.solaris:1875 comp.answers:891 news.answers:1934 Archive-name: comp-sys-sun-faq Last-modified: 1994/5/25 Version: 1.9.4 Frequently Asked Questions for Comp.sys.sun.admin Last update May 25 1994 This is a collection of common questions posted to the comp.sys.sun.* hierarchy. Please send corrections or submissions to "Rob.Montjoy@UC.EDU". Mark the Subject as Sun FAQ. This FAQ is available from thor.ece.uc.edu(129.137.8.118) in the /pub/sun-faq. Get the file sun-faq.general. The sun-faq directory is also available from gopher.ece.uc.edu(129.137.8.118). Important Notice: This is the Last version of this FAQ in its present form. This FAQ will be divided into several sections and be converted to allow newsreaders to go between subjects. This would be a good time to add any of your favorite questions. Just mail them to the usual address. Also, someone has volunteered to maintain this FAQ in HTML form(World Wide Web) and this FAQ will be made available through the Web Server at ra.ece.uc.edu and at least one more. If anyone has any source code(Sun Specific) for Solaris2.x or SunOS4.1.x that you want to add the source archive available on thor. Should we offer pre-compiled binaries for Solaris2.x? Finally, at the same time the thor anon ftp and thor gopher servers will be overhauled. Let me know if you want anything included on the gopher or anon ftp servers. Notes: As of this writing almost all of these questions apply to SunOS versions up to 4.1.3. SunOS 5.x questions will start appearing gradually as more people start installing SunOS 5.x(Solaris 2.x). I am looking for suggestions on how to split this FAQ into sections. These sections should follow the comp.sys.sun.* newsgroups(app, hardware, admin, misc, and wanted) and section on bettering Sun Security. Basically, what will end up with is a FAQ on each subject. Each FAQ will have a Solaris1.x Section, a Solaris2x section, and a section common to both. I will probably need some volunteers to help coordinate this undertakeing.. Send suggestion to the usual address. This article includes answers to the following questions, which are loosely grouped into categories. Questions marked with a '+' indicate questions new to this issue; those with significant changes of content since the last issue are marked by '!'. Questions 1)! How to get DNS working when not running NIS ? 2) How to get DNS to be used when running NIS ? 3) How to properly setup NFS mounting of /var/spool/mail ? 4) Can I use AnswerBook under X11R5? 5) What does "NFS write error X" mean? 6) How do I find the amount of memory installed or other system configuration information? 7) Where can I get a version of ftp that does logging? 8) Where can one get SunOS patches? Where can I get patch 10xxxx-xx? 9) How to setup Openwindows Calendar Manager in a distributed environment? 10) Why does the talk command fail between SunOS and any other manufacturer's equipment(like DEC)? 11) How do I setup "anonymous" ftp? 12) How come yppasswdd does not automatically update the yp maps? 13) What does NFS getattr failed/RPC: Authentication error mean? 14) Why did my Quantum 105 megabyte hard disk stop working? 15)! Can I replace the 105 megabyte internal drive with a higher capacity model? 16) How can I turn my Sun3 into an X-Terminal? 17) Why is my console login prompt garbled or in some strange alphabet after upgrading to 4.1.3? 18) Why are the "random" missing services at boot time(even though the services are in the /etc/services file or NIS map)? 19) Where can I get Data Certified tapes for 8-mm tape drives(at a reasonable price)? 20) What is "archie"? 21)! How do I synchronize time on my Network? 22) What is the phone number for Sun Express and other numbers of importance to Sun Users? 23) How do I join sun related mailing lists? 24) How do I use Mac floppies in a SUN drive? 25) How can I transfer floppies back and forth between MS-DOS and Sparc? 26) Why is my biff not "biffing" when using biff in a networked environment? 27) How do I disable L1-A(STOP-A) or re-map it? 28) Why are all the local users "unknown" when using sendmail under 4.1.2? 29) What are the dump parameters for an exabyte 8200 or 8500? 30) What are the guidelines for setting up swap space ? 31) What are the general guidelines for maxusers to be set to on machine X? 32) What does "zsN: silo overflow" mean? 33) What does the "N" in "zsN: silo overflow", and other "zsN" messages, signify? 34) How do I set up a Sun serial port both for dial-in and dial-out? 35) I can't get my Sun, running SunOS 4.1[.x], to establish a UUCP connection to some non-Sun machine; it won't log in. What's wrong? 36) Do the Sun serial ports support RTS/CTS flow control? 37) How do I specify that a serial port should, or should not, ignore the state of the Carrier Detect line? 38) I put in a new "termcap" entry, or updated an existing "termcap" entry, for a terminal, but "vi" doesn't seem to know about my change. Why? 39) I have a Type 5 keyboard, and find its placement of the Caps Lock, Control, and Esc keys inconvenient. How do I remedy this? 40) How can I move keys around on a Sun keyboard, for example exchanging the Caps Lock and Control keys on a Type 5 keyboard? 41) My Sun doesn't have an ANSI C compiler. How can I get one? 42) How do I change the time zone setting on my machine? 43) I'm getting messages that say one of the following: proc: table is full and/or file: table is full and/or dquot: table is full and/or inode: table is full What do these errors mean, and how do I fix the problem? 44) Blank at present. 45) How do I run X11R5 applications under Openwindows or Openwindows applications under X11R5? 46) Where do I find a "restricted" shell for SunOS? 47) Will SunOS 4.1.x binaries run under SunOS 5.x? 48)! When I try to compile MITs X11R4 applications under Openwindows 3.0, I get the following "undefined" symbols(_get_wmShellWidgetClass, and _get_applicationShellWidgetClass). What is the Problem? 49)! What is Solaris? 50) What does the "nres_gethostbyaddr !=" error mean? 51) How come my mouse only works in the vertical(or horizontal) direction, how do I repair it? 52) After rebuilding the shared library libc it get some or all the following undefined symbols: dlsym, dlopen, dlclose mbstowcs_xccs, mbtowc_xccs,wcstombs_xccs, or wctomb_xccs. 53) What does "No network locking on host" mean after upgrading to Solaris 2.0? 54) Does Password Aging work with NIS(YP) ? 55) What does "rpc.lockd: Cannot contact status monitor!" mean? 56) How do I join the Sun User Group(SUG)? 57) How do I increase the number of "pseudo" terminals(ptys) ? 58) Where are dump and restore under Solaris 2.x? 59) How do I make the numeric keypad on a type 5 keyboard work with xterm? 60) How do I swap the CAPS LOCK and CONTROL keys on a type 5 keyboard under Openwindows 3.0? 61)! Which Sun models run which versions of SunOS? 62) My rdump is failing with a "Protocol botched" message. What do I do? 63)! Table of Solaris2.x commands and their Solaris1.x equivalents? 64) How do I setup DNS on Solaris2.x? 65) Can a SPARCclassic or LX run SunOS 4.1.3? 66) I just restored my root partation and now I can not boot. What is wrong? 67) How do I disable/enable packet forwarding? 68) How do I disable the printing of banners pages? 69) How do I change my hostname? 70) Table of Solaris2.x files and their Solaris1.x equivalents? 71) Where can I get the BSD print spooler for Solaris2.x? 72) Where is the Solaris2.x screenblank? 73) Is there a command to display the configuration of currentily attached SCSI devices? 74) My printer will not print large files(over 1-megabyte), I keep getting "file to big" errors. What do I do? 75) I keep getting "data corruption" when using NFS over a wan, or slip/ppp link. What do I do? 76) Does anybody know how to enable UDP checksum on NFS? 77) Is there a mailing list for Wabi? 78) Are there any public domain Multi-Vendor backup management systems? 79)+ How to determine the revision of SuperSPARC processor. 80)+ How do I install SunOS4.1.x by hand(off a CD)? 81)+ Why won't my SUN207 (Maxtor LXT213) hard drive work in my SPARCstation 10/xx? Answers 1) How to get DNS working when not running NIS ? Note: Solaris2.x users should see question 64.. The "normal" behavior of a hostname lookup under NIS is to consult the NIS hosts map and then DNS (if configured). If you are not running NIS the system will only look in the /etc/hosts file. You have two options to correct this situation: A) Re-build the shared library version of libc with replacement resolver routines which understand DNS. Resolv+ provides one of the best sets of replacement routines and it cames with detailed instructions. Also, it will take of fixing the many problems with the normal Sun shared library rebuild. Finally, resolv+ can be obtained from thor.ece.uc.edu. Get the file /pub/sun-faq/resolv+2.1.1.tar.Z. Rebuilding the shared library will not allow statically linked binaries to do name resolving and these binaries will only use /etc/hosts. You can get "dynamically linked" replacements for these via anonymous ftp to thor.ece.uc.edu(129.137.8.118) and get the file /pub/sun-faq/rcp-mount.dynamic.tar.Z. This file only contains sun4 binaries. A statically linked version of mount that uses DNS instead of NIS is available from thor.ece.uc.edu also. To be able to rebuild shared libraries you need to install the "shlib custom" option which is avaiable with SunOS version 4.1 or greater. If you want to do it under 4.0.3 you need to get the patches available from ftp.uu.net(192.48.96.9) in the /systems/sun/sun-fixes directory. You will need the following files: lib.msg, libc_pic.a.sun3 or libc_pic.a.sun4 and libc_resolv.so.sun3 or libc_resolv.so.sun4 Make sure to get the README that cames with these files. It is in the same directory. Note: You can still use NIS for other things in environment, such as passwd, and group maps. B) Run NIS with the "hosts" maps only. If you only need DNS capability than change the "all" line /var/yp/Makefile to "all: hosts". It does not require any changes to shared libraries. See question 2 for complete directoins on how to setup DNS with NIS. 2) How to get DNS to be used when running NIS ? First setup the appropriate /etc/resolv.conf file. Something like this should do the "trick". ; ; Data file for a client. ; domain local domain nameserver address of primary domain nameserver nameserver address of secondary domain nameserver where: "local domain" is the domain part of the hostnames. For example, if your hostname is "thor.ece.uc.edu" your "local domain" is "ece.uc.edu". You will need to put a copy of this resolv.conf on all NIS(YP) servers including slaves. Under SunOS 4.1 and greater, change the "B=" at the top of the /var/yp/Makefile to "B=-b" and setup NIS in the usual fashion. You will need reboot or restart ypserv for these changes to take affect. Under 4.0.x, edit the Makefile or apply the following "diff": *** Makefile.orig Wed Jan 10 13:22:11 1990 --- Makefile Wed Jan 10 13:22:01 1990 *************** *** 63 **** ! | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byname; \ --- 63 ---- ! | $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byname; \ *************** *** 66 **** ! | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byaddr; \ --- 66 ---- ! | $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byaddr; \ 3) How to properly setup NFS mounting of /var/spool/mail ? On the Client machines: A) mount /var/spool/mail with the no attribute caching option. An example, fstab line would be the following: mailhost:/var/spool/mail /var/spool/mail nfs rw,noac 0 0 B) Use a sendmail.cf that forces all mail to be delivered by the mailhost. One such file is available via anonymous ftp to thor.ece.uc.edu. Get the file /pub/sun-faq/sendmail.client.cf Do not use the OR option that Sun provides. It is broken in many ways. On the server machine: A) Setup DNS MX records pointing to the mailhost for all client machines. B) Edit the /etc/exports file to export /var/spool/mail to the mail client machines. You may want to use a netgroup for this purpose. C) Setup the /etc/sendmail.cf on the server recognize that mail to/from a client is "local". One such file is available via anonymous ftp to thor.ece.uc.edu. Get the file /pub/sun-faq/sendmail.server.cf Note: You may want to install Berkeley sendmail instead of Suns stock sendmail. 4) Can I use AnswerBook under X11R5? AnswerBook in its current form requires the Openwindows server. It uses the NeWS extensions(Postscript) extensions to this server to display the Answerbook files. To use AnswerBook under X11R5 you will need to replace the docviewer program with xdocviewer. Xdocviewer does not support all the options that the "real" docviewer supports such as "hypertext" links. To install "xdocviewer" you will need the following programs. Perl-4 patchlevel 35 Ghostscript 2.4 or above GSpreview 2.1 or above or Ghostview 1.3 or above All of these are available from prep.ai.mit.edu. They are located in the /pub/gnu directory. Finally, you need xdocviewer. It is available from the /contrib directory on host ftp.x.org. 5) What does "NFS write error X" mean? You can lookup the error codes in /usr/include/sys/errno.h. Two common NFS error codes are 13 - "permission denied" and 70 - "stale file handle". Error code 13 can occur from incorrect /etc/exports entry. Also, it can occur because someone has changed the /etc/exports entry to disallow the client after the client has already been granted permission to perform this operation. Error code 70 occurs when the file handle on the NFS server changes for a particular filesystem. The "file handle" can be changed under the following circumstances: A) Installing a new drive in place of an old. B) Moving a filesystem from one devices to another. C) Performing a format, newfs, dump, and restore cycle. Even if to the same device. D) Unmounting a file system without remounting it. E) Unmounting a High Sierra/ISO 9660 CD-ROM and mounting a different CD. You can usually get rid of the error by unmounting and remounting the filesystem in question. Also, error code 70 can occur when someone removes a file that a process is actively writing from a NFS client machine. Under SunOS 4.1, you can run "showfh" to translate the NFS "file handle" given in the error message into a Unix pathname. Beware that showfhd does a "find" on your server to get the filename. "man 2 intro" will give you some more general information on what error codes could mean. You will need a patch to get "showfh" to work correctly. The patch id is 100371 and this patch is required for 4.1, 4.1.1, and 4.1.2. This patch has been integrated into 4.1.3. 6) How do I find the amount of memory installed or other system configuration information? You can use the "devinfo" command to find out genera information about the hardware attached to your Sun. The "devinfo" command is only available on desktop SPARCsystems, SPARCengine 1E(although not in the version used in Auspex systems), or 600MP series server only. Also, most clones should support devinfo. Any machine that has an SBus will probably support "devinfo"; any machine that doesn't have an SBus probably won't support "devinfo". The "best" command for the job is "sysinfo". Sysinfo is public domain utility available via "anonymous" ftp on usc.edu in directory /pub/sysinfo. Sysinfo works on all Sun architectures(inculding Sun-3s) as well as many other UNIX boxes such as Ultrix, and Next. Also, it works on SunOS5.x machines. Note: "wc -l /dev/mem" and "dd if=/dev/mem of=/dev/null" and the like will *not* give the correct answer on machines where physical memory is not contiguous, such as many Suns. 7) Where can I get a version of ftp that does logging? Get the wuarchive ftp daemon. It is available from wuarchive.wustl.edu (128.252.135.4) in the directory /packages/wuarchive-ftpd A version of the wuarchive ftpd daemon that compiles right out of the box for Solaris2.x machines can be had from thor.ece.uc.edu(129.137.8.118) in the /pub/sun-faq directory. Remember to specify your own paths in the src/pathnames.h file. The stock Sun ftpd will log some information if you add the "-l" flag in /etc/inetd.conf: ftp stream tcp nowait root /usr/etc/in.ftpd in.ftpd -l Also enable syslogd by adding: daemon.info /var/adm/syslog to "/etc/syslog.conf". 8) Where can one get SunOS patches? Where can I get patch 10xxxx-xx? Many anonymous ftp sites have partial collections of patches. These sites include the following: ftp.uu.net:/systems/sun/sun-dist/ ftp.EU.net:/sun/fixes/ sunline.epfl.ch:/pub/sun-patches/ ftp.ucs.ubc.ca:/pub/ubc/sun-patches/ thor.ece.uc.edu:/pub/sun-faq/SunOS4.1.x.Patches thor.ece.uc.edu:/pub/sun-faq/Solaris2.1-patches thor.ece.uc.edu:/pub/sun-faq/Solaris2.2-patches thor.ece.uc.edu:/pub/sun-faq/Solaris2.3-patches Note: You should always attempt to find a local site before using the above. ftp.uu.net and ftp.EU.net are the "official" distribution points for SunOS security patches. Also, you should use "archie" to look for specific patches. Finally, the Sun User Group (SUG) CD ROM has a collection of Sun patches. 9) How to setup Openwindows Calendar Manager in a distributed environment? Sun's original assumption that each user has a permanent machine allocated to them is not applicable in most environments. Just as users send mail to 'user' rather than 'user@machine', users want to browse others user's calendars and do not care or want to know where the calendar is actually stored. Here is procedure to accomplish our goal. All calendars will be stored on a central server. The initial setup must be done on the server. A) Have the user login to the calendar host(calhost) machine. B) Change everyone's .cm.rc file so that Calendar.DefaultCal points to user@calhost calhost can be an hostname alias or an actual hostname. You may want to use the alias just in case you change the "calhost" later. C) Change their Access List and Permissions (under Edit/Properties) to show user@client with BID (browse, insert, delete) permissions for any client machine the user wanted to access their calendar from. Notes: If you use the scheme you should not NFS mount /var/spool/calendar on the client machines. or You can install the "Proxy OpenWindows Calendar Manager", which is available via anonymous FTP from thor.ece.uc.edu in /pub/sun-faq/proxy-cmsd.tar.Z. or You can install the "new cm daemon" which allows you to access several Calendar hosts at once. It implements the "orignal" rpc.cmsd daemon semantics(unlike proxy-cmsd) and thus all the features(of CM) will work as documented. The latest source for this daemon is always available via anonymous FTP from ftp.amdahl.com (129.212.11.1) in the /pub/newcm_d directory. Also, it is available from thor.ece.uc.edu as /pub/sun-faq/newcm_d-1.3.tar.Z As of this writing newcm is being ported to Solaris2.x. 10) Why does the talk command fail between SunOS and any other manufacturer's equipment(like DEC)? SunOS has the old BSD 4.2 version of talk. The old talk uses "machine dependent" byte ordering. Since DEC has different byte order the two talks can not communicate(even if you use "otalk" on the DEC machines). Also, most vendors have the newer version of talk from BSD-4.3 and this version is not compatible with the Sun Version(which is BSD-4.2). The solution is to get and install the new version of talk because it uses "network" byte ordering and it is compatible with most Vendors current talk implementations. "New Talk" is available via anonymous ftp from several sites including thor.ece.uc.edu. Get the file /pub/sun-faq/ntalk.tar.Z. Solaris2.x users will need to compile this in Berkeley compatability mode. Finally, a progrom called Ytalk can be used with either "New talk" or "Old talk" and compiles on all versions of SunOS(Greater than 4.x including 5.x). Ytalk can be obtained from thor.ece.uc.edu. Get the file /pub/sun-faq/ytalk-3.0.1.tar.gz 11) How do I setup "anonymous" ftp? Read the man page ftpd(8) in the SunOS 4.x documentation, as the procedure differs from vanilla BSD and most examples in system administration books. The "ls" binary is dynamically linked, requiring you to duplicate ld.so, libc.so.* and /dev/zero in the ftp area. The permissions and ownership of the files within the ftp area are critical to having a secure configuration. Note: For SunOS versions 4.1.2 and 4.1.3 you will need to copy /usr/lib/libdl.so.* to the ftp area as well. You can use a "statically" linked binary from the GNU fileutils instead of the "dynamically" linked SunOS version. You can get the GNU fileutils from prep.ai.mit.edu in the directory /pub/gnu There is also a statically linked version of ls for Suns running SunOS 4.1.x, available via anonymous ftp from thor.ece.uc.edu. Get the file /pub/sun-faq/ls.statically-linked A complete procedure to setup anonymous under SunOS is available via anonymous ftp to thor.ece.uc.edu. Get the file /pub/sun-faq/anon-ftp.how-to. There is an _excellent_ script written by Peter N. Lewis (peter.lewis@info.curtin.edu.au) for setting up anonymous ftp located on thor.ece.uc.edu, in the file /pub/sun-faq/anon-ftp.scrpt 12) How come yppasswdd does not automatically update the yp maps? There is a bug in 4.1 rpc.yppasswdd that causes it misinterpret the command line arguments. A work-around is to add the "-nosingle" flag (which is the default), this shifts the arguments over one, so "passwd" is read instead of "-m". Also, you should use the complete path to rpc.yppasswdd For example: /usr/etc/rpc.yppasswdd /var/yp/passwd -nosingle -m passwd DIR=/var/yp Note: Only use the DIR=/var/yp if your source files for passwd, group, etc are in /var/yp. If they are in /etc you do not need to specify DIR= If you are running the C2 security package, you should apply the C2 Jumbo patch, as it fixes several problems with rpc.yppasswdd and rpc.pwdauthd. The patch number is 100201-04 for SunOS 4.1 and 4.1.1 100564-06 for SunOS 4.1.2 and 4.1.3 13) What does NFS getattr failed/RPC: Authentication error mean? You are probably running a pre-4.0 version of NFS and your username is in more than 8 groups. There is a limit on the number of groups that could be represented in the rpc service (called NGRPS). On pre-4.0 systems this was 8, now it is 16. Since many vendors other than Sun are still running old versions of NFS, you might see this error even if your SunOS is recent. Authentication errors are also caused by having secure RPC enabled on the client but not on the server, or by having a misconfigured secure RPC configuration for the user name generating the errors. Beware of this problem when you are using the automounter, as programs (such as Sendmail) may silently fail when when they try to mount a directory and get this error. 14) Why did my Quantum 105 megabyte hard disk stop working? This the now infamous Quantum drive "stickation" problem. If the drive is allowed to cool down(even for a short period of time) the drive lubricant will congeal and prevent the disks platters from rotating. Before you get a replacement, try lightly tapping the drive to loosen the lubricant. If this does not work try shaking and twisting the drive at the same time. One last thing to try is to lift the system up a couple of inches and drop it. 15) Can I replace the 105 megabyte internal drive with a higher capacity model? The newer disk drives can be used without worrying about heat or power supply capacity problems. However, older technology drives drives create more heat and draw more power than the 105S. The case cooling ability and power supply in the SS-1 and SS-1+ are not adequate for the 210 megabyte or higher capacity drives possible in the SS-2. As long as you make sure that the drive draws no more power than the 105-Meg drive you should have no problems. Only the SPARCstation 1 and 1+ have these limitations. 16) How can I turn my Sun3 into an X-Terminal? You can use Seth Robertson's Xkernel package. It is available via anonymous ftp from ftp.ctr.columbia.edu (128.59.64.40) in /Xkernel. The package describes how to configure a minimal kernel that runs the X server and offloads all the clients onto another, hopefully more powerful host on the network. As of this writing the current version of Xkernel is 2.0 and it should work on both SPARC and Sun3 platforms. Xkernel is attractive to some sites that have a large investment in sun3 platforms, as moving most of the processing off the sun3 cpu makes it tolerable to use. Finally, a used 3/50 is competitive with low-end X Terminal and you get a 19" monitor with an optical mouse. 17) Why is my console login prompt garbled or in some strange alphabet after upgrading to 4.1.3? The problem is /etc/ttytab, with 4.1.3, the console is now able to display 8 bits characters and getty must take this into account. The solution is easy, replace your console entry in /etc/ttytab by the following, the important part is 'cons8': console "/usr/etc/getty cons8" sun on local secure Also, if you did an upgrade(instead of a full install) you may need to add the following to your /etc/gettytab. # This is a new entry to internationalize the console. It needs to be # 8 bit clean so that ISO 8859 characters can be displayed without # the window system. # cons8:\ :p8:lm=\r\n%h login\72 :sp#9600: 18) Why are there "random" missing services at boot time(even though the services are in the /etc/services file or NIS map)? The three primary causes for "random" missing services are as follows: A) "Blank" lines in /etc/services on the YP/NIS Master. Delete the blank line and remake the services map. B) NIS/YP server not responding quickly enough to the "getservbyname" call because each getservbyname call reads the whole map. One fix is to replace the systems version of inetd with a version that re-tries the "unknown" service. I have "hacked" a version of munetd(public domain replacement for inetd) to do this. It is available from thor.ece.uc.edu. Get the file /pub/sun-faq/munetd.tar.Z Another solution to this problem is outlined in part C below. C) Sun's implementation of the services map is incorrect. To correct this problem you will need to replace some library routines in libc and rebuild the shared library. These routines and directions on installing them are available from thor.ece.uc.edu. Get the file /pub/sun-faq/getservent.tar.Z. D) Another fix(if you do not want to modify your libc's) is to just remove the services map from NIS. However, you will need to update the services file by hand on all clients. We are running all NIS hosts this way and it seems to work quite well. 19) Where can I get Data Certified tapes for 8-mm tape drives(at reasonable price)? Here is an incomplete list of vendors how have "data certified" tapes for the exabyte. Misco 800-876-1726 $12 - 15 each. TecBridge 800-972-7405 $12 - 15 each. R-Squared 800-777-3478 Sony 112m 120@8.00 Each K and K Systems 612-475-1527 $10 Each SCR 314-739-0808 $10.95 for Memorex 20) What is "archie"? Archie is a database of what is on several thousand anonymous ftp sites. To use archie get one of the three archie clients which are as follows: xarchie - For use under X11 c-archie - Curses version of Archie archie - Perl Version of Archie Theses are available from archie.ans.net in the directory /pub/archie. List of other publicly available archie servers: archie.rutgers.edu 128.6.18.15 (Rutgers University) archie.unl.edu 129.93.1.14 (University of Nebraska in Lincoln) archie.sura.net 128.167.254.179 (SURAnet archie server) archie.ans.net 147.225.1.2 (ANS archie server) archie.au 139.130.4.6 (Australian server) archie.funet.fi 128.214.6.100 (European server in Finland) archie.doc.ic.ac.uk 146.169.11.3 (UK/England server) archie.cs.huji.ac.il 132.65.6.15 (Israel server) archie.wide.ad.jp 133.4.3.6 (Japanese server) archie.th-darmstadt.de 130.83.128.111 (German server) 21) How do I synchronize time on my Network? You should use xntp version 3 to synchronize your time. Xntp synchronizes to "atomic" and/or Radio Frequency clocks. Using xntp time should always be within a few "milliseconds" of the actual time. Xntp does not require a "atomic" clock, any stable UNIX host clock will do. xntp is available from louie.udel.edu. Get the file /pub/ntp/xntp3?.tar.Z where ? is replaced by the latest version letter. You will need clock.txt available from the same place. xntp works with all versions of SunOS(4.x and 5.x). Note: There is a Mac Control version of XNTP now available. 22) What is the phone number for Sun Express and other numbers of importance to Sun Users? Sun Express: 1-800-USE-SUNX (1-800-873-7869) Main Sun Helpline: 1-800-USA-4SUN (1-800-872-4786) Auspex Systems Inc. : 2952 Bunker Hill Lane Santa Clara, CA 95054 (800) 735-3177 or (408) 492-0900 Fax: (408) 492-0909 23) How do I join sun related mailing lists? Mailing Lists: Sun Managers: Used for "emergency" information only. The users of this list are "very" knowledgable. sun-managers-request@eecs.nwu.edu add requests sun-managers@eecs.nwu.edu submissions Sun-386i: discussion about the Sun 386i product sun-386i-request@ssg.com add requests sun-386i@ssg.com submissions From csus.edu!csulb.edu!nic-nac.CSU.net!usc!elroy.jpl.nasa.gov!lll-winken.llnl.gov!venus.sun.com!male.EBay.Sun.COM!engnews2.Eng.Sun.COM!room101!casper Mon Jun 5 09:06:21 1995 Path: csus.edu!csulb.edu!nic-nac.CSU.net!usc!elroy.jpl.nasa.gov!lll-winken.llnl.gov!venus.sun.com!male.EBay.Sun.COM!engnews2.Eng.Sun.COM!room101!casper From: casper@room101..Holland.Sun.COM (Casper Dik - ENS Network Security - Network Security Engineer) Newsgroups: comp.unix.solaris,comp.sys.sun.admin,comp.answers,news.answers Subject: Solaris 2 Frequently Asked Questions (FAQ) 1.46 Supersedes: Followup-To: comp.unix.solaris Date: 8 May 1995 14:05:29 GMT Organization: Sun Microsystems Inc., Mountain View, CA Lines: 2424 Approved: news-answers-request@MIT.Edu Distribution: inet Expires: 19 Jun 1995 14:05:09 GMT Message-ID: Reply-To: Casper.Dik@Holland.Sun.COM NNTP-Posting-Host: room101.holland.sun.com Summary: This posting contains a list of Frequently Asked Questions (and answers) about Sun Microsystem's Solaris 2.x system in general. See also the FAQs archived as Solaris2/Porting and Solaris2/x86. Xref: csus.edu comp.unix.solaris:45679 comp.sys.sun.admin:56383 comp.answers:11661 news.answers:43489 Archive-name: Solaris2/FAQ Version: 1.46 Last-Modified: 1995/05/08 14:04:55 Maintained-by: Casper Dik The following is a list of questions that are frequently asked about Solaris 2.x. You can help make it an even better-quality FAQ by writing a short contribution or update and sending it BY EMAIL ONLY to me. Thanks! As you may have noted, I have switched employers and work for Sun as of April 1st 1995. Sun is in no way responsible for the contents of this FAQ. (I haven't really asked). The latest Solaris 2 FAQ, including an HTML version, and some other goodies can be obtained through ftp from ftp.fwi.uva.nl:/pub/solaris. The HTML (URL: ftp://ftp.fwi.uva.nl/pub/solaris/solaris2.html) version of the FAQ contains references to most FTP sites and files mentioned in the FAQ. The references to ftp sites are always to either HTML files or directories, never to binary files. I've added an index of questions and marked changed(*) and added questions(+). The FAQ is being reorganized, time permitting. The index is generated automatically, so there may be errors there. Not all questions are in the section they belong in. Suggestions on how best to subdivide/order the FAQ are welcome. 1. GENERAL 1.1) What's a Solaris anyway? 1.2) Why should I care? Why should I upgrade? 1.3) Should I move to Solaris 2.x now, or later, or never? 1.4) What is Solaris 2? Is it really SVR4 based? 1.5) What machines does Solaris 2.x run on? 1.6) Will my old applications from 4.1.x run on Solaris 2? 1.7) Will my old applications from SVR3 on the 386 run on Solaris 2/x86? 1.8) Where has the XXX command gone now? 1.9) When I upgrade, should I use SunInstall "upgrade", or start over? 1.10) Is Solaris 2.x reliable/stable enough to use? 1.11) Why do some people dislike Solaris2? *1.12) Why do some people *like* Solaris2? +1.13) What is Sun doing to help me migrate? 2. MORE INFO 2.1) How can I RTFM when I don't have it anymore? 2.2) Why is "man -k" so confused? 2.3) What Software is available for Solaris 2.x? 2.4) What FTP/WWW sites do I need to know about? 2.5) What other FAQ's do I need to know about? 2.6) What mailing lists should I get? 2.7) What books should I read? 2.8) What hardware is supported by Solaris 2.x for Intel? 2.9) What is Wabi? 3. SYSTEM ADMINISTRATION 3.1) How much disk space do I need to install Solaris 2? 3.2) How can I convert all my local changes that I've made over the years into their corresponding forms on Solaris 2? 3.3) What are "packages"? 3.4) Why can't I write in /home? 3.5) Why can't I access CDs or floppies? 3.6) Why are there no passwords in /etc/passwd? 3.7) Why can't I rlogin/telnet in as root? 3.8) How can I have a user without a password? 3.9) How can I set up anonymous FTP? 3.10) How can I print from a Solaris 2 (or any System V Release 4) system to a SunOS4.x (or any other BSD) system? 3.11) What if I'd rather use the BSD line printer system? 3.12) What happened to /dev/MAKEDEV? How do I add devices? *3.13) Why isn't my tape/cd player or new disk/device recognized? 3.14) What happened to /etc/rc and /etc/rc.local? 3.15) Speaking of that, why are there two versions of shutdown? 3.16) When will somebody publish a package of the BSD (4.3BSD Net2) "init", "getty", and "rc/rc.local", so we can go back to life in the good old days? 3.17) What has happened to getty? What is pmadm and how do you use it? *3.18) How do I get the screen to blank when nobody's using it? 3.19) And what about screendump, screenload and clear_colormap? 3.20) Where did etherfind go? 3.21) Can I run SunOS4.1.x on my SPARC Classic, LX, SS5, SS20, Voyager, SS1000, SC2000? 3.22) The "find" program complains that my root directory doesn't exist? 3.23) I'm having troubles with high-speed input on the Sparc serial ports. What should I do? 3.24) How do I make ksh or csh be the login shell for root? 3.25) What is this message: "automount: No network locking on host, contact administrator to install server change."? 3.26) How do I make Solaris2 use my Toshiba MK538FB and other older SCSI disks? 3.27) How do I make Solaris2 use my old ADAPTEC ACB-4000 and Emulex MD-21 diskcontrollers? 3.28) Why are there so many patches for Solaris 2.x? 3.29) What are the ``mandatory'' patches I keep hearing about? 3.30) Where do I get patches from? 3.31) Where can I obtain Solaris 2/x86 driver updates? 3.32) Why does installing patches take so much space in /var/sadm? 3.33) Do I need to back out previous versions of a patch? 3.34) How can I have more than 48 pseudo-ttys? 3.35) How can I get ps to print %MEM and %CPU? 3.36) How can I get the DOS and Unix clock to agree on Solaris/x86? 3.37) Hoe can I increase the number of filedescriptors per process? 3.38) Can I install both SunOS and Solaris on the same machine, and choose between them at boot time? 3.39) How do I disable banner pages under Solaris? 4. NETWORKING 4.1) How do I use DNS w/o using NIS or NIS+? 4.2) Speaking of nsswitch.conf, what is it? 4.3) What does [NOTFOUND=return] in nsswitch.conf mean? *4.4) Can I run a nis/yp server under Solaris 2.x? 4.5) Can I run NIS+ under Solaris 1 (SunOS 4.1.x) 4.6) With NIS+ how do I find out which machine a client is bound to? 4.7) Ypcat doesn't work on the netgroup table on a NIS+ server, why? 4.8) Why is rpc.nisd such a memory pig according to ps? 4.9) Why is Xsun such a memory pig, especially on the SX? 4.10) How do I tell my NIS+ server to service DNS requests from 4.x clients? +4.11) How can I have multiple addresses per interface? 5. TROUBLE SHOOTING 5.1) The Solaris 2.x application XX fails with a mysterious error condition. 5.2) Why can't I run Answerbook on a standalone machine? 5.3) Why can't I run filemgr, I get ``mknod: permission denied''? 5.4) Why do I get isinf undefined when linking with libdps? 5.5) I can't get PPP to work between Solaris 2.3 and other platforms. 5.6) Using compat mode for passwd doesn't work in 2.3? 5.7) Why do I get __builtin_va_alist or __builtin_va_arg_incr undefined? 5.8) My machine hangs during the boot process. It seems related to ps. 5.9) Syslogd doesn't seem to log anything. 5.10) I get ``Invalid client credential'' when mounting filesystem on Solaris client from non-Sun fileserver. +5.11) After upgrade to 2.4, ls on NFS mounted directories hangs. +5.12) After installing patch 101945-xx, I have NFS problems (ksh looping) 5.13) I messed up /etc/system, now I can't boot. 5.14) The /etc/path_to_inst file is corrupted, I can't boot. 5.15) TCP/IP connections time out too soon, especially on slow links. *5.16) Solaris 2.x can't set up any TCP/IP connections to certain hosts. 5.17) When reading mail on non-Solaris clients of a Solaris mail server, or with non-Solaris mail readers, some messages get split into multiple messages. +5.18) Mailx/Mail often send reply to wrong user or show wrong sender. 5.19) One of my users can't login (one some machines). 5.20) My clients with remote /var (/var/adm) partitions won't boot. 5.21) Vacation doesn't work reliably in a mixed Solaris/SunOS environment. 5.22) I have a lot of processes. How do I get rid of them? 5.23) I get /dev/ptmx: No such device when logging in. 5.24) ld bails out with msync errors. 5.25) su responds with "Sorry" and doesn't prompt for a password. *5.26) Why can't I install 2.4 from a non-Sun CD while I could do so wth 2.3? 5.27) ifconfig can't find my network interface 5.28) I have an application that compiled fine, but when I run it I get: fatal: libfoo.so.2: can't open file: errno=2 5.29) Motif programs dump core almost immediately. +5.30) cc complains that "language optional software package not installed" +5.31) thr_create and other thread functions always return -1 +5.32) Solaris 2.4 seems to have a kernel memory leak. 6. SOFTWARE DEVELOPMENT 6.1) Where is the C compiler or where can I get one? 6.2) What about the linker, the assembler and make? 6.3) Where has ranlib gone? 6.4) What do I need to compile X11R5? 6.5) I can't compile X11R6 on Solaris 2.4 6.6) X11R6 on Solaris 2.4 won't run. Xinit dies with "User Signal 1". Xterms won't die. 6.7) I get undefined symbols when compiling R6 in Solaris 2.2. 6.8) I can't get perl 4.036 to compile or run. 6.9) I can't get sockets to work with perl. 6.10) I have problems compiling MH 6.8.3 6.11) I can't get XV 3.x to compile or run correctly. 6.12) What happened to NIT? What new mechanisms exist for low-level network access? 6.13) Where are all the functions gone that used to be in libc? 6.14) I'm still missing some functions: bcopy, bzero and friends. 6.15) Can I use the source compatibility package to postpone porting? 6.16) Why doesn't readdir work? It chops the first two characters of all filenames. 6.17) Why do I get undefined symbols when linking with curses/termcap? *6.18) Where are the Motif includes and libraries? +6.19) Traceroute to Solaris 2.x machines gives many timeouts. 7. ACKNOWLEDGEMENTS 1. GENERAL 1.1) What's a Solaris anyway? Solaris(tm) is Sun's name for their UNIX-based user environment, including the UNIX(tm) operating system, window system (X11-based), and other stuff too. Solaris 1.x is a retroactive (marketing?) name for SunOS4.1.x (x>=1), a version of UNIX that is BSD-like with some SVR4 features, along with OpenWindows 3.0. Solaris 2.x (which is what most everybody means by "Solaris") includes SunOS5.x, which is an SVR4-derived UNIX, along with OpenWindows 3.x, tooltalk, and other stuff. (See 1.5 for a chart with more info) 1.2) Why should I care? Why should I upgrade? Solaris 2 is more compatible with the rest of the UNIX industry. Other major UNIX vendors including IBM, HP, SGI, SCO, and others are based on System V rather than on BSD (though some of them are on SVR3, not SVR4). All but one commercial PC-based UNIXes are System V based (and mostly SVR4); the only commercial exception is from a small but interesting firm called BSDI. Solaris 2 is where Sun has been putting almost all its development for the last few years now. There will be no new development on SunOS4; already much of Sun's add-on software is only available for Solaris 2. Solaris 2 is the only supported MP OS on all but the old 4/6x0-1x0 w/ Ross 605 modules. Most Sun software is being released first for Solaris 2.x. Solaris 2.3 features a standard X11R5 release of The X Window System, a benefit for those who didn't like NeWS or the V2/V3 OpenWindows server. (It's still called OpenWindows, but it is the X11R5 server with Adobe DPS added in). It is as fast or faster than MIT R5 (depending on the platform) and supports all Sun graphics hardware. Solaris 2 is more standards-compliant than Solaris 1/SunOS 4. 1.3) Should I move to Solaris 2.x now, or later, or never? That depends - on you, your situation, your application mix, etc. Some year SunOS4.1.x will go the way of the 3/50 - it'll still be around, but Sun will no longer support it. You don't have to upgrade immediately, but you should be planning your upgrade path by now. 1.4) What is Solaris 2? Is it really SVR4 based? Solaris 2 is an "operating environment" that includes the SunOS 5.x operating system and the OpenWindows 3.x window environment. SunOS 5.x are based on USL's SVR4.0. SVR4.0, in turn, was developed jointly by AT&T and Sun while Sun was developing 4.1.0, which is why things like RFS, STREAMS, shared memory, etc., are in SunOS 4.1.x, and why things like vnodes, NFS and XView are in SVR4.0. (RFS, by the way, is being dropped effective with Solaris 2.3). 1.5) What machines does Solaris 2.x run on? Solaris 2.0 only ran on desktop SPARCstations and a few other Sun machines. Solaris 2.1 and 2.4 and later come in two flavors, SPARC and "x86". Solaris 2.1 (and 2.2, ...) for SPARC run on all SPARCstations and clones, as well as all models of the Sun-4 family. The old FPU on the 4/110 and 260/280 is not supported, so floating point will be SLOW, but it does work. All version of the Openboot PROMs should work under Solaris 2.x. A Solaris port for the PowerPC is underway. It is expected to be completed first half '95. IBM will be selling systems with Solaris pre-installed and shrink-wrapped for people who bought a different OS with their PowerPC. The first systems are expected to be 66MHz 601s and 603s. (SunExpert 11/94) Solaris 2.1 and 2.4 for x86 has been released to end users. It runs on a wide range of high-end PC-architecture machines. "High-end" means: 16MB of RAM and an 80486 (or 33MHz or faster 80386DX). It will not run on your 4 MB 16MHz 386SX, so don't bother trying! Also, floating point hardware (80387-style) is absolutely required in 2.1. Starting with Solaris 2.4 for x86, a fp CO-processor is no-longer required, though still recommended. All three buses are supported: ISA, EISA, MCA. Some PCI devices are supported, though full bus nexus support for PCI is not there. See also 3.31. To summarize all this, Jim Prescott gave this chart, which I've updated: Solaris SunOS OpenWin Comments 1.0 4.1.1B 2.0 4.1.1_U1 2.0 sun3 EOL release (not named Solaris) 1.0.1 4.1.2 2.0 6[379]0-1[24]0 MP 1.1 4.1.3 3.0 SP Viking support 1.1C 4.1.3C 3.0 Classic/LX 1.1.1 4.1.3_U1 3.0_U1 4.1.3 + fixes + Classic/LX support 1.1.1 B 4.1.3_U1B 3.0_U1 1.1.1B + SS5/SS20 support 1.1.2 4.1.4 3_414 The "final" 4.x release (SS20 HS11) 2.0 5.0 3.0.1 sun4c only 2.1SPARC 5.1 3.1 Dec '92 2.1 x86 5.1 3.1 May '93 2.2SPARC 5.2 3.2 May '93 2.3SPARC 5.3 3.3 Nov '93 OpenWin 3.3 is X11R5 based: Display PostScript instead of NeWS, no SunView. It is still primarily OPEN LOOK. The Spring 1995 OpenWin will be Motif and COSE-based. 2.3 edition II SPARC Special Solaris 2.3 distribution for Voyager and SparcStation 5 2.3 hardware 5/94 SPARC ?? 2.3 hardware 8/94 SPARC Supports S24 (24 bits color for SS5), POSIX 1003.2, Energy Start power management and SunFastEthernet + patches. 2.4 5.4 3.4 From this moment on, the SPARC and x86 releases are in sync. Q3 '94 Adds motif runtime and headers (not mwm). 2.4 hardware 11/94 First SMCC release of 2.4 2.4 hardware 3/95 Second SMCC release of 2.4 (includes support for booting from SSA) 1.6) Will my old applications from 4.1.x run on Solaris 2? There is quite a bit of support in SunOS 5.x for running 4.1.x binaries in an emulation mode called "Binary Compatibility" (BCP). This works by dynamically linking the 4.1.x binaries with a shared library that emulates the 4.1.x binary interface on top of 5.x, so there is some overhead. Programs will only work if they were dynamically linked (statically linked binaries run in 2.3, but with some extra restrictions), and if they meet certain other criteria. Best bet: try it and see. Be aware, though, that Sun WILL drop the binary compatibility package some year. Try to wean yourself and your users from depending on it, even if it means beating on your software vendors to offer "native" Solaris2 applications. 1.7) Will my old applications from SVR3 on the 386 run on Solaris 2/x86? As with SPARC, there is an emulation mode that should run the majority of well-behaved SVR3 and Xenix binaries. Most SVR3 stuff appears to work under Solaris 2.4. Applications from any other vendor's standards-conforming 386/486 SVR4 should also run. However, some vendors have made incompatible changes to their SVR4 release and programs linked on those versions may not work. Future versions of Solaris 2.x for Intel will address some/most of those incompatibilities. Unixware is one of the offenders. 1.8) Where has the XXX command gone now? There are too many of these changes to include in this FAQ, but here are some key ones: a. locations are often different hostid /usr/ucb/hostid whoami /usr/ucb/whoami hostname /usr/ucb/hostname (or use uname -n) b. some old commands don't exist or have replacements 4.1.X Solaris 2.X pstat -s swap -s (how much swap space?) dkinfo /usr/sbin/prtvtoc raw_dev_name trace truss mount -a mountall exportfs share bar cpio -H bar (read only) This information can be found in the Solaris 2.x Transition Guide - Appendix A (commands), Appendix B (system calls), Appendix C (files). This guide has undergone some changes from 2.0 -> 2.1 and beyond. Several manuals have ended up being combined into this single manual. This manual discusses administrative transition and developer transition issues. The command "whatnow" (for Solaris 2.x) is included in the "Admigration Toolkit" package (see below). The Admigration toolkit can be obtained from: opcom.sun.ca:/pub/AMToolkit-2.3.* Admigration toolkit HTML documentation/code [URL: http://www.sun.com/smcc/solaris-migration/products/product-search-form.html] Sample output: % whatnow hostname hostname 4.x command only hostname /usr/ucb/hostname part of SCP package hostname /usr/bin/uname -n alternate command The whatnow command is limited in that it may point to one command which may only implement a subset of the old command (e.g., pstat points to sar, while pstat -s is identical to swap -s) 1.9) When I upgrade, should I use SunInstall "upgrade", or start over? You can't do a SunInstall "upgrade" from 4.1.x to Solaris2. You can use the Admigration toolkit (q.v.) to help you move from SunOS 4.1.x (Solaris 1, actually) to Solaris 2. If you're moving from Solaris 2.1 to 2.2, or 2.2 to 2.3, ..., then you can use "upgrade" to preserve your existing partitions and local changes (including pkgadd!!), though it runs very slowly (about 1.5-2x the time for a reinstall) and does require that you have enough free space in / and /usr - make these big when you first install! If you run out of space in one of your partitions, you can always remove some components. Those will not be upgraded and can be installed elsewhere after initial upgrade (e.g., you can remove OW, Xil, Dxlib, manual pages, etc) There is no need to backout patches before upgrading. In 2.2, the system would back them out for you, in 2.3 it won't back out the patches but removes them without a trace. The upgrade doesn't work as well as a full install. E.g., the upgrade from 2.x (x<3) to 2.3 will leave aliases for all your ptys in /devices/pseudo. 1.10) Is Solaris 2.x reliable/stable enough to use? The consensus seems to be that yes, it is, for many applications and most users. Your mileage may vary. Binary compatibility was much improved in 2.3. That will help transition somewhat. The performance of 2.3 is adequate, though some parts of the system are still slower than SunOS 4.1.x. Solaris 2.3 is much more stable on MP machines than 2.2. The Solaris 2.3 version of OpenWindows is much faster and much more stable than the versions shipped with SunOS 4.1.x. Solaris 2.1 and earlier should really be avoided. Solaris 2.2 should be avoided too, but some people need to stick to it until some applications get ported (2.2 is the last release with NeWS) Solaris 2.3 still has some problems on high-end MP systems with large numbers of interactive users. Solaris 2.4 promises much more scalable multi-processing. 1.11) Why do some people dislike Solaris2? There is a number of reasons why people dislike Solaris. 1) Change. In general people dislike change. Change requires re-learning and retraining. Old system administration practices no longer work. Commands have been replaced by other commands, some commands behave differently. And they ask why the change was necessary. SunOS 4.x worked for them. 2) Lack of migration support. Sun did not provide a lot of tools to ease migration. Many applications wouldn't run in the binary compatibility mode. The source compatibility mode was probably compatible with some OS, but it certainly wasn't SunOS. Lot of public domain and third party stuff needed wasn't immediately available for Solaris. NIS+, buggy, resource hungry and instable replaced NIS in incompatible ways. 3) Missing functionality. When people migrate, they at first don't tend to notice new functionality. Instead, they stumble upon missing functionality such as screenblank, clear_colormap and the like (but see 3.18). And perhaps worst of all, no C compiler, not even a crippled one. 4) Slow and buggy. The initial Solaris releases didn't perform at all well and were extremely instable. This is improving rapidly, but SuperSPARC MP machines need a heavily patched 2.3 to work reliably. *1.12) Why do some people *like* Solaris2? There are improvements in Solaris 2.x. 1) OpenWindows 3.3 (in Solaris 2.3). Includes X11R5 and Display PostScript. 2) ANSI-C and POSIX development environment. 3) Multi-threaded kernel and real threads. 4) True multi-processing. 5) Goodies: vold, admintool and Wabi. 6) Easy patch installation/administration through installpatch. 7) all software in easy to manage "packages" +1.13) What is Sun doing to help me migrate? Sun has recently started several projects to aid in the transition. Their WWW starting point is: Solaris Migration Initiative home page [URL: http://www.sun.com/smcc/solaris-migration/index.html] The project is a combination of new and existing efforts and includes: 1) Porting PD software to Solaris 2.x 2) Solaris Migration Tool: (formerly known as Pipeline tool) a tool to help you port your code. 3) Admigration Toolset. Tools to help you convert your SunOS 4 environment and to help you adjust to the new Solaris 2.x envrionment. 4) Appmap: a tool to simplify application administration in a mixed SunOS 4.x/Solaris 2.x envrionment 5) Solaris Transition CD (June '95) 6) Native Solaris NIS (July '95) 7) LP tools (simplified LP administration through NIS) (July '95) 2. MORE INFO 2.1) How can I RTFM when I don't have it anymore? "RTFM" is an old saying: Read The "Fine" Manual. Sun still sell printed manuals, but doesn't automatically distribute them. As with all real UNIX systems, you do get a full set of online "man" pages. A smaller, lighter, bookshelf-friendly :-) CD-ROM called "The AnswerBook"(tm) contains all the printed documents in machine-readable (PostScript) form, with hypertext capabilities and a keyword search engine. 90% of your introductory questions are answered therein! In Solaris 2.x the Answerbook set gets increasingly more divided into pieces. It is currently (2.3) split over 4 CDs Solaris 2.x CD: Solaris 2.x User AnswerBook Solaris 2.x administrator answerbook Solaris 2.x System Administrator AnswerBook Solaris 2.x on Sun Hardware AnswerBook Solaris 2.x Reference Manual AnswerBook Solaris 2.x Software Developer Kit All programming manuals. Solaris 2.x Driver Developer Kit Device driver developer manuals. There is some overlap between CDs. As distributed with 2.1 and 2.2, the Answerbook search engine runs only with the OpenWindows ("xnews") server, not with MIT X11. This changed in 2.3. If you are using the MIT server instead of what Sun provides, you'll have to use one of several "answerbook workaround" scripts that are in circulation. The AnswerBook distributed with 2.3 and later runs with the OW3.3 X11R5+DPS server, so it should display on any X11+DPS server, such as on DEC, IBM and SGI workstations. You should buy (or print from within Answerbook) at least the reference manual and the System and Network Administration books, because if your system becomes disabled you won't be able to run the Answerbook to find out how to fix it... 2.2) Why is "man -k" so confused? Solaris man uses a manual page index file called "windex" in place of the old "whatis" file. You can build this index with cd ; catman -w -M . But, in 2.1, this will result in numerous "line too long" messages and a bogus windex file in /usr/share/man, and a core dump in /usr/openwin/man. (In 2.2, catman works in /usr/share/man, but says "line too long" in /usr/openwin/man). To add injury to insult, "man" normally won't show you a man page if it can't find the windex entry, even though the man page exists. There's a "makewhatis" script in /usr/openwin/man that works better than catman. But watch it - by default it searches files in /usr/man, not in openwin, and it only looks in some predefined man subdirectories. Try changing its "for ..." command to "for i in man*", then use it like this: cd /usr/share/man; /usr/openwin/man/makewhatis . cd /usr/openwin/man; /usr/openwin/man/makewhatis . Still (!), the openwin windex file is somewhat hosed (try "man answerbook" :-(. You can always delete the bogus lines manually... or, you can alias man to "man -F", forcing it to look for the bloody file like you asked. But wait, there's more! To see the read(2) man page, you can't just type "man 2 read" anymore - it has to be "man -s 2 read". Or, alias man to this little script: #!/bin/sh if [ $# -gt 1 -a "$1" -gt "0" ]; then /bin/man -F -s $* else /bin/man -F $* fi 2.3) What Software is available for Solaris 2.x? Most commercial software that ran on 4.x either will run in BCP mode, or is available for Solaris 2.x, or is being ported now. Solaris 2.3 BCP mode finally supports statically-linked executables. You can obtain a list of official 3rd party porting commitments, maintained by Sun's "Solaris Demand Center" (whatever that is), by sending electronic mail to "sparc_products@thegift.sun.com" -- this is an automatic reply server. The list shows what third party applications are currently available for Solaris, and lists expected dates for many more. A list of freeware (some "public domain", but mostly copyright- but-freely-distributable) [as well as commercial software??] that has been ported to Solaris 2.x is posted monthly to the newsgroup comp.unix.solaris by ric@updike.sri.com (Richard Steinberger). Look for this: Subject: Solaris SW list. Monthly Post. If you can't wait, the list is also available via anonymous FTP from updike.sri.com. 2.4) What FTP/WWW sites do I need to know about? www.sun.com [URL: http://www.sun.com] Sun's own WWW site, contains pointers to Sunsites, patches and has lots of info, press releases etc, etc. Solaris transition home page [URL: http://www.sun.com/smcc/solaris-migration/index.html] Sun's Solaris 2.x migration support SunSites - Sun sponsored sites. Lots of good stuff here: SunSITE USA at UNC - Chapel Hill (sunsite.unc.edu) [URL: http://sunsite.unc.edu/newhome.html] SunSITE Japan at Science University - Tokyo (sunsite.sut.ac.jp) [URL: http://sunsite.sut.ac.jp/homepage.html] SunSITE North Europe at Imperial College - London (src.doc.ic.ac.uk) [URL: http://src.doc.ic.ac.uk/public] Sun SITE Russia at Moscow State University - Moscow [URL: "http://sunsite.cs.msu.su/"] Sun SITE Singapore at National University of Singapore - Singapore [URL: "http://sunsite.nus.sg/"] Sun SITE South Africa at University of the Witwatersrand - Johannesburg [URL: "http://sunsite.wits.ac.za/"] Solaris at UMBC - Solaris tips & tricks by Vijay Gill [URL: http://umbc8.umbc.edu/~vijay/solaris/solaris.html] ftp.x.org - the master X11 site camus.quintus.com:/pub/GNU - GNU binaries ftp.uu.net - UuNet communication archives (mirrors abovementioned GNU binaries in systems/gnu/solaris2.3) [URL: ftp://ftp.uu.net/systems/gnu/solaris2.3] OpCom. (opcom.sun.ca) - run by Sun Microsystems' OpCom group - lots of stuff. Here is some of the stuff that's online: pub/AMToolkit.* - the Administration Migration (4.1.x to Solaris 2) Toolkit pub/binaries - binaries/man pages for Solaris 2.0 native binaries. pub/newsletter - issues of the monthly OpCom newsletter. pub/docs - assorted documentation, papers, and other information. - all of the RFCs pub/drivers - information related to device driver writing under under Solaris 2.0 as well as a skeleton SCSI driver. ls-lR.Z - compressed recursive listing of files available on the server. pub/tars - compressed tars. pub/tmp - place for uploading things to the server. pub/R5 - the unadultered MIT x11r5 distribution. pub/x11r5 - port of X11r5 to Solaris 2.0, binaries, libraries and headers. A compressed tar of this tree can be found in tars. prep.ai.mit.edu and the GNU mirrors pub/gnu/sparc-sun-solaris2 - recent gcc binaries for SPARC pub/gnu/i486-sun-solaris2 - recent gcc binaries for i486 ftp.fwi.uva.nl pub/solaris - where the Solaris FAQ is kept, including an html version. Accompanied by versions of the wabi1.0 FAQ and x86 hw-config as send out by Sun's autoreply daemons. pub/solaris/auto-install - fully automated auto-install scripts, including an explanation of exactly what a machine needs when booting the installation, automated patch installation and even post-install updates from your install tree, which gives you an easy way to keep all your Solaris machines in sync. 2.5) What other FAQ's do I need to know about? All of them :-). But in particular you should see these FAQ's: 1) Sun Computer Administration Frequently Asked Questions [URL: "http://aurora.latech.edu:80/sunadminfaq.html"] 2) The "Solaris 2 Porting FAQ" [URL: http://www.cis.ohio-state.edu/hypertext/faq/usenet/Solaris2/porting-FAQ/faq.html] 3) comp.windows.open-look - Anything related to OpenWindows or the OPEN LOOK Graphical User Interface. 4) The Sun-Managers mailing list (see below) has its own FAQ, maintained by John DiMarco . FTP from ra.mcs.anl.gov in the sun-managers directory. 5) See also the "Solaris SW list. Monthly Post" above and the "whatlist" file. 2.6) What mailing lists should I get? First, read all the USENET newsgroups with "sun" in their name :-) 1) The Florida SunFlash is a "closed" mailing list for Sun owners. It contains mostly press releases from Sun and third-party vendors. This list contains information on conferences such as the Solaris Developer's Conference as well. It is normally distributed regionally - to find out about a mail point in your area, or for other information send mail to info-sunflash@Sun.COM. Subscription requests should be sent to sunflash-request@Sun.COM. Archives are on solar.nova.edu, ftp.uu.net, sunsite.unc.edu, src.doc.ic.ac.uk and ftp.adelaide.edu.au 2) The Sun Managers list is an unmoderated mailing list for *emergency-only* requests. Subscribe and listen for a while, and read the regularly-posted Policy statement BEFORE sending mail to it, and to get a feel for what kinds of traffic it carries. Write to sun-managers-request@eecs.nwu.edu. 2.7) What books should I read? O'Reilly & Associates specializes in UNIX books. Their "UNIX [URL: http://www.ora.com] In A Nutshell" has been updated for SVR4 and Solaris 2.0. Get their catalog by calling 800-998-9938 (1-707-829-0515) 7AM to 5PM PST. SunSoft Press carries books specific to Solaris 2. Look for the inset with your End User Media Kit that lists the most relevant ones. Prentice-Hall has reprints of much of the AT&T documentation. I'm not sure how much of this you need - a lot of the same material is in the Answerbook (see above). 2.8) What hardware is supported by Solaris 2.x for Intel? The complete and often updated list Solaris x86 hardware options can be obtained by sending an email message without subject/body to: x86hcl@sun.com (ascii) x86hcl.ps@sun.com (postscript) or x86-hwconfig@Cypress.West.Sun.Com This address currently sends out info on Solaris 2.4. 2.9) What is Wabi? Wabi is Sun's new MS-Windows-under-unix emulator. The Wabi faqs can be obtained by sending an empty message to: wabi1.0-questions@East.Sun.com wabi1.1-questions@East.Sun.com The list of current Wabi (and future :-) apps can be obtained by mailing: wabi1.0-apps@East.Sun.COM wabi1.1-apps@East.Sun.COM wabi2.0-apps@East.Sun.COM Applications that execute a lot of X86 code, run fastest on Solaris 2.x_86, as no x86 emulation needs to be done. Applications that are more windows intensive will run better on machines with faster graphics hardware. The currently shipping version of Wabi is Wabi 2.0. Wabi will not be made available for SunOS 4.1.x. 3. SYSTEM ADMINISTRATION 3.1) How much disk space do I need to install Solaris 2? A full install of 2.2 is supposed to be 164 MB, but that doesn't include swap. Here is a net exchange between Casper Dik and Gil Tene: In article <1993Apr2.083549.19177@fwi.uva.nl>, Casper writes: |> >How much disc space does SOLARIS take up ? That is should we buy a |> >424MB disc or get a 1Gb disc to put it on :-) |> |> Solaris 2.x takes about as much diskspace as SunOS 4.x: |> |> Partition/Slice Solaris SunOS |> / 10MB 8MB |> /usr 78MB 90MB |> /var 10MB 10MB |> /usr/openwin 83MB 83MB |> Gil replies: On my system, with a full Solaris installation (EVERYTHING selected) + gnu's binary stuff for solaris (off of the Catalyst CD) installed in /opt I see a similar situation to the above plus : 16852 /opt/SUNWabe 19 /opt/SUNWcg12 7968 /opt/SUNWdiag 721 /opt/SUNWgt 7740 /opt/SUNWits 14609 /opt/cygnus-sol2-1.0 (output from "du -k -s /du/*") - SUNWabe is the end user answerbook stuff. (vi, mail, Deskset tools etc, etc) - SUNWcg12 is (obviously) cg12 support. - SUNWdiag is obvious too. - SUNWgt is support for gt boards. - SUNWits is the xgl3.0 library (it has libPEX5.so.1 in there too). - cygnus-sol2-1.0 is the gcc2.0+tools stuff. I have gcc2.3.3 on another partition and that takes about the same space as 2.0 does. Another important note : The full Solaris 2.1 answerbook takes up 164MB on disk. I highly recommend installing it and not using it off the CDROM drive. It's much more usable (faster) this way. And it always stays around -- even when you have something else in the CDROm drive. 3.2) How can I convert all my local changes that I've made over the years into their corresponding forms on Solaris 2? 1) Do it by hand. You did document every single change and check it into RCS, didn't you? 2) Automate it, using the AMToolkit (Administration Migration Toolkit) from the OpCom FTP server (q.v.)! 3.3) What are "packages"? A SVR4 mechanism for "standardizing" the installation of optional software. Most vendors are expected to use this format for distributing add-on software for Solaris 2.x. Packages can be installed/deinstalled with pkgadd/pkgrm which are standard SVR4 items, or with swm (CRT) or swmtool (GUI-based) which are provided only in Solaris 2. Note that the "pkg" system keeps lots of files in /var/sadm/install, and in particular the file "contents", which is hundreds of KB, and that there are two copies of it while pkgadd is running, so you needs lots of free space where /var is, typically the root. This file must be kept around if you want, for example, to use pkgrm to remove a package, or pkgchk to verify months later that all of a a package's files are still intact. Summary of pkg* commands: pkginfo - test for presents of package. pkgadd -d //Solaris_2.3 - add missing packages pkgrm - remove packages. pkgchk -q - test for existence of package pkgchk [pkg] - check installed packages for integrity. 3.4) Why can't I write in /home? This is a common one! SunOS is delivered with the "automounter" enabled. The automounter is designed for NFS sites, to simplify maintenance of the list of filesystems that need mounting. However it is a burden for standalone sites. The automounter takes over /home and in effect becomes the NFS server for it, so it no longer behaves like a normal directory. This is normally a Good Thing as it simplifies administration if everybody's home directory is /home/. To kill it off for standalone or small networks, you can comment out the three lines in /etc/init.d/nfs.client that start "if" (from the if to the fi!!), and reboot (Solaris 2.2) or remove the file /etc/rc2.d/S73autofs (Solaris 2.3). You can always relink that file with /etc/init.d/autofs if you change your mind. To learn about it, read the O'Reilly book "Managing NFS and NIS", or ftp the white paper 'The Art of Automounting". from sunsite.unc.edu in the directory /pub/sun-info/white-papers. 3.5) Why can't I access CDs or floppies? Solaris 2.2 introduces a new scheme for automatically mounting removable media. It consists of a program "vold" (volume daemon) which sits around watching for insertions of floppies and CD's, handles ejects, talks to the file manager, and invokes a second program called "rmmount" (removable media mounter) to mount the disk. Note that on most SPARCstations, you must run "volcheck" whenever you insert a floppy, as the floppy hardware doesn't tell SunOS that a floppy was inserted. Advantages of this scheme: - no longer need root; users can mount and unmount at will. - can do neat tricks like automagically start "workman" or other Audio CD player when audio CD inserted. - extensible - developers can write their own actions Drawbacks: - can no longer access /dev/rfd0 to get at floppy; must use longer name like /vol/dev/rdsk/floppy0 - similarly, CD's get mounted on /cdrom/VOLNAME/SLICE, e.g., /cdrom/solaris_2_2/s0 is slice 0 of the Solaris 2 CD (nice that it does mount all the partitions, though!). To read or write a non-filesystem floppy (tar, cpio, etc), put in the diskette and run "volcheck" from the commandline or click "Check for Floppy" in the filemgr to get it noticed; then access /vol/dev/rfd0/unlabeled (e.g. "tar tvf /vol/dev/rfd0/unlabeled"). [Solaris 2.3: /vol/dev/rdiskette0/unlabeled, or /vol/dev/aliases/floppy0.] If you want the old behavior, it's been suggested that you can comment out the vold startup in /etc/init.d/volmgt and then reboot; an easier way is # /etc/init.d/volmgt stop. 3.6) Why are there no passwords in /etc/passwd? System V Release 4 includes a feature called "shadow passwords". The encrypted passwords are moved out into a shadow password file (called /etc/shadow in this release) that is NOT publicly readable. The passwd file has always been readable so that, for example, ls -l could figure out who owns what. But having the passwd encryptions readable is a security risk (they can't be decrypted but the bad guy can encrypt common words and names &c and compare them with the encryptions). The Shadow Password feature is mostly transparent, but if you do any passwd hacking you have to know about it! And DO make sure that /etc/shadow is not publicly readable! 3.7) Why can't I rlogin/telnet in as root? >... when I try to rlogin as root ... >it gives me the message "Not on system console >Connection closed.". What have I left out? Solaris 2 comes out of the box a heck of a lot more secure than Solaris 1. There is no '+' in the hosts.equiv. root logins are not allowed anywhere except the console. All accounts require passwords. In order to allow root logins over the net, you need to edit the /etc/default/login file and comment out or otherwise change the CONSOLE= line. /etc/hosts.equiv is still supported, but there is no default. This file's CONSOLE entry can actually be used in a variety of ways: 1) CONSOLE=/dev/console (default) - direct root logins only on console 2) CONSOLE=/dev/ttya - direct root logins only on /dev/ttya 3) CONSOLE= - direct root logins disallowed everywhere 4) #CONSOLE (or delete the line) - root logins allowed everywhere 3.8) How can I have a user without a password? There are basically two ways to achieve this: Edit /etc/default/login and comment out PASSREQ=YES or change it to PASSREQ=NO. The second way is to give a particular use no password with the following entry in /etc/shadow: user::9092:9999:9999:::: 3.9) How can I set up anonymous FTP? If you need help, ftp the file "solaris2.ftpsetup" from ftp.cs.toronto.edu:/pub/darwin/solaris2. ftpd(1M) is nearly complete when it comes to setting up anonymous ftp. It only leaves out /etc/nsswitch.conf. [S2.3] Additionally, you must make sure that the filesystem ~ftp resides on is not mounted with the nosuid option. 3.10) How can I print from a Solaris 2 (or any System V Release 4) system to a SunOS4.x (or any other BSD) system? Hmmm, the lp system is totally different than what you're used to. The System V Line Printer System is a lot more, well, flexible. A cynic might say "complicated". Here's a very quick guide -- see the man pages for each of these commands for the details. Let's say your Solaris2 workstation is called "sol" and the 4.1.x server is called "bertha" and you want the printer name to be "printer" (imaginative, eh?). sol# lpsystem -t bsd bertha # says bertha is a bsd system sol# lpadmin -p printer -s bertha # creates "printer" on "sol" # to be printed on "bertha" sol# accept printer # allow queuing sol# enable printer # allow printing sol# lpstat -t # check the status Finally, if that's your only printer, make it the default: sol# lpadmin -d printer On some systems you may have to turn on the port monitor. I did that. Why does it now complain about invalid content types? I said it was complicated! For better or for worse, you need to know about printer content types. See the man page for "lpadmin". To get transparent mode, try this: lpadmin -I any -p printer Isn't there any easier way? The GUI-based Admintool has a Printer Manager that is supposed to be able to do all this and more. Try it; Sun hopes you'll like it. Now my jobs print but they stay in the queue after!? It's a known bug, and probably get fixed in 2.3. There's also a number of lpsched patches out for Solaris: 101025-xx (2.2) and 101317-xx (2.3). Make sure you install those. 3.11) What if I'd rather use the BSD line printer system? The 4.3BSD-reno lpr system for Solaris 2, file lpr-sol2-p3.tar.gz or lpr-sol2-p3.tar.Z is available from the following FTP site: get ftp.nus.sg:/pub/NUS/ISCS/misc/lpr-sol2-p3.tar.gz And don't despair. Someday the System V print spooler will be replaced by something new. (See the Solaris 2.3/2.4 Open Issues & Late Breaking News For System Administrators) 3.12) What happened to /dev/MAKEDEV? How do I add devices? Device drivers are linked in dynamically. When you add new devices, just shutdown the system and do boot -r # use drive spec if not default disk to *r*ebuild the /devices and /dev directories. If you're just adding a SCSI disk, you don't need to reboot. Run the following script (as root): #!/bin/sh # # add-disk # # Runs the commands to make Solaris locate a new disk that # has been plugged in after the system was booted. # /usr/sbin/drvconfig /usr/sbin/devlinks /usr/sbin/disks # or /usr/sbin/tapes for tapes /usr/ucb/ucblinks # Compatibility links exit 0 Note that this only works if you already have at least one SCSI disk on the system. (This is because the above just makes symbolic links and things, it does not load up the SCSI driver kernel modules, etc.) *3.13) Why isn't my tape/cd player or new disk/device recognized? Devices must be turned on and present when you configure the system. After adding devices you must boot -r with all the devices turned on. See also 3.12 3.14) What happened to /etc/rc and /etc/rc.local? They're now fragmented into 12 million tiny little pieces. Look in the following files to get oriented: /etc/inittab - starting point for init /sbin/rcS, /etc/rcS.d/* - booting stuff /sbin/rc2, /etc/rc2.d/*, /sbin/rc3, /etc/rc3.d/* - stuff for multi-user startup. Note that all files in /etc/rc*.d/* are hardlinked from /etc/init.d (with better names), so you should grep in there. There are many "run levels" to the System V init; the run level 3 is normally used for "multi user with networking." I can't understand that stuff; can't I have /etc/rc.local back? I just want to keep all my local changes in one place. No. You can never have rc.local back the way it was. But then, it never really *was* purely a "local" rc file. To have a real "local" rc file with just your changes in it, copy this file into /etc/init.d/rc.local, and ln it to /etc/rc3.d/S99rc.local. Put your startup stuff in the "start" section. ----- Cut here ----- #!/sbin/sh # /etc/init.d/rc.local - to be linked into /etc/rc3.d as # S99rc.local -- a place to hang local startup stuff. # started after everything else when going multi-user. # Ian Darwin, Toronto, November, 1992 # As with all system changes, use at own risk! case "$1" in 'start') echo "Starting local services...\c" if [ -f /usr/sbin/mydaemon ]; then /usr/sbin/mydaemon 1>/dev/console 2>&1 fi echo "" ;; 'stop') echo "$0: Not stopping any services." ;; *) echo "Usage: $0 { start | stop }" ;; esac ------ End of Cut Here ----- 3.15) Speaking of that, why are there two versions of shutdown? SVR4 (hence SunOS 5.x) tries to make everybody happy. The traditional (slow) System V "shutdown" runs all the rc?.d/* shell scripts with "stop" as the argument; many of them run ps(!) to look for processes to kill. The UCB "shutdown" tells init to kill all non-single-user processes, which is about two orders of magnitude faster. Unfortunately, the UCB version does everything it should *except* actually halt or reboot in SunOS5.1 (and some other SVR4 implementations). This is fixed in Solaris 2.3. If you run a database (like oracle) or INN, you should install a special /etc/rc?.d/K* script and make sure you always shutdown the long way. 3.16) When will somebody publish a package of the BSD (4.3BSD Net2) "init", "getty", and "rc/rc.local", so we can go back to life in the good old days? Getty should be easy and was reportedly done at a number of sites. The port monitor isn't everyones favorite. But given that you can do much more with the SVR4 init, why would you want to change back? It would be much more trouble than it's worth. 3.17) What has happened to getty? What is pmadm and how do you use it? I was hoping you wouldn't ask. PMadm stands for Port Monitor Admin, and it's part of a ridiculously complicated bit of software over-engineering that is destined to make everybody an expert. Best advice for workstations: don't touch it! It works out of the box. For servers, you'll have to read the manual. This should be in admintool in Solaris2.3. For now, here are some basic instructions from Davy Curry. "Not guaranteed, but they worked for me." To add a terminal to a Solaris system: 1. Do a "pmadm -l" to see what's running. The serial ports on the CPU board are probably already being monitored by "zsmon". PMTAG PMTYPE SVCTAG FLGS ID zsmon ttymon ttya u root \ /dev/term/a I - /usr/bin/login - 9600 ldterm,ttcompat ttya \ login: - tvi925 y # 2. If the port you want is not being monitored, you need to create a new port monitor with the command sacadm -a -p PMTAG -t ttymon -c /usr/lib/saf/ttymon -v VERSION where PMTAG is the name of the port monitor, e.g. "zsmon" or "alm1mon", and VERSION is the output of "ttyadm -V". 3. If the port you want is already being monitored, and you want to change something, you need to delete the current instance of the port monitor. To do this, use the command pmadm -r -p PMTAG -s SVCTAG where PMTAG and SVCTAG are as given in the output from "pmadm -l". Note that if the "I" is present in the field (as it is above), you need to get rid of it. 4. Now, to create a specific instance of ttymon for a port, issue the command: pmadm -a -p PMTAG -s SVCTAG -i root -fu -v 1 -m \ "`ttyadm -m ldterm,ttcompat -p 'PROMPT' -S YORN -T TERMTYPE \ -d DEVICE -l TTYID -s /usr/bin/login`" Note the assorted quotes; Bourne shell (sh) and Korn (ksh) users leave off the second backslash! In the above: PMTAG is the port monitor name you made with "sacadm", e.g. "zsmon". SVCTAG is the service tag, which can be the name of the port, e.g., "ttya" or "tty21". PROMPT is the prompt you want to print, e.g. "login: ". YORN is "y" to turn software carrier on (you want this for directly connected terminals" and "n" to leave it off (you want this for modems). TERMTYPE is the value you want in $TERM. DEVICE is the name of the device, e.g. "/dev/term/a" or "/dev/term/21". TTYID is the line you want from /etc/ttydefs that sets the baud rate and stuff. I suggest you use one of the "contty" ones for directly connected terminals. 5. To disable ("turn off") a terminal, run pmadm -d -p PMTAG -s SVCTAG To enable ("turn on") a terminal, run pmadm -e -p PMTAG -s SVCTAG Ports are enabled by default when you "create" them as above. For more details, see the article: SUMMARY: Solaris modem/terminal how-to: Rev xx.xx.xx posted periodically to comp.unix.solaris by celeste@xs.com (Celeste Stokely). *3.18) How do I get the screen to blank when nobody's using it? Under 4.1.x you invoke screenblank in /etc/rc.local, but there's no screenblank in Solaris 2.1. Sun recommends that you have everybody put `xset s on' in their .xinitrc, but this may be hard to police, and in any event it won't work when nobody is logged in. The simplest workaround is to copy /usr/bin/screenblank from 4.1.x and run it in binary compatibility mode. See ``What happened to /etc/rc and /etc/rc.local?'' for how to invoke it. Another possibility is to use xdm, but you'll have to use your own, since the xdm shipped with Solaris 2.1 doesn't work. The 4.1.x screenblank didn't work for us; We use Jef Poskanzer's freeware screenblank. His version is available from ftp.netcom.com:/pub/jef/screenblank_21dec93.tar.Z. Because of a bug in Solaris 2.3, you'll need to specify -DHAVE_POLL=0 when compiling this version. Solaris 2.4 comes with power management software for those systems with a soft-switchable power supply. That may suit your needs better than screenblank. The powermanagement software can be used to switch off just the screen, by putting thw folliwng in the power.conf file: # Name Theshold(s) Logical Dependent(s) /dev/kbd 600 /dev/mouse 600 /dev/fb 0 0 /dev/kbd /dev/mouse Make sure you comment out the "autoshutdown" line if you want to keep your machine running. 3.19) And what about screendump, screenload and clear_colormap? You can FTP Jef's screenload, screendump, etc., if you need that functionality, and for free you get a pixrect (clone) library. Get one of these: ftp.netcom.com:/pub/jef/raster-pixrect_30dec93.tar.Z ee.lbl.gov:/raster-pixrect_30dec93.tar.Z The 4.1.x versions of these programs will not run under Solaris 2.2 or later. The pixrect BCP library is no longer supported. 3.20) Where did etherfind go? There is a replacement for etherfind, but it has changed name; in fact it's a whole new program. It IS better. To find it, though, you would have to realize that network snooping is not really Ethernet-specific. To end the suspense :-), here it is: % man -k snoop snoop snoop (1m) - capture network packets and inspect them % It works differently - it has an immediate mode, a capture-to-disk mode, and a playback-from-disk mode. Read the man page for details. 3.21) Can I run SunOS4.1.x on my SPARC Classic, LX, SS5, SS20, Voyager, SS1000, SC2000? The Classic, LX and the single processor models of the SS20 are still supported under some version of SunOS 4.1.x. A lot of people wanted these machines but only if they ran SunOS 4.1.x. When the Classic/LX came out, clone manufacturers were able to provide SunOS 4.1.x with it, Sun came out with SunOS 4.1.3C some time later. The Classic, LX and SS5 and SS20 are supported in the most recent Solaris 1.x release, SunOS 4.1.3_U1 rev B (Solaris 1.1.1B). The Classic and LX are supported since 4.1.3C (release for LX & Classic only), the SS20/SS5 since release 4.1.3_U1 rev B (Solaris 1.1.1B). Note that none of these OS versions support SuperSPARC MP or any of the new graphics hardware (ZX, SX, S24). The Voyager is not supported under SunOS 4.1.x, too many new device drivers have been added plus the suspend resume feature. The XDbus machines SS1000/SC2000 are also not supported under SunOS 4.1.x. Support for the kernel architecture and XDBus is missing in 4.x. 3.22) The "find" program complains that my root directory doesn't exist? Yes! Actually, messages like find : cannot open /: No such file or directory. are due to a bug in the tree walking function (nftw(3)). Fixed in 2.4 and in the 2.3 kernel jumbo patch 101318 (-41 or later) 3.23) I'm having troubles with high-speed input on the Sparc serial ports. What should I do? Try using UUCP. The Solaris 2.x sparc serial driver has trouble receiving data at or above 9600 bps. Symptoms include sluggish response, `NOTICE: zs0: silo overflow' console messages, sending spurious control-Gs to the serial port, and applications that cannot be killed even with `kill -9'. This problem surfaces in many applications, including Kermit and tip. UUCP seems immune, though, because its protocol throttles input sufficiently. 3.24) How do I make ksh or csh be the login shell for root? Root's shell is /sbin/sh, which is statically linked. Don't just insert a 'c' before "sh" as previously, as that would look for /sbin/csh, which doesn't exist. Don't just change it to /bin/csh, since that's really /usr/bin/csh, which is dynamically linked, because: a) /usr may not be mounted initially, and then you're in deep (the shared libraries are in /usr!), and b) There is code in the startup scripts that assumes that everything critical is in /etc/lib, not /usr/lib. Approach with caution! Safer bet - have an alternate root account, like "rootcsh", with uid 0, and /bin/csh as its shell. Put it after root's entry in the passwd file. Only drawback: you now have to remember to change all of root's passwords at the same time. Third bet - in root's .profile, check if /usr is mounted and, if so, exec /bin/ksh or whatever. 3.25) What is this message: "automount: No network locking on host, contact administrator to install server change."? The other machine (an NFS server) is running 4.1.x and needs a patch from Sun to update its network lock daemon (lockd). If you don't install the patch on the server, file locking will not work on files mounted from "thathost". The lockd jumbo patch fixes a bunch of other lock manager problems, so it may be a Good Thing To Get; however, it may also cause the machine on which the patch is installed to have trouble talking to servers with no patch or older patches, so Be Warned. The lockd patches are: 100075 (now 4.1.3 only), 101817 (4.1-4.1.2) and 101784 (4.1.3_U1), 100518 (for Online: Disksuite). 3.26) How do I make Solaris2 use my Toshiba MK538FB and other older SCSI disks? Append this line to /etc/system and reboot: set scsi_options & ~0x80 This turns off Command Queuing, which upsets the Toshiba and some other drives. 3.27) How do I make Solaris2 use my old ADAPTEC ACB-4000 and Emulex MD-21 diskcontrollers? As with any hardware addition, first try the obvious (boot -r after installing and power-cycling everything). The adaptec is no longer supported; man -s7 sd no longer even lists it! So I guess they go over the cliff. Either that, or take the drives out and put them on a PC, where ST506 MFM drives are still supported. The MD21 should work, though some people report that SCSI doesn't work in 4/260 boxes (bug-id #11187521). 3.28) Why are there so many patches for Solaris 2.x? Solaris 2.x releases are essentially frozen TWO months before their general release date. During the early access/beta test period bugs are found both in the beta and in the previous release. That's why at the moment a new release comes out a number of patches is ready. Some of those are on the Solaris 2.x CD. Others were released almost at the same time as 2.x, or even before 2.x becomes generally available. Some bugs are found in the previous release that can't be fixed in the time for the next release. And bugs get added to new code. 3.29) What are the ``mandatory'' patches I keep hearing about? The mandatory patches weren't mandatory, so they've been relabeled. They're now called ``recommended'' patches. The recommended patches are those patches Sun recommends for trouble free system operation. With those patches installed, your chances on trouble free operation are higher. That doesn't mean you will run into trouble without them. These recommended patches can be anonymously ftp'ed from official Sun ftp sites. 3.30) Where do I get patches from? ugle.unit.no:/pub/unix/sun-fixes SunSites (carry recommended and security patches): sunsite.unc.edu:/pub/sun-info/sun-patches sunsite.sut.ac.jp:/pub/sun-info/sun-us/sun-patches sunsite.doc.ic.ac.uk:/sun/sunsite-sun-info/sun-patches Sunsolve: sunsolve1.sun.com:/pub/patches http://sunsolve1.sun.com/ This Sun's own site, it has the recommended patches up for anonymous ftp, packaged as one huge 2.x_Recommended.tar.Z file and as individual patches. Starting with SunSolve CD 2.1.2 ALL Sun patches are shipped on the SunSolve CD. Contract customers can get all patches by ftp from Sunsolve or via e-mail and query one of the online sunsolve-databases on the internet. 3.31) Where can I obtain Solaris 2/x86 driver updates? The Solaris x86 driver updates can be obtained by anonymous ftp from: ftp.uu.net:/vendor/sun/sun-doc/x-86-driver sunsite.unc.edu:/pub/sun-info/solaris-x86/sunsoft-drivers 3.32) Why does installing patches take so much space in /var/sadm? All the files that are replaced by a patch are stored under /var/sadm/patch//save so the patch can be backed out safely. You can remove the /save directory provided you also remove the /.oldfilessaved file. Alternatively, you can install a patch w/o saving the old files by using the "-d" flag to installpatch. 3.33) Do I need to back out previous versions of a patch? No, unless otherwise stated in the patch README. If the previous patch installation saved the old files, you may want to reclaim that space. Patches can be backed out with: /var/sadm/patch//backoutpatch Backoutpatch can take an awful long time, especially when the patch contained a lot of files. 3.34) How can I have more than 48 pseudo-ttys? Edit /etc/system and add the following line: * System V pseudo terminals set pt_cnt = * BSD pseudo ttys set npty = Halt the system and boot -r. 3.35) How can I get ps to print %MEM and %CPU? Prior to Solaris 2.4, the OS didn't do the bookkeeping necessary to obtain these values. In Solaris 2.4 the code was added to kernel and /usr/ucb/ps can now show these values. 3.36) How can I get the DOS and Unix clock to agree on Solaris/x86? After installation, run the command /usr/sbin/rtc -z $TZ, where $TZ is your timezone. The default root crontab runs /usr/sbin/rtc -c once everyday. That way your clock will give the proper time whether you boot Solaris or DOS/Windows. 3.37) Hoe can I increase the number of filedescriptors per process? In 2.3 in earlier this requires poking the kernel. In Solaris 2.4, this can be accomplished by adding the following lines to /etc/system: * set hard limit on filedescriptors set rlim_fd_max = 4096 * set soft limit on filedescriptors set rlim_fd_cur = 1024 3.38) Can I install both SunOS and Solaris on the same machine, and choose between them at boot time? Yes, that is possible. All partitions other than the system partitions (typically /, /usr, /var and /opt) can be shared by the two OSes. All partitions, including the system partitions, can be mounted and accessed by either OS. The easiest way to set this up is to do separate suninstalls on two different disks. Then just choose the appropriate disk at boot time with the PROM's "boot" command. Setting up both OSes on one disk is a little harder, but not much. You need to partition the disk to allow for both OSes. Almost any partition layout is possible, but one common setup might be: a: / for Solaris 2 b: swap (shared) c: The usual (whole disk) d: / for Solaris 1 e: /usr for Solaris 1 g: /usr for Solaris 2 Again, it's most reliable to use suninstall to do the installations. If for some reason you choose not to use suninstall, make sure you run installboot for both bootable partitions. With this setup, you choose between the two OSes in the PROM's "boot" command as follows: To boot Solaris 2: boot To boot Solaris 1: boot disk:d NOTE: In boot PROM versions <= 2.5, the "disk:d" syntax is not supported, and the PROM cannot boot from root partitions that begin or end beyond 1GB. 3.39) How do I disable banner pages under Solaris? As root, go to directory /etc/lp/interfaces. Edit the file that corresponds to the printer name. Change the line that reads 'nobanner="no"' to 'nobanner="yes"'. 4. NETWORKING 4.1) How do I use DNS w/o using NIS or NIS+? Under SunOS 4.1 it was next to impossible to run DNS name resolution without either a kludge fix or the NIS (V2 I guess). Under Solaris 2.1 it is incredibly simple, but you must ignore what the manual (SunOS 5.1 Administering NIS+ and DNS) says (the manual is fixed in Solaris 2.2). All that is required to make a non-NIS host use the DNS for name resolution is to change the host: line in the /etc/nsswitch.conf file to the following: hosts: files dns (i.e., when looking for hosts, look in /etc/hosts first, if not found there, try DNS, if still not found then give up) and set up a correct version of /etc/resolv.conf to tell the resolver routines (like gethostbyname) how to contact the DNS nameserver. You must have the names of machines which are somehow contacted during boot in the files in /etc and files must appear first in the hosts: line, otherwise the machine will hang during boot (at least ours did). Make sure that /etc/netconfig is using switch.so. (It does from the factory.) 4.2) Speaking of nsswitch.conf, what is it? An idea whose time has come (it came to Ultrix a few years ago). You can control which of the "resolver" services are read from NIS (formerly YP), which from NIS+, which from the files in /etc, and which are from DNS (but only "hosts" can come from DNS). A common example would be: hosts: nis files which means ask NIS for host info and, if it's not found, try the local machine's host table as a fall back. Advice: if you're not using NIS or DNS, SunInstall probably put the right version in. If you are, ensure that hosts and passwd come from the network. However, many of the other services seldom if ever change. When was that last time *you* added a line in /etc/protocols? If your workstation has a local disk, it may be better to have programs on your machine look up these services locally, so use "files". Terminology: Sun worried over the term "resolver", which technically means any "get info" routine (getpwent(3), gethostbyname(3), etc), but is also specifically attached to the DNS resolver. Therefore they used the term "source" to mean the things after the colon (files/DNS/NIS/NIS+) and "database" to mean the thing before the colon (passwd/group/hosts/services/netgroup etc). A complete discussion can be found in nsswitch.conf(4). 4.3) What does [NOTFOUND=return] in nsswitch.conf mean? Type "man nsswitch.conf" for more info. There is too much detail to summarize here. Briefly, [NOTFOUND=return] means that the name service whose entry it *follows* should be considered authoritative (so that if it's up and it says such a name doesn't exist, believe it and return instead of continuing to hunt for an answer). *4.4) Can I run a nis/yp server under Solaris 2.x? Yes, you need the Solaris network transition kit available from Sun. However, his kit does not include the securenets patch. Patch 101363-08 supposedly fixes this. This patch includes *all* of the nskit, so there's no need to get more than just the patch. 4.5) Can I run NIS+ under Solaris 1 (SunOS 4.1.x) Sort of, with the NIS+ server implementation for Solaris 1.x that comes on the Solaris 2.x CD. This is a server side only implementation and requires NIS+ to run in YP compatibility mode. 4.6) With NIS+ how do I find out which machine a client is bound to? Nis+ clients do not hard bind to nis+ servers in the same way that nis clients bind to nis servers. The clients have a list of nis+ servers within the cold-start file. When they need to do a lookup they do a type of broadcast called a "manycast" and talk to the first server that responds. This way they can be sure to use the lightest loaded server for the request. 4.7) Ypcat doesn't work on the netgroup table on a NIS+ server, why? Yes, that is a known problem. The only operations allowed from a NIS client side on the netgroup table are the ypmatches, but not ypcat (i.e. no support for yp_first(), yp_next() or yp_all() calls). The netgroup table is kind of unique in this. The reason for this is that the netgroup table format changed quite significantly in NIS+ and the NIS+ server would take a big performance hit in converting the netgroups table to YP (key-value) format. 4.8) Why is rpc.nisd such a memory pig according to ps? The good news is that it's not memory OR swap space you're being shown by 'ps'. Instead it's showing you the process ADDRESS space which includes 256 MB of address space reserved for the NIS+ transaction log. Given the cost of moving things around in memory and the fact that we have 4 GB of address space to play with it, this is a good idea. You've just got to stop thinking small. THINK BIG. It's only 1/16th of the total process address space being used. And if you ever exceed the 256 MB size of the transaction log you're doing something VERY wrong. 4.9) Why is Xsun such a memory pig, especially on the SX? Ps counts the mappings for the framebuffer as memory. Especially on the SX where a number of different mappings of the device address space is used to optimize access this can cause large amounts of memory, but not physical memory, to be mapped and shown by ps. 4.10) How do I tell my NIS+ server to service DNS requests from 4.x clients? Start rpc.nisd with the -B switch. This can be done editing the server's /etc/init.d/rpc file and change 'EMULYP="-Y"' to EMULYP="-Y -B" +4.11) How can I have multiple addresses per interface? Solaris 2.x provides an undocumented feature in ifcofnig that allows having more than one IP address per interfaces. Syntax: ifconfig IF:N ip-address up where "IF" is an interface (e.g., le0) and N is a number between 1 and 255. Removing the pseudo interface and associated address is done with "ifconfig IF:N 0.0.0.0 down". 5. TROUBLE SHOOTING 5.1) The Solaris 2.x application XX fails with a mysterious error condition. Try truss(1). truss -f -o file cmd args ... will put a trace of all system calls in "file". This often helps as a first step in diagnosing certain failure modes, such as insufficient permissions on file etc. 5.2) Why can't I run Answerbook on a standalone machine? This is a bug in openwindows. Using xhost + or starting openwin -noauth works around this problem. This is only recommended for stand-alone machines with no dial-in users. [ S 2.3 ] 5.3) Why can't I run filemgr, I get ``mknod: permission denied''? This is a symptom of a bug in filemgr in Solaris 2.3 Either apply patch #101514 or run the following commands at system start-up: mkdir /tmp/.removable chmod a+rwxt /tmp/.removable 5.4) Why do I get isinf undefined when linking with libdps? That's a bug in libdps. Sun compiles and links its software with its own compilers. The isinf() function is shipped with the SunPRO compilers, but not defined in any Solaris 2.x library. A workaround exists, and consists of adding the following to your program: #include int isinf(double x) { return !finite(x) && x==x; } 5.5) I can't get PPP to work between Solaris 2.3 and other platforms. The PPP shipped with Solaris 2.3 doesn't interoperate with other PPP implementations. Patch #101425 fixes this. 5.6) Using compat mode for passwd doesn't work in 2.3? You need patch #101448. 5.7) Why do I get __builtin_va_alist or __builtin_va_arg_incr undefined? You're using gcc without properly installing the gcc fixed include files. Or you ran fixincludes after installing gcc w/o moving the gcc supplied varargs.h and stdarg.h files out of the way and moving them back again later. This often happens when people install gcc from a binary distribution. If there's a tmp directory in gcc's include directory, fixincludes didn't complete. This can happen when you run fixincludes in the background w/o redirecting I/O. Another possible cause is using ``gcc -I/usr/include.'' 5.8) My machine hangs during the boot process. It seems related to ps. When the system boots, the first invocation of ps will try to recreate /tmp/ps_data. To this end ps scans the /dev tree. Under some circumstances, a loop exists in /dev and ps will run forever. Most of the time this loop is caused by the symbolic link /dev/bd.off. While this link usually points to /dev/term/b, it sometimes get truncated and points to /dev instead. Fix: rm -f /dev/bd.off; ln -s /dev/term/b /dev/bd.off Use truss(1) to determine whether this is real the cause of your problem. 5.9) Syslogd doesn't seem to log anything. Make sure you have /usr/ccs/bin/m4 installed. It's in package SUNWbtool. Other causes are bugs in Solaris 2.3 and various revisions of patches. E.g., syslogd is broken in all 101318 patches between level -42 and -50. It works again in 101318-54. 5.10) I get ``Invalid client credential'' when mounting filesystem on Solaris client from non-Sun fileserver. Some vendors still ship a version of RPC/NFS that allows at most 8 groups in the client credentials. Root on Solaris is by default in 10 groups. As a result, the Solaris 2.x mount command will send AUTH_UNIX credentials that are too big to cope with for the remote mount daemon resulting in the ``Invalid client credential'' error. Workaround: put root and all your users in 8 or less groups. NOTE: You must logout and login again for changes in the number of groups to take effect. (or exit root's shell and re-su) +5.11) After upgrade to 2.4, ls on NFS mounted directories hangs. In starting with Solaris 2.4, a kernel workaround to limit NFS readdir requests to 1024 bytes was disabled by default. This breaks interoperability with buggy old NFS implementations (such as SunOS 3.2, Ultrix and possibly NeXT) There are two workarounds. The first one works and is: mount all filesystems from such servers with rsize=1024. The second one, which requires a patch for bugid #1193696 is: Edit /etc/system and add: set nfs:nfs_shrinkreaddir = 1 and reboot. +5.12) After installing patch 101945-xx, I have NFS problems (ksh looping) Patch 101945-17 introduced an bug in the NFS client code that makes that programs using NFS locking will sometimes go in an interruptable read. (I.e., you can kill the program that hangs) Truss will show the program sleeping in read(2) while top will show it eating CPU. The ksh seems to have this quite a lot. There's also a lot of network traffic. Workaround: mount NFS filesystems with "noac", but this costs performance. 5.13) I messed up /etc/system, now I can't boot. Boot with -as. The kernel will ask you all sorts of questions, including the name of the system file. Use the previous /etc/system file or specify /dev/null. 5.14) The /etc/path_to_inst file is corrupted, I can't boot. Boot with -a and specify /dev/null as path_to_inst file. 5.15) TCP/IP connections time out too soon, especially on slow links. The tcp/ip abort interval in Solaris 2.x is too short, the default value is 2 minutes. The result is that when an ACK isn't received in *2* minutes, the connection is closed. This is most often seen by sendmail, which will log sendmail: SYSERR: collect: read timeout on connection from ... You can fix this by running following command which increases the timeout to 8 minutes (unit is millisec), which is the Solaris 2.4 (and patched 2.3 default) /usr/sbin/ndd -set /dev/tcp tcp_ip_abort_interval 480000 This command should be placed in a script rc2.d script. (See 3.14) (See 5.16 for another possible cause) *5.16) Solaris 2.x can't set up any TCP/IP connections to certain hosts. Solaris 2.x sets the don't fragment bit on all packets it send as part of MTU path discovery. The Solaris 2.x implementation is RFC compliant, but the MTU path discovery protocol will fail when there are broken routers in the path. Typical symptom is not being able to connect from a Solaris 2.x hosts but having no trouble from other hosts or being able to start a TCP/IP connection but not move any significant amount of data. /usr/sbin/ndd -set /dev/ip ip_path_mtu_discovery 0 (See also 5.15) Please note that Solaris 2.x will still send large packets over such links but without the don't fragment bit set. On a number of occasions, I've come accross links that don't properly handle such packets. They're not fragmented, they're dropped instead. So if the above fix doesn't work you can resort to the following drastic measure which negatively impacts network performance: /usr/sbin/ndd -set /dev/tcp tcp_mss_max 536 536 is the standard packet size that is guaranteed to work by virtue of the fact that most system will communicate outside the local net with packets that big. If the connection then starts to work, it's time to find the largest value that works. It's also worth mentioning that the "ip_path_mtu_discovery" needs to be applied at both sides of a connection to fully work, applied at one side it will only affect outgoing large packets. (I.e., downloads from the site will succeed but uploads from a other Solaris 2.x machine w/o the workarounf applied may still fail). The "tcp_mss_max" workaround need only be applied at one side. If you need the "tcp_mss_max" workaround for some sites, there a problem on the link between you and those sites. Get it fixed. 5.17) When reading mail on non-Solaris clients of a Solaris mail server, or with non-Solaris mail readers, some messages get split into multiple messages. Solaris 2.x uses the "Content-Length:" header to tell the MUAs where messages should be split. Unfortunately, no-one else understands this convention. Instead, the old convention, ``split on "From " lines'' is used most of the time. Those mail readers expect extra lines with "From" to be escaped with ">". Workaround: add "E" to the mailerflags of the local mailer. Edit /etc/mail/sendmail.cf on your Solaris machines, add E to F= on the line that reads: Mlocal, P=/bin/mail, F=flsSDFMmnP, S=10, R=20, A=mail -d $u so that it becomes: Mlocal, P=/bin/mail, F=EflsSDFMmnP, S=10, R=20, A=mail -d $u +5.18) Mailx/Mail often send reply to wrong user or show wrong sender. Mailx/Mail use UUCP from line to determine sender, it should use the From: header only. To achieve this you can use the undocumented "from" mail variable in your .mailrc: "set from". To make this the default behaviour, add "set from" to /etc/mail/mailx.rc. 5.19) One of my users can't login (one some machines). In the shadow table/file/map there is a field that indicates how long an account may be inactive before it is expired. On login, the entry in /var/adm/lastlog, the inactive expire time and the current date are compared. If the system determines that the user is expired, he will get "Login incorrect", indiscernible from a normal incorrect login. The fix is changing the user's shadow entry. 5.20) My clients with remote /var (/var/adm) partitions won't boot. Remote, but unshared filesystems, such as /, /var, /var/adm, etc should be mounted with the llock option. Solaris 2.x does this automatically for remote /, but not for remote /var or /var/adm. If you don't specify llock, the system will hang when it tries to do stuff to the *[wu]tmp files, early in the boot process. Workaround: Add the (undocumented) llock option to the mount options for /var and/or /var/adm. (It should be fixed in /etc/rcS.d/S70buildmnttab.sh) 5.21) Vacation doesn't work reliably in a mixed Solaris/SunOS environment. Vacation was moved from /usr/ucb (in SunOS 4.x) to /usr/bin. Unfortunately, the full pathname must be specified in your .forward. Workaround: add a link to /usr/ucb/vacation in /usr/bin on SunOS 4 machines, and add a link to /usr/bin/vacation in /usr/ucb on SunOS 5 machines. 5.22) I have a lot of processes. How do I get rid of them? In Solaris 2.3 (and presumably earlier) there is a bug in the pseudo tty modules that makes them hang in close. This causes processes to hang forever while exiting. Fix: Apply patch 101415-02 (for 2.3). 5.23) I get /dev/ptmx: No such device when logging in. You need to increase the number of pseudo ttys. If you also have a lot of processes, you may be hit by a bug in the OS. (See 5.22) 5.24) ld bails out with msync errors. You probably use a Cray as fileserver. It doesn't support all NFS operations ld want to perform. Install the folowing patch: 101409-04: SunOS 5.3: Jumbo linker patch [ Solaris 2.3 ] 5.25) su responds with "Sorry" and doesn't prompt for a password. Su won't run under a shell compiled under SunOS 4.1.x. Recompile your shell (tcsh/bash) under Solaris 2.x. *5.26) Why can't I install 2.4 from a non-Sun CD while I could do so wth 2.3? Several changes were made to the "sd" driver between 2.3 and 2.4. In particular, the code that resets the drive to the 512 blocksize is no longer called in the case of a data overrun. Accordingly, it is not currently possible to install 2.4 from a local non- Sun CDROM drive. Your best bet for the short term may be to either borrow a SunCD (locally or maybe from your Sun Rep) or to mount the CD remotely on a machine that is already up and running and can handle your non-Sun CD-ROM, and perform a network installation. This is not a problem for non-SPARC versions of Solaris 2.x CDROMs that have been modified to use a 512 byte blocksize by default will work fine. 5.27) ifconfig can't find my network interface Only network devices configured with an address at boot are visible to ifconfig (i.e., if /etc/hostname.IFN exists). To make a interface visible to ifconfig do: ifconfig ifN plumb 5.28) I have an application that compiled fine, but when I run it I get: fatal: libfoo.so.2: can't open file: errno=2 You need to add -R to the link command line. E.g.,: cc -L/usr/openwin/lib -R/usr/openwin/lib xprog.c -lX11 5.29) Motif programs dump core almost immediately. You must specify the motif library on the command line before other X libraries. WRONG: cc .... -lXt -lXm RIGHT: cc .... -lXm -lXt +5.30) cc complains that "language optional software package not installed" There is no C compiler included in Solaris 2.x. The /usr/ucb/cc script you are executing is a wrapper for the SunSoft C compiler which calls the native C compiler with the /usr/ucb includes and libraries. You need to get yourself a C compiler. Alternatively, you may have forgotten to put the proper link from /usr/ccs/bin/ucbcc to /opt/SUNWspro/SCxxxx/cc in place. See also 6.1. +5.31) thr_create and other thread functions always return -1 You must put -lthread on the link command line. If you also put -lc on the link command line, -lthread should go before -lc. +5.32) Solaris 2.4 seems to have a kernel memory leak. There are two possible causes for this kernel memory leak. There's a bug in the volume management device driver that when unloaded leaks memory: fix with patch 101907-05. The NFS client cache will cache to much. A simple workaround is to add ``set nrnode = 1000'' to /etc/system and reboot. You may want to make this larger or smaller depending on how much memory you have. About 20-30 rnodes per MB of memory is a good starting point. A good rule of thumb is about 20-30 rnodes per MB of memory. 6. SOFTWARE DEVELOPMENT 6.1) Where is the C compiler or where can I get one? Where have you been? :-) Sun has dropped their old K&R C compiler, supposedly to create a market for multiple compiler suppliers to provide better performance and features. Here are some of the contenders: 1) SunPro C: [URL: http://www.sun.com/sunsoft/index.html] SunPro, SMCC, and various distributors sell a new ANSI-standard C compiler on the unbundled (extra cost) SPARCcompiler/SPARCworks CD-ROM. There are some other nice tools there too, like a "make tool" and a visual diff (interactive diff). You have to license and pay per concurrent user. 2) Cygnus GCC: [URL: http://www.cygnus.com/] Cygnus Support and the Free Software Foundation make the GNU C compiler for Solaris, a free software product. Source code and ready-to-run binaries can be installed from the CDware CD (Volume 4 or 5). Like all GNU software, there are no restrictions on who can use it, how many people can use it at a time, what machines it can be run on, or how many copies you can install, run, give away, or sell. Cygnus sells technical support for these tools, under annual support contracts. The Cygnus distribution includes: gcc (ansi C compiler), gdb (good debugger), byacc (yacc repl), flex (lex repl), gprof, makeinfo, texindex, info, patch, cc (a link to gcc) The Cygnus compiler on uunet is starting to show its age a bit. If you want to compile X11R5, you can get the latest version of GCC in source code, from the usual places (prep.ai.mit.edu or one of the many mirrored copies of it). Build and install that compiler using the Cygnus gcc binaries. Or get tech support from Cygnus; they produce a new version for their customers every three months, and will fix any bug you find. 3) Gcc. Gcc is available from the GNU archives in source and binary form. Look in a directory called sparc-sun-solaris2 for binaries. You need gcc 2.3.3 or later. You should not use GNU as or GNU ld. Make sure you run just-fixinc if you use a binary distribution. Better is to get a binary version and use that to bootstrap gcc from source. GNU software is available from: prep.ai.mit.edu:/pub/gnu gatekeeper.dec.com:/pub/GNU ftp.uu.net:/systems/gnu wuarchive.wustl.edu:/mirrors/gnu nic.funet.fi:/pub/gnu 4) Info on Apogee, Lucid C, etc will be added if you send us some. 6.2) What about the linker, the assembler and make? Solaris ships with everything you need, except for the compiler. All this stuff lives in /usr/ccs/bin and /usr/ccs/lib. If you still can't find it, make sure you have the following packages installed on your system: for tools (sccs, lex, yacc, make, nm, truss, ld, as): SUNWbtool, SUNWsprot, SUNWtoo for libraries & headers: SUNWhea, SUNWarc, SUNWlibm, SUNWlibms for ucb compat: SUNWsra, SUNWsrh 6.3) Where has ranlib gone? The functionality provided by ranlib in SunOS 4.1.x is now merged into ar. It is no longer necessary to run ranlib on archive libraries. Fix makefiles that require ranlib by replacing it with "/bin/true". 6.4) What do I need to compile X11R5? There are several "patch kits" for X11R5 under Solaris 2.1. Most of them require gcc 2.3.3 or later and you must have run "fixincludes" when you install the gcc software. The recommended patchkit is R5.SunOS5.patch.tar.Z available from ftp.x.org:/R5contrib. It works with gcc (2.3.3 or later) and SunPRO C. X11R6 compiles out-of-the-box on Solaris 2.3. 6.5) I can't compile X11R6 on Solaris 2.4 There are several possible problems when compiling X11R6 on Solaris 2.4: The compilation of xc/programs/Xserver/Xext/shm.c will fail with a redefinition of shmat(). Comment out the offending defintion near line 66 in that file. If you use SC 2.0, you'll have to add -D__sparc to the StandardDefines in sun.cf line 146. See also 6.6 6.6) X11R6 on Solaris 2.4 won't run. Xinit dies with "User Signal 1". Xterms won't die. Some changes in libc.so and libthread.so break the way libthread is linked with libX11.so. Apply the following patch and rebuild libX11.so. Remember to change OSMinorVersion to 4 as well. Another symptom is xterms staying around in a frozen state after exiting the inferior shell process. Note that you must reinstall the X libraries with "make install" before xterm works right. For multithreaded X to work it necessary to install patch 101925-02 to fix problems in header files [2.4]. You need to reinstall gcc or re-run just-fixinc after installing that patch. *** xc/config/cf/sunLib.tmpl.org Sat Apr 9 01:15:25 1994 --- xc/config/cf/sunLib.tmpl Wed Jan 11 10:59:03 1995 *************** *** 37,44 **** --- 37,46 ---- #else /* else it's Solaris */ + #if OSMinorVersion < 4 #if ThreadedX #define SharedX11Reqs -lthread + #endif #endif #define SharedXmuReqs $(LDPRELIB) $(XTOOLLIB) $(XLIB) #define FixupLibReferences() /**/ 6.7) I get undefined symbols when compiling R6 in Solaris 2.2. Solaris 2.2 doesn't have the full thread support required by X11R6. Compile R6 without multi-thread support or upgrade to 2.3 or later. 6.8) I can't get perl 4.036 to compile or run. Run Configure, and use the solaris_2_0 hints, *don't* use the solaris_2_1 hints and don't use the config.sh you may already have. First you must make sure Configure and make don't find /usr/ucb/cc. (It must use gcc or the native C compiler: /opt/SUNWspro/bin/cc) Some questions need a special answer. Are your system (especially dbm) libraries compiled with gcc? [y] y yes: gcc 2.3.3 or later uses the standard calling conventions, same as Sun's C. Any additional cc flags? [ -traditional -Dvolatile=__volatile__ -I/usr/ucbinclude] -traditional -Dvolatile=__volatile__ Remove /usr/ucbinclude. Any additional libraries? [-lsocket -lnsl -ldbm -lmalloc -lm -lucb] -lsocket -lnsl -lm Don't include -ldbm, -lmalloc and -lucb. Perl 5 compiled out of the box. 6.9) I can't get sockets to work with perl. Some of the socket constants have changed. E.g., SOCK_STREAM now has a value of 2, whereas SunOS 4.x uses a value of 1. 6.10) I have problems compiling MH 6.8.3 The MH config file for Solaris that comes with MH 6.8.3 should work OK, but there's some other problems: One of the Solaris 2.x headers conflicts with mhn.c and inc doesn't know how to seperate messages based on the Content-Length header. A fix for both problems can be found in: ftp.fwi.uva.nl:/pub/solaris/mh-6.8.3-diff 6.11) I can't get XV 3.x to compile or run correctly. You need to get xv-3.x from ftp.cis.upenn.edu:/pub/xv. Don't use xv-3.01 from ftp.x.org. The latest version, xv-3.10, compiles fine w/o any of the ucb stuff. 6.12) What happened to NIT? What new mechanisms exist for low-level network access? See man page DLPI(7). Try NFSWATCH 4.1 for sample code using DLPI. It is available by ftp from: harbor.ecn.purdue.edu:/pub/davy/nfswatch4.1.tar.Z and gatekeeper.dec.com:/pub/net/ip/nfs/nfswatch4.1.tar.Z Better yet, FTP the paper "How to Use DLPI in Solaris 2.x" by Neal Nuckolls of Sun Internet Engineering. Look in these FTP directories: opcom.sun.ca:/pub/drivers/dlpi ftp.ui.org:/pub/osi/{dlpi,npi,tpi}.ps [ It appears that this site no longer exists, where did it move to? ] [ someone has found these, ill put a reference in later ] 6.13) Where are all the functions gone that used to be in libc? The C library has exploded. The manual page may give an indication where to find a specific function. Those libraries are essentially split over two directories: /usr/lib /usr/ccs/lib. Important libraries: /usr/lib: libsocket - socket functions libnsl - network services library /usr/ccs/lib: libgen - regular expression functions libcurses - the SysVR4 curses/terminfo library. See Intro(3) for more details. 6.14) I'm still missing some functions: bcopy, bzero and friends. They are in /usr/ucblib/libucb.so. The b* functions are replaced with the ANSI-C equivalents. Look in the Solaris porting FAQ for more details. 6.15) Can I use the source compatibility package to postpone porting? Not really. The Source code compatibility package is compatible with BSD 4.2, not SunOS 4.1.x. The consensus is that the library is broken beyond usability. If you use libucb to pick up some functions you need, it is often best to specify it *after* all other libraries and after libc with: -lc -L/usr/ucblib -R/usr/ucblib -lucb or preferrably: -lc /usr/ucblib/libucb.a 6.16) Why doesn't readdir work? It chops the first two characters of all filenames. You're probably linking with libucb and didn't read question 6.15. (Readdir in libucb.so wants you to include sys/dir.h, but many SunOS 4.1.x programs included , consequently, you're mixing native struct dirent with libucb readdir(). The symptom of this mixup is that the first two characters of each filename are missing. Make sure you use the native compiler (default /opt/SUNWspro/bin/cc, which may not be in your PATH), and not /usr/ucb/cc. 6.17) Why do I get undefined symbols when linking with curses/termcap? It is easy to mixup the BSD libcurses and the SVR4 libcurses. One lives in /usr/ucblib, the other in /usr/ccs/lib, when you've installed SUNWarc. Note that when you specify: -L/usr/ucblib -lucb -L/usr/ccs/lib -lcurses you will pick the *ucb* version of libcurses, not the SVR4 version. If you always put libucb last, as recommended in the previous question, you will have no such problem. *6.18) Where are the Motif includes and libraries? Starting with Solaris 2.4, the package SUNWmfrun is included with the base OS. It is installed under the directory /usr/dt, where all the CDE stuff will appear (dt stands for desktop). There are no Motif imake templates nor is mwm shipped with the base OS yet. Remember that you must link with -R/usr/dt/lib. +6.19) Traceroute to Solaris 2.x machines gives many timeouts. Solaris 2.4 and later (and Solaris 2.3 w/ high rev kernel jumbo patches) limit the number of ICMP error message to one per 500 milliseconds. To switch off this feature, use: /usr/sbin/ndd -set /dev/ip ip_icmp_err_interval 0 7. ACKNOWLEDGEMENTS Most of this material is either written by me or sent to me directly. Some of it is cribbed shamelessly from USENET postings in several groups. Thanks to all people who contributed to this FAQ, you know who you are. The list is too long to be included in this FAQ. --- End of Solaris 2.x FAQ -- Maintained by Casper Dik --- From csus.edu!csulb.edu!nic-nac.CSU.net!newsserver.sdsc.edu!news.cerf.net!mvb.saic.com!news.mathworks.com!news.kei.com!news.ece.uc.edu!babbage.ece.uc.edu!montjoy Mon Sep 18 16:49:31 1995 Path: csus.edu!csulb.edu!nic-nac.CSU.net!newsserver.sdsc.edu!news.cerf.net!mvb.saic.com!news.mathworks.com!news.kei.com!news.ece.uc.edu!babbage.ece.uc.edu!montjoy From: montjoy@ftp.ece.uc.edu (Rob Montjoy) Newsgroups: comp.sys.sun.admin,comp.sys.sun.misc,comp.unix.solaris,comp.answers,news.answers Subject: FAQ: Sun Computer Administration Frequently Asked Questions Supersedes: Followup-To: poster Date: 18 Sep 1995 13:35:44 GMT Organization: University of Cincinnati Lines: 3357 Sender: montjoy@ftp.ece.uc.edu (Rob Montjoy) Approved: news-answers-request@MIT.Edu Distribution: inet Expires: 16 Oct 1995 13:35:41 GMT Message-ID: Reply-To: Rob.Montjoy@UC.EDU NNTP-Posting-Host: thor.ece.uc.edu Summary: Answers to questions which appear in comp.sys.sun.* Keywords: Sun Computer Admin FAQ Originator: montjoy@thor.ece.uc.edu Xref: csus.edu comp.sys.sun.admin:64532 comp.sys.sun.misc:24433 comp.unix.solaris:58123 comp.answers:14278 news.answers:53118 Archive-name: comp-sys-sun-faq Last-modified: 1995/9/18 Version: 1.9.16 Frequently Asked Questions for Comp.sys.sun.admin Last update Sept 18 1995 This is a collection of common questions posted to the comp.sys.sun.* hierarchy. Please send corrections or submissions to "Rob.Montjoy@UC.EDU". Mark the Subject as Sun FAQ. Remember lets make this a better FAQ and that requires submissions and corrections so if you have an answer to a nontrival question send it to me. This FAQ is available from ftp.ece.uc.edu (129.137.8.118) in the /pub/sun-faq/FAQs. Get the file sun-faq.general. The sun-faq directory is also available from gopher.ece.uc.edu(129.137.8.118). Many other related FAQ's are in this directory too. Other FAQ's that you should check are as follows: Sun Hardware FAQ edited by James W. Birdsall Sun Managers FAQ edited by John DiMarco Solaris2.x FAQ edited by Casper Dik An HTML version is available from http://www.fwi.uva.nl/pub/solaris/solaris2.html Solaris2.x Porting FAQ by David Meyer Celeste's Guide to Terminals & Modems under Solaris 2.x edited by Celeste Stokely I try to keep these up to date copies of all these files in ~ftp/pub/sun-faq/FAQs on ftp.ece.uc.edu (129.137.8.118) Notes: As of this writing almost all of these questions apply to SunOS versions up to 4.1.4. SunOS 5.x questions will start appearing gradually as more people start installing SunOS 5.x(Solaris 2.x). I am looking for suggestions on how to split this FAQ into sections. These sections should follow the comp.sys.sun.* newsgroups(app, hardware, admin, misc, and wanted) and section on bettering Sun Security. Basically, what will end up with is a FAQ on each subject. Each FAQ will have a Solaris1.x Section, a Solaris2x section, and a section common to both. I will probably need some volunteers to help coordinate this undertaking.. Send suggestion to the usual address. Some of these questions are out of date and need updating when I get the time(or maybe a little birdie will do it for me) I will update them. Thanks. This article includes answers to the following questions, which are loosely grouped into categories. Questions marked with a '+' indicate questions new to this issue; those with significant changes of content since the last issue are marked by '!'. Questions 1) How to get DNS working when not running NIS ? 2)! How to get DNS to be used when running NIS ? 3) How to properly setup NFS mounting of /var/spool/mail ? 4) Can I use AnswerBook under X11R5? 5) What does "NFS write error X" mean? 6)! How do I find the amount of memory installed or other system configuration information? 7) Where can I get a version of ftp that does logging? 8) Where can one get SunOS patches? Where can I get patch 10xxxx-xx? 9) How to setup Openwindows Calendar Manager in a distributed environment? 10) Why does the talk command fail between SunOS and any other manufacturer's equipment (like DEC)? 11) How do I setup "anonymous" ftp? 12)! How come yppasswdd does not automatically update the yp maps? 13) What does NFS getattr failed/RPC: Authentication error mean? 14) Why did my Quantum 105 megabyte hard disk stop working? 15) Can I replace the 105 megabyte internal drive with a higher capacity model? 16) How can I turn my Sun3 into an X-Terminal? 17) Why is my console login prompt garbled or in some strange alphabet after upgrading to 4.1.3? 18) Why are the "random" missing services at boot time or any other time (even though the services are in the /etc/services file or NIS map)? 19)! Where can I get Data Certified tapes for 4-mm or 8-mm tape drives (at reasonable price)? 20) What is "archie"? 21) How do I synchronize time on my Network? 22) What is the phone number for Sun Express and other numbers of importance to Sun Users? 23) How do I join sun related mailing lists? 24) How do I use Mac floppies in a SUN drive? 25) How can I transfer floppies back and forth between MS-DOS and Sparc? 26) Why is my biff not "biffing" when using biff in a networked environment? 27) How do I disable L1-A(STOP-A) or re-map it? 28) Why are all the local users "unknown" when using sendmail under 4.1.2? 29) What are the dump parameters for an exabyte 8200 or 8500? 30)! What are the guidelines for setting up swap space ? 31) What are the general guidelines for maxusers to be set to on machine X? 32) What does "zsN: silo overflow" mean? 33) What does the "N" in "zsN: silo overflow", and other "zsN" messages, signify? 34) How do I set up a Sun serial port both for dial-in and dial-out? 35) I can't get my Sun, running SunOS 4.1[.x], to establish a UUCP connection to some non-Sun machine; it won't log in. What's wrong? 36)! Do the Sun serial ports support RTS/CTS flow control? 37) How do I specify that a serial port should, or should not, ignore the state of the Carrier Detect line? 38) I put in a new "termcap" entry, or updated an existing "termcap" entry, for a terminal, but "vi" doesn't seem to know about my change. Why? 39) I have a Type 5 keyboard, and find its placement of the Caps Lock, Control, and Esc keys inconvenient. How do I remedy this? 40) How can I move keys around on a Sun keyboard, for example exchanging the Caps Lock and Control keys on a Type 5 keyboard? 41) My Sun doesn't have an ANSI C compiler. How can I get one? 42) How do I change the time zone setting on my machine? 43) I'm getting messages that say one of the following: proc: table is full and/or file: table is full and/or dquot: table is full and/or inode: table is full What do these errors mean, and how do I fix the problem? 44) Blank at present. 45)! How do I run X11R5 applications under Openwindows or Openwindows applications under X11R5? 46) Where do I find a "restricted" shell for SunOS? 47)! Will SunOS 4.1.x binaries run under SunOS 5.x? 48) When I try to compile MITs X11R4 applications under Openwindows 3.0, I get the following "undefined" symbols(_get_wmShellWidgetClass, and _get_applicationShellWidgetClass). What is the Problem? 49)! What is Solaris? 50) What does the "nres_gethostbyaddr !=" error mean? 51) How come my mouse only works in the vertical(or horizontal) direction, how do I repair it? 52) After rebuilding the shared library libc it get some or all the following undefined symbols: dlsym, dlopen, dlclose mbstowcs_xccs, mbtowc_xccs,wcstombs_xccs, or wctomb_xccs. 53) What does "No network locking on host" mean after upgrading to Solaris 2.0? 54) Does Password Aging work with NIS(YP) ? 55) What does "rpc.lockd: Cannot contact status monitor!" mean? 56) How do I join the Sun User Group(SUG)? 57) How do I increase the number of "pseudo" terminals(ptys) ? 58) Where are dump and restore under Solaris 2.x? 59) How do I make the numeric keypad on a type 5 keyboard work with xterm? 60) How do I swap the CAPS LOCK and CONTROL keys on a type 5 keyboard under Openwindows 3.0? 61)! Which Sun models run which versions of SunOS? 62) My rdump is failing with a "Protocol botched" message. What do I do? 63) Table of Solaris2.x commands and their Solaris1.x equivalents? 64) How do I setup DNS on Solaris2.x? 65) Can a SPARCclassic or LX run SunOS 4.1.3? 66) I just restored my root partation and now I can not boot. What is wrong? 67) How do I disable/enable packet forwarding? 68) How do I disable the printing of banners pages? 69) How do I change my hostname? 70) Table of Solaris2.x files and their Solaris1.x equivalents? 71)! Where can I get the BSD print spooler for Solaris2.x? 72)! Where is the Solaris2.x screenblank? 73)! Is there a command to display the configuration of currently attached SCSI devices? 74) My printer will not print large files(over 1-megabyte), I keep getting "file to big" errors. What do I do? 75) I keep getting "data corruption" when using NFS over a wan, or slip/ppp link. What do I do? 76) Does anybody know how to enable UDP checksum on NFS? 77) Is there a mailing list for Wabi? 78) Are there any public domain Multi-Vendor backup management systems? 79) How to determine the revision of SuperSPARC processor. 80) How do I install SunOS4.1.x by hand (off a CD)? 81) Why won't my SUN207 (Maxtor LXT213) hard drive work in my SPARCstation 10/xx? 82)! I'm running SunOS/4.1.x and every time I try to format my new 9GB SCSI disk I get "format failed" messages -- what's broke, and how can I fix it? 83)! I can not get my new Exabyte 8505 (or others) working under SunOS (or Solaris) What to do ? 84) The keyboard keeps stop working after exiting X or Openwin. What to do? 85)! How do I re-build the kernel under SunOS4.x? 86) How do I hook up a HP(or other) Desktop SCANNER? 87)! How do I find which process has a file open? 88) How do I create a partition greater than 2-gig on SunOS4.1.x? 89) Why do I keep having to answer the question "CLEAN FLAG IN SUPERBLOCK IS WRONG; Fix?" when running fsck on an active filesystem? 90) Are dynamically linked setuid executables insecure? 91) How do I change the default router under Solaris1.x or Solaris2.x? 92) What is the difference between the Domestic vs International version of SunOS 4.1.x? 93) Where can I get the latest version of TOP? 94) Can I run the SX card in a Sun running SunOS4.1.x? 95) I just changed my shell to tcsh(or pick a favorite) and get "530 User xyzz access denied" when ftping into this machine. What is the problem? 96) How do I put several dump images on one tape? 97) Can I "dump" the whole disk to tape in one command? (even with several slices/partitions) 98) Where do I get software for my HP JetDirect Ethernet Card? 99) I do not know the root password, What do I do? 100) Where do I find a POP server for Solaris or SunOS? 101) How do I clear Stale NFS Filehandles? 102)! How can I use the same ethernet interface for two different IP networks? 103)! Where do I get CAP for Solaris (or SunOS 4.1.x)? 104) Where do I get DOOM for Solaris (or SunOS 4.1.x)? 105) Why does "dump/ufsdump" tell me it is rewinding the tape even when I specified the "no rewind" device? 106) How can you I speed up filesystem restores and/or copies? 107)+ I just added a new device (ie harddisk) to Solaris I have rebooted but the system still can not find it. What do I do? Answers 1) How to get DNS working when not running NIS ? Note: Solaris2.x users should see question 64.. The "normal" behavior of a hostname lookup under NIS is to consult the NIS hosts map and then DNS (if configured). If you are not running NIS the system will only look in the /etc/hosts file. You have two options to correct this situation: A) Re-build the shared library version of libc with replacement resolver routines which understand DNS. Resolv+ provides one of the best sets of replacement routines and it is easy to install. Resolv+ can be obtained from ftp.ece.uc.edu:/pub/sun-faq/Source/resolv+2.1.1.tar.Z Rebuilding the shared library will not allow statically linked binaries to do name resolving and these binaries will only use /etc/hosts. "Dynamically linked" replacements for mount and rcp are available from ftp.ece.uc.edu:/pub/sun-faq/Source/rcp-mount.dyn.tar.Z This file only contains sun4 binaries. A Sun 3 binary for mount can be retrieved from ftp.ece.uc.edu:/pub/sun-faq/Source/mount.sun3.Z To be able to rebuild shared libraries you need to install the "shlib custom" option which is available with SunOS version 4.1 or greater. If you want to do it under 4.0.3 you need to get the patches available from ftp.uu.net (192.48.96.9) in the /systems/sun/sun-fixes directory. You will need the following files: lib.msg, libc_pic.a.sun3 or libc_pic.a.sun4 and libc_resolv.so.sun3 or libc_resolv.so.sun4 Make sure to get the README that cames with these files. It is in the same directory. You can still use NIS for other things in environment, such as passwd, and group maps. B) Run NIS with the "hosts" maps only. If you only need DNS capability than change the "all" line /var/yp/Makefile to "all: hosts". It does not require any changes to shared libraries. See question 2 for complete directions on how to setup DNS with NIS. Last Updated: January 30, 1995. 2) How to get DNS to be used when running NIS ? First setup your /etc/resolv.conf file. Use this file as a template. ; ; Data file for a client. ; domain ece.uc.edu ; local domain nameserver 129.137.8.118 ; primary domain nameserver nameserver 129.137.32.101 ; secondary domain nameserver Where: "local domain" is the domain part of the hostnames. For example, if your hostname is "ftp.ece.uc.edu" your "local domain" is "ece.uc.edu" or you could use "uc.edu". Verify using nslookup that you are now resolving names via DNS. Try something like "nslookup ftp.uu.net" and see if you get back the IP address. You will need to put a copy of this resolv.conf on all NIS servers including slaves. After you have the /etc/resolv.conf setup and working do the following: Under SunOS 4.1 and greater, at the top of the /var/yp/Makefile uncomment the "B=-b" line and comment using the "#" sign the "B=" If you are running 4.0.x you will need to edit the /var/yp/Makefile or apply the following "diff": *** Makefile.orig Wed Jan 10 13:22:11 1990 --- Makefile Wed Jan 10 13:22:01 1990 *************** *** 63 **** ! | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byname; \ --- 63 ---- ! | $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byname; \ *************** *** 66 **** ! | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byaddr; \ --- 66 ---- ! | $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byaddr; \ Now setup NIS in the usual fashion (ypinit -m ) or if your "brave" and have already setup NIS just re-make the hosts map. Something like this should work remove /var/yp/hosts.time, cd /var/yp, and type make (i.e. cd /var/yp; /bin/rm -f hosts.time ; make). You will need reboot the machine or restart ypserv for these changes to take affect. The manpage for ypserv incorrectly states that you need to start ypserv with the -d option to get DNS to work with NIS. The manpage is incorrect -d option is for debugging. If you need a copy of the NIS Makefile look in /usr/lib (NIS.Makefile). Or grab the Makefile from ftp.ece.uc.edu:/pub/sun-faq/Makefile.nis Last Updated: July 20, 1995. 3) How to properly setup NFS mounting of /var/spool/mail ? On the Client machines: A) mount /var/spool/mail with the no attribute caching option. An example, fstab line would be the following: mailhost:/var/spool/mail /var/spool/mail nfs rw,noac 0 0 B) Use a sendmail.cf that forces all mail to be delivered by the mailhost. One such file is available via anonymous ftp to ftp.ece.uc.edu. Get the file /pub/sun-faq/sendmail.client.cf Do not use the OR option that Sun provides. It is broken in many ways. On the server machine: A) Setup DNS MX records pointing to the mailhost for all client machines. B) Edit the /etc/exports file to export /var/spool/mail to the mail client machines. You may want to use a netgroup for this purpose. C) Setup the /etc/sendmail.cf on the server recognize that mail to/from a client is "local". One such file is available via anonymous ftp to ftp.ece.uc.edu. Get the file /pub/sun-faq/sendmail.server.cf Note: You may want to install Berkeley sendmail instead of Suns stock sendmail. 4) Can I use AnswerBook under X11R5(6)? AnswerBook in its current form requires the Openwindows server. It uses the NeWS/Display Postscript extensions to this server to display the Answerbook files. To use AnswerBook under X11R5 you will need to replace the docviewer program with program that calls Ghostscript to view these pages. A replacement docviewer can downloaded from ftp.ece.uc.edu(129.137.8.118) as /pub/sun-faq/Source/docviewer.tar.gz This kit contains more than one docviewer. Try using the one in the toplevel docviewer directory. This replacement docviewer does not support all the options that the "real" docviewer supports such as "hypertext" links. To install the replacement "docviewer" you will also need Ghostscript 2.4 or above and Ghostview 1.3 or above both of which are available from prep.ai.mit.edu in the /pub/gnu directory. This replacement docviewer is reported to work with all versions of AnswerBook but not as well as the original :). 5) What does "NFS write error X" mean? You can lookup the error codes in /usr/include/sys/errno.h. Two common NFS error codes are 13 - "permission denied" and 70 - "stale file handle". Error code 13 can occur from incorrect /etc/exports entry. Also, it can occur because someone has changed the /etc/exports entry to disallow the client after the client has already been granted permission to perform this operation. Error code 70 occurs when the file handle on the NFS server changes for a particular filesystem. The "file handle" can be changed under the following circumstances: A) Installing a new drive in place of an old. B) Moving a filesystem from one devices to another. C) Performing a format, newfs, dump, and restore cycle. Even if to the same device. D) Unmounting a file system without remounting it. E) Unmounting a High Sierra/ISO 9660 CD-ROM and mounting a different CD. You can usually get rid of the error by unmounting and remounting the filesystem in question. Also, error code 70 can occur when someone removes a file that a process is actively writing from a NFS client machine. Under SunOS 4.1, you can run "showfh" to translate the NFS "file handle" given in the error message into a Unix pathname. Beware that showfhd does a "find" on your server to get the filename. "man 2 intro" will give you some more general information on what error codes could mean. You will need a patch to get "showfh" to work correctly. The patch id is 100371 and this patch is required for 4.1, 4.1.1, and 4.1.2. This patch has been integrated into 4.1.3. 6) How do I find the amount of memory installed or other system configuration information? You can use the "devinfo" command to find out genera information about the hardware attached to your Sun. The "devinfo" command is only available on desktop SPARCsystems, SPARCengine 1E(although not in the version used in Auspex systems), or 600MP series server only. Also, most clones should support devinfo. Any machine that has an SBus will probably support "devinfo"; any machine that doesn't have an SBus probably won't support "devinfo". Note that "devinfo" is called "prtconf" in SunOS 5.x. All options are the same. The "best" command for the job is "sysinfo". Sysinfo is public domain utility available via "anonymous" ftp on usc.edu in directory /pub/sysinfo. Sysinfo works on all Sun architectures(including Sun-3s) as well as many other UNIX boxes such as Ultrix, and Next. Also, it works on SunOS5.x machines. Note: "wc -l /dev/mem" and "dd if=/dev/mem of=/dev/null" and the like will *not* give the correct answer on machines where physical memory is not contiguous, such as many Suns. OpenWindows 3.3 and above also support the "wsinfo" command, which provides some of this information, in particular memory size. Last Updated: August 2, 1995. 7) Where can I get a version of ftp that does logging? Get the wuarchive ftp daemon. It is available from wuarchive.wustl.edu (128.252.135.4) in the directory /packages/wuarchive-ftpd A version of the wuarchive ftpd daemon that compiles right out of the box for Solaris2.x machines can be had from ftp.ece.uc.edu(129.137.8.118) in the /pub/sun-faq directory. Remember to specify your own paths in the src/pathnames.h file. The stock Sun ftpd will log some information if you add the "-l" flag in /etc/inetd.conf: ftp stream tcp nowait root /usr/etc/in.ftpd in.ftpd -l Also enable syslogd by adding: daemon.info /var/adm/syslog to "/etc/syslog.conf". 8) Where can one get SunOS patches? Where can I get patch 10xxxx-xx? Many anonymous ftp sites have partial collections of patches. These sites include the following: Sun sanctioned sites: sunsolve1.sun.com:/pub/patches/ via WWW http://sunsolve1.sun.com/ sunsite.unc.edu:/pub/sun-info/sun-patches/ sunsite.unc.edu:/pub/sun-info/sun-patches/ sunsite.sut.ac.jp:/pub/sun-info/sun-us/sun-patches/ sunsite.doc.ic.ac.uk:/sun/sunsite-sun-info/sun-patches/ Note: You should always attempt to find a local site before using the above. sunsolve1.sun.com contains a collection of recommended and security patches. Be sure to check out the 2.x_Recommended.tar.Z files which contain all the Recommended patches in one file. The "Sunsites" are essentially mirrors of sunsolve. Support Customers: Starting with SunSolve CD 2.1.2 ALL Sun patches are shipped on the SunSolve CD. Support customers can get all patches via ftp from Sunsolve or by e-mail and query one of the online sunsolve-databases on the internet. Some notes: Do install the Recommended patches. If you find a bug report it to Sun. This is the only way it will get fixed. Do not "blindly" install all patches. Sun does not always have time to test for possible interactions between patches. Do not install patches for applications that you to do use. Do install patches for "bugs" that are actually affecting you. Last Updated: January 30, 1995. 9) How to setup Openwindows Calendar Manager in a distributed environment? Sun's original assumption that each user has a permanent machine allocated to them is not applicable in most environments. Just as users send mail to 'user' rather than 'user@machine', users want to browse others user's calendars and do not care or want to know where the calendar is actually stored. Here is procedure to accomplish our goal. All calendars will be stored on a central server. The initial setup must be done on the server. A) Have the user login to the calendar host(calhost) machine. B) Change everyone's .cm.rc file so that Calendar.DefaultCal points to user@calhost calhost can be an hostname alias or an actual hostname. You may want to use the alias just in case you change the "calhost" later. C) Change their Access List and Permissions (under Edit/Properties) to show user@client with BID (browse, insert, delete) permissions for any client machine the user wanted to access their calendar from. Notes: If you use the scheme you should not NFS mount /var/spool/calendar on the client machines. or You can install the "Proxy OpenWindows Calendar Manager", which is available via anonymous FTP from ftp.ece.uc.edu in /pub/sun-faq/proxy-cmsd.tar.Z. or You can install the "new cm daemon" which allows you to access several Calendar hosts at once. It implements the "original" rpc.cmsd daemon semantics(unlike proxy-cmsd) and thus all the features(of CM) will work as documented. The latest source for this daemon was available via anonymous FTP from ftp.amdahl.com (129.212.11.1) in the /pub/newcm_d directory but alas it is no longer but you can still get a copy from from ftp.ece.uc.edu as /pub/sun-faq/newcm_d-1.3.tar.Z As of this writing newcm is being ported to Solaris2.x. 10) Why does the talk command fail between SunOS and any other manufacturer's equipment(like DEC)? SunOS has the old BSD 4.2 version of talk. The old talk uses "machine dependent" byte ordering. Since DEC has different byte order the two talks can not communicate(even if you use "otalk" on the DEC machines). Also, most vendors have the newer version of talk from BSD-4.3 and this version is not compatible with the Sun Version(which is BSD-4.2). The solution is to get and install the new version of talk because it uses "network" byte ordering and it is compatible with most Vendors current talk implementations. "New Talk" is available via anonymous ftp from several sites including ftp.ece.uc.edu. Get the file /pub/sun-faq/Source/ntalk.tar.Z. Solaris2.x users will need to compile this in Berkeley compatibility mode. Finally, a program called Ytalk can be used with either "New talk" or "Old talk" and compiles on all versions of SunOS(Greater than 4.x including 5.x). Ytalk can be obtained from ftp.ece.uc.edu. Get the file /pub/sun-faq/Source/ytalk-3.0.x.tar.gz 11) How do I setup "anonymous" ftp? Read the man page ftpd(8) in the SunOS 4.x documentation, as the procedure differs from vanilla BSD and most examples in system administration books. The "ls" binary is dynamically linked, requiring you to duplicate ld.so, libc.so.* and /dev/zero in the ftp area. The permissions and ownership of the files within the ftp area are critical to having a secure configuration. Note: For SunOS versions 4.1.2 and 4.1.3 you will need to copy /usr/lib/libdl.so.* to the ftp area as well. You can use a "statically" linked binary from the GNU fileutils instead of the "dynamically" linked SunOS version. You can get the GNU fileutils from prep.ai.mit.edu in the directory /pub/gnu There is also a statically linked version of ls for Suns running SunOS 4.1.x, available via anonymous ftp from ftp.ece.uc.edu. Get the file /pub/sun-faq/ls.statically-linked or get it from the SunOS install CD in the "tools" directory. A complete procedure to setup anonymous under SunOS is available via anonymous ftp to ftp.ece.uc.edu. Get the file /pub/sun-faq/anon-ftp.how-to. There is an _excellent_ script written by Peter N. Lewis (peter.lewis@info.curtin.edu.au) for setting up anonymous ftp located on ftp.ece.uc.edu, in the file /pub/sun-faq/anon-ftp.scrpt 12) How come yppasswdd does not automatically update the yp maps? There is a bug in 4.1 rpc.yppasswdd that causes it misinterpret the command line arguments. A work-around is to add the "-nosingle" flag (which is the default), this shifts the arguments over one, so "passwd" is read instead of "-m". Also, you should use the complete path to rpc.yppasswdd For example: /usr/etc/rpc.yppasswdd /var/yp/passwd -nosingle -m passwd DIR=/var/yp Note: Only use the DIR=/var/yp if your source files for passwd, group, etc are in /var/yp. If they are in /etc you do not need to and should not specify the DIR= parameter. Also, you can modify the NIS Makefile to change to the location of the maps (ie modify DIR= in /var/yp/Makefile). Than you could use something like this instead of the above line: /usr/etc/yppasswdd /var/yp/maps/passwd -noshell -m passwd This assumes that all NIS text/source files are in /var/yp/maps If you are running the C2 security package, you should apply the C2 Jumbo patch, as it fixes several problems with rpc.yppasswdd and rpc.pwdauthd. The patch number is 100201-04 or greater for SunOS 4.1 and 4.1.1 100564-06 or greater for SunOS 4.1.2 and 4.1.3 Last Updated: April 27, 1995. 13) What does NFS getattr failed/RPC: Authentication error mean? You are probably running a pre-4.0 version of NFS and your username is in more than 8 groups. There is a limit on the number of groups that could be represented in the rpc service (called NGRPS). On pre-4.0 systems this was 8, now it is 16. Since many vendors other than Sun are still running old versions of NFS, you might see this error even if your SunOS is recent. Authentication errors are also caused by having secure RPC enabled on the client but not on the server, or by having a misconfigured secure RPC configuration for the user name generating the errors. Beware of this problem when you are using the automounter, as programs (such as Sendmail) may silently fail when when they try to mount a directory and get this error. 14) Why did my Quantum 105 megabyte hard disk stop working? This the now infamous Quantum drive "stickation" problem. If the drive is allowed to cool down(even for a short period of time) the drive lubricant will congeal and prevent the disks platters from rotating. Before you get a replacement, try lightly tapping the drive to loosen the lubricant. If this does not work try shaking and twisting the drive at the same time. One last thing to try is to lift the system up a couple of inches and drop it. 15) Can I replace the 105 megabyte internal drive with a higher capacity model? The newer disk drives can be used without worrying about heat or power supply capacity problems. However, older technology drives drives create more heat and draw more power than the 105S. The case cooling ability and power supply in the SS-1 and SS-1+ are not adequate for the 210 megabyte or higher capacity drives possible in the SS-2. As long as you make sure that the drive draws no more power than the 105-Meg drive you should have no problems. Only the SPARCstation 1 and 1+ have these limitations. 16) How can I turn my Sun3 into an X-Terminal? You can use Seth Robertson's Xkernel package. It is available via anonymous ftp from ftp.ctr.columbia.edu (128.59.64.40) in /Xkernel. The package describes how to configure a minimal kernel that runs the X server and offloads all the clients onto another, hopefully more powerful host on the network. As of this writing the current version of Xkernel is 2.0 and it should work on both SPARC and Sun3 platforms. Xkernel is attractive to some sites that have a large investment in sun3 platforms, as moving most of the processing off the sun3 cpu makes it tolerable to use. Finally, a used 3/50 is competitive with low-end X Terminal and you get a 19" monitor with an optical mouse. 17) Why is my console login prompt garbled or in some strange alphabet after upgrading to 4.1.3? The problem is /etc/ttytab, with 4.1.3, the console is now able to display 8 bits characters and getty must take this into account. The solution is easy, replace your console entry in /etc/ttytab by the following, the important part is 'cons8': console "/usr/etc/getty cons8" sun on local secure Also, if you did an upgrade(instead of a full install) you may need to add the following to your /etc/gettytab. # This is a new entry to internationalize the console. It needs to be # 8 bit clean so that ISO 8859 characters can be displayed without # the window system. # cons8:\ :p8:lm=\r\n%h login\72 :sp#9600: 18) Why are the "random" missing services at boot time or any other time (even though the services are in the /etc/services file or NIS map)? The three primary causes for "random" missing services are as follows: A) "Blank" lines in /etc/services on the YP/NIS Master. Delete the blank line and remake the services map. B) Check the permissions on /etc/services. Non-root processes need read permissions so /etc/services should be mode 644. C) NIS/YP server not responding quickly enough to the "getservbyname" call because each getservbyname call reads the whole map. One fix is to replace the systems version of inetd with a version that re-tries the "unknown" service. I have "hacked" a version of munetd(public domain replacement for inetd) to do this. It is available from ftp.ece.uc.edu. Get the file /pub/sun-faq/Source/munetd.tar.Z Another solution to this problem is outlined in part C below. D) Sun's implementation of the services map is incorrect. To correct this problem you will need to replace some library routines in libc and rebuild the shared library. These routines and directions on installing them are available from ftp.ece.uc.edu. Get the file /pub/sun-faq/Source/getservent.tar.Z. E) Another fix(if you do not want to modify your libc's) is to just remove the services map from NIS. However, you will need to update the services file by hand on all clients. We are running all NIS hosts this way and it seems to work quite well. 19) Where can I get Data Certified tapes for 4-mm or 8-mm tape drives (at reasonable price)? Here is an incomplete list of vendors how have "data certified" tapes for the exabyte. Misco 800-876-1726 $12 - 15 each. TecBridge 800-972-7405 $9 - 15 each. R-Squared 800-777-3478 Sony 112m 120@8.00 Each K and K Systems 612-475-1527 $10 Each SCR 314-739-0808 $10.95 for Memorex CPI 800-522-4274 Sony 112m 120@7.00 Each Last Updated: July 22, 1995. 20) What is "archie"? Archie is a database of what is on several thousand anonymous ftp sites. To use archie get one of the three archie clients which are as follows: xarchie - For use under X11 c-archie - Curses version of Archie archie - Perl Version of Archie Theses are available from archie.ans.net in the directory /pub/archie. List of other publicly available archie servers: archie.rutgers.edu 128.6.18.15 (Rutgers University) archie.unl.edu 129.93.1.14 (University of Nebraska in Lincoln) archie.sura.net 128.167.254.179 (SURAnet archie server) archie.ans.net 147.225.1.2 (ANS archie server) archie.au 139.130.4.6 (Australian server) archie.funet.fi 128.214.6.100 (European server in Finland) archie.doc.ic.ac.uk 146.169.11.3 (UK/England server) archie.cs.huji.ac.il 132.65.6.15 (Israel server) archie.wide.ad.jp 133.4.3.6 (Japanese server) archie.th-darmstadt.de 130.83.128.111 (German server) 21) How do I synchronize time on my Network? You should use xntp version 3 to synchronize your time. Xntp synchronizes to "atomic" and/or Radio Frequency clocks. Using xntp time should always be within a few "milliseconds" of the actual time. Xntp does not require a "atomic" clock, any stable UNIX host clock will do. xntp is available from louie.udel.edu. Get the file /pub/ntp/xntp3?.tar.Z where ? is replaced by the latest version letter. You will need clock.txt available from the same place. xntp works with all versions of SunOS(4.x and 5.x). Note: There is a Mac Control version of XNTP now available. 22) What is the phone number for Sun Express and other numbers of importance to Sun Users? Sun Express: 1-800-USE-SUNX (1-800-873-7869) Main Sun Helpline: 1-800-USA-4SUN (1-800-872-4786) Auspex Systems Inc. : 2952 Bunker Hill Lane Santa Clara, CA 95054 (800) 735-3177 or (408) 492-0900 Fax: (408) 492-0909 23) How do I join sun related mailing lists? Mailing Lists: Sun Managers: Used for "emergency" information only. The users of this list are "very" knowledgeable. sun-managers-request@eecs.nwu.edu add requests sun-managers@eecs.nwu.edu submissions Sun-386i: discussion about the Sun 386i product sun-386i-request@ssg.com add requests sun-386i@ssg.com submissions Suns-at-home: discussion about maintaining Sun2/3/4/4c systems at home suns-at-home-request@harbor.ecn.purdue.edu add requests suns-at-home@harbor.ecn.purdue.edu submissions Auspex: managers of Auspex NFS file servers auspex-request@princeton.edu add requests auspex@princeton.edu submissions Epoch: managers of Epoch NFS file servers EPoch Users Forum (EPUF) epuf-request@mcs.anl.gov add requests epuf@mcs.anl.gov submissions Various SunFlash Mailing Lists: SunFlash: Articles about Sun from Sun. Includes Press Releases, detailed intros, Sun e-newsletters, sunergy announcements John J. McLaughlin Editor/Publisher (flash@sun.com) Available in a variety of formats: List name Description sunflash daily sunflash. Many articles will have just summaries for the articles posted. use the autoresponder to get the full text sunflash-f full list - all articles - no summaries sunflash-w weekly list - one summary article per week sunflash-m monthly list - one summary article per week mt-sunflash summary article in the message body, and all articles included as MailTool style attachemensts mime-sunflash like mt-sunflash, but with MIME attachements mt-sunflash-w like mt-sunflash but once per week mime-sunflash-w like mime-sunflash but once per week Subscribe by sending email to majordomo@flashback.com The message body should contain the word subscribe followed by one of above lists names. E.g. subscribe mt-sunflash The Sun FlashBack: Articles of interest to the Sun community from vendors other than Sun. Includes Press Releases, Sun User Group announcements, Product announcements, Company newsletters, newsletter table of contents (e.g. "HPCwire", "WEBster', "SPARCFlash"), trade magazine table of contents (e.g. "Advanced Systems", "Open Computing", "Sun Onserver"), Conference/Seminar/ Trade-Show announcements, Text Book announcements, Sponsored technical articles. John J. McLaughlin Editor/Publisher (flash@flashback.com) Available in a variety of formats: List name Description flashback daily flashback. Many articles will have just summaries for the articles posted. use the autoresponder to get the full text flashback-f full list - all articles - no summaries flashback-w weekly list - one summary article per week flashback-m monthly list - one summary article per week mt-flashback summary article in the message body, and all articles included as MailTool style attachemensts mime-flashback like mt-flashback, but with MIME attachements mt-flashback-w like mt-flashback but once per week mime-flashback-w like mime-flashback but once per week Subscribe by sending email to majordomo@flashback.com The message body should contain the word subscribe followed by one of above lists names. E.g. subscribe mt-flashback Send for intro (article 9001), help, index or fullindex to flashback@flashback.com. ftp archives on draco.nova.edu pub/sunflash WWW files on draco.nova.edu pub/sunflash/www URL ftp://draco.nova.edu/pub/sunflash/www/index.html NOTE!!! if you wish to be added to one of the above mailing lists, send mail to the REQUEST address! Do not send add requests to the main address! Last Updated: January 25, 1995. 24) How do I use Mac floppies in a SUN drive? You can not use "real" Mac floppies without buying either one of the emulator packages like Liken from Andataco(?) or Mae from Apple (only runs on Solaris2.3 or above). They is another product or two that just allows you to mount Macintosh floppies onto your Sun but the vendors and product names escape me now. That said if all you want to do is exchange files the easiest way is to use suntar on the Macintosh to copy files to a "high density" floppy. Then you can use "tar" or "bar" on the Sun to get the files off this floppy. It is available from ftp.ece.uc.edu(129.137.8.118) as /pub/sun-faq/Source/suntar-203.hqx or visit the Info Mac archives at wuarchive.wustl.edu. or You could use the Apple File Exchanger to translate the files to MS-DOS format. Then use one of the many methods for transferring MS-DOS disks to Sun. System 7.5 now mounts dos floppies automatically no need for Apple File Exchanger. These methods should only be used with files like ascii files, wordprocessor files, and spreadsheet data files. Mac application programs should not be transfered. Finally, low density Mac floppies are not compatable with Sun floppy drives. Last Updated: January 27, 1995. 25) How can I transfer floppies back and forth between MS-DOS and Sparc? For Solaris2.2 and above you can use the Volume Manager to control your disks and CD-ROM's. Under SunOS 4.0 there are two packages which allow you to do mount floppies (mtools and mntdisk). Both of these packages use the 3-1/2inch floppy drive available on most SPARCstations. Mntdisk can be used to manage CD-ROMS and other removable media types as well. With the advent of the Volume manager in Solaris2.2 these programs have been rendered somewhat obsolete. Under Solaris2.x use volcheck -v to check in a floppy. Than you can use normal UNIX commands on this floppy like cd, mkdir, cp, mv, and ls. It usually gets mounted on /vol/floppy0 Mtools writes directly to the floppy device and it does not require any special privileges. It is faster than mntdisk but it requires the user to learn a new set of commands. A copy of mtools can be found at ftp.ece.uc.edu:/pub/sun-faq/Source/mtools-2.0.7.tar.Z With the proper changes to the source code mtools can even be made to work with the Solaris2.x Volume Manager. All you need to do is make mtools look in /vol/dev/diskette/... for the floppy devices. mntdisk "mounts" the floppy using the "pcfs" filesystem type. Once mounted you can use regular UNIX commands(cp,mv,and rm) to access it. The pcfs filesystem is quite slow compared to using mtools above. Mntdisk is available in your local comp.sources.misc archive, Volume 22, Issues 31-33. Mntdsk can be used to mount CD-ROMS and even UFS floppies. You should never use "setuid" shell scripts for mounting floppies. Also, C programs that use the system() function call should not be used either. Both can open up huge security holes which hackers can be used to break into your system. Last Updated: January 27, 1995. 26) Why is my biff not "biffing" when using biff in a networked environment? In its current form comsat/biff are only usable on the mail server. You need to replace them network capable programs. A shar file containing network capable versions of comsat and biff is available from ftp.ece.uc.edu. Get the file /pub/sun-faq/Source/biff-comsat. 27) How do I disable L1-A(STOP-A) or re-map it? You need to get one of the many re-mapping programs. Two of these are available from ftp.ece.uc.edu. Get the file disable-L1-A.tar.Z Always password protect your NVRAM. Set the security to command otherwise anyone can set this password to anything they want. Of course you can get it back as root by doing a strings /dev/eeprom and it should show up in plain text. This assumes you have root access. 28) Why are all the local users "unknown" when using sendmail under 4.1.2? There is a known problem with sendmail and frozen config files under 4.1.2. The fix is to remove /etc/sendmail.fc. Also, You could try moving it to the end of /etc/rc.local. However, the best "fix" may be to install the new Berkeley Sendmail it has a number of enhancements, performance improvements, and security enhancements. You can get Berkeley sendmail from ftp.cs.berkeley.edu(128.32.149.78). Get the following files: /ucb/sendmail/*8*6*9* /ucb/4bsd/db.tar.Z Also, you will need bind 4.9 and it can be found on gatekeeper.dec.com(16.1.0.2) in the /pub/BSD/bind/4.9 directory. Finally, if you do not want to build the Berkeley sendmail for yourself I will be willing to mail you a copy. 29) What are the dump parameters for an exabyte 8200 or 8500? 8200 -- dump 0budfs 126 54000 /dev/rst0 6000 filesystem 8500 -- dump 0budfs 126 54000 /dev/rst0 13000 filesystem Note: Under 4.1.2 and above you should use rst8. Previous versions did not do anything special for the 8500. Note: These parameters are not needed for 5.1.x because it computes these values from the type of Tape Drive you are using. Also, 5.1.x knows about end of tape and does the right thing when it reaches it. 30) What are the guidelines for setting up swap space ? In SunOS 4.x the amount of swap space and Virutal memory are one in the same so you need at least as much swap as real memory. In SunOS 5.x the amount of Virutal memory is equal swap space plus real memory. Under SunOS 5.x you can actually get away with having no swap space at all. We are running a SPARCserver 1000 with no swap and 192-Meg of real memory. Of course you will end up wasting some space because things that really could be swapped out can not be. The old rule of thumb is 1.5 to 2 times real memory. This can lead to wasted disk space (by having too much swap space) or to not having enough. What you need to do is to estimate your swap space needs. Of course if you under-estimate your swap needs or periodically need additonal swap space you can use mkfile to create a swapfile (ie mkfile 25m swapfile). Do not use the "-n" option on local swap files. This option should be only used for NFS mounted swap space. To use you new swap space you can use the following commands: swapon /fullpath/to/file -- SunOS 4.x or swap -a /fullpath/to/file -- SunOS 5.x To delete the swap space under SunOS 4.x you have to reboot. In SunOS 5.x you can delete swap space using swap -d . You can also turn swap space into filesystem space by mounting a tmpfs filesystem in swap. A tmpfs file is not completely equivalent to a disk file, since file and record locking is not supported. However tmpfs is nice since you now have one block of disk being shared by the swap space and the filesystem, with the split being dynamically changed depending on usage. Finally, if you use X and tend to leave many applications in core in various windows, you'll need much more swap space. Last Updated: July 7, 1995. 31) What are the general guidelines for maxusers to be set to on machine X? This question is being written. 32) What does "zsN: silo overflow" mean? The CPU serial ports - both ordinary serial ports A and B, and the port for the keyboard and mouse - use the Zilog Z8530 SCC chip. That chip has a 3-character on-board buffer called the "silo". If a character arrives in the silo, the chip interrupts the CPU at a high priority, and the interrupt service routine reads the character out of the silo. If the interrupt isn't serviced in time, more than 3 characters can be placed in the silo by the chip; if so, the chip notes that the silo "overflowed", and the interrupt service routine, when called, will note that a "silo overflow" occurred. If the machine is printing a message from the kernel, interrupts from the chip will be held off; if the message takes long enough to print, and characters are coming in quickly enough on the serial port, more than 3 can arrive, and a "silo overflow" will occur. It is possible that a machine that's sufficiently busy in other code that runs with interrupts held off could get a silo overflow as well. 33) What does the "N" in "zsN: silo overflow", and other "zsN" messages, signify? The name "zsN" is ambiguous. In kernel "config" files, and in the boot-time autoconfig messages, "zs0" is the first on-board Z8530 chip, the two channels of which handle "ttya" and "ttyb", respectively, and "zs1" is the second on-board Z8530 chip, the two channels of which handle the keyboard and mouse ports, respectively. In "zsN: silo overflow" messages and the like: "zs0" is the A channel on the first on-board Z8530, handling "ttya"; "zs1" is the B channel on the first on-board Z8530, handling "ttyb"; "zs2" is the A channel on the second on-board Z8530, handling the keyboard; "zs3" is the B channel on the second on-board Z8530, handling the mouse. So a "zs0: silo overflow" error is for "ttya", and a "zs1: silo overflow" error is for "ttyb", not for the keyboard or mouse. Keyboard silo overflows are "zs2: silo overflow"; mouse silo overflows are "zs3: silo overflow". 34) How do I set up a Sun serial port both for dial-in and dial-out? You need to read Chapter 11 in the "Systems and Network Administration" manual. 35) I can't get my Sun, running SunOS 4.1[.x], to establish a UUCP connection to some non-Sun machine; it won't log in. What's wrong? The 4.1[.x] UUCP normally runs in even-parity mode when logging into another machine. If the other machine is running in 8 bits, no parity, mode, the fact that the 8th bit is set on some of the characters the Sun is sending to it will confuse it. The Sun can be made to turn the 8th bit off by putting P_ZERO into the "expect / send" sequence for dialing. Good places are /etc/uucp/Systems or /etc/uucp/Dialers. Putting it into the Dialers file has the advantage, that it's compatible with Taylor UUCP 1.04 and 1.05. You might want Taylor UUCP for better UUCP throughput using Taylor UUCP's bidirectional i-proto. Here is an example for the /etc/uucp/Dialers file, it introduces additionally the option of using Hardware Handshaking between modem and computer: zyxel =,-, "" P_ZERO "" \dA\pTM1S42.6=1\r\c OK\r \EATDT\T\r\c CONNECT STTY=crtscts Note: this has to be _ONE_ line !!! Last Updated: April 27, 1995. 36) Do the Sun serial ports support RTS/CTS flow control? The serial port hardware can do CTS-based control of the flow of data *from* the Sun *out* the serial port automatically. The tty driver option for that is the CRTSCTS option; it can be specified in: the "printcap" "ms" capability for a printer; in the "gettytab" "ms", "m0", "m1", or "m2" capabilities for a dial-in port; the "STTY=" option for a dial-out line for UUCP or "cu" [check the UUCP documentation for details]; and can be specified with the "hf" capability in "/etc/remote" for "tip". The hardware cannot directly do RTS-based control of the flow of data *into* the Sun, and the software does not currently support controlling the flow of data into the Sun with RTS. NOTE: the EEPROM options in newer Suns do not affect the flow control performed by the OS; in fact, the OS ignores the "ttya-mode", "ttyb-mode", "ttya-rts-dtr-off", and "ttyb-rts-dtr-off" EEPROM options entirely. You don't need to set them to change the way the OS handles the tty, and even if you do set them, it won't change the way the OS handles the tty. Sun has released a new jumbo tty patch 100513-04 for SunOS 4.1.2 and 4.1.3 that incorporates changes to the tty driver to support RTS/CTS handshaking. Anyone trying to get RTS/CTS handshaking to work should get this patch. 37) How do I specify that a serial port should, or should not, ignore the state of the Carrier Detect line? Prior to SunOS 4.1, you do so either by: changing the "flags" field for the serial port device in the kernel "config" file, re-running "config", rebuilding the kernel, and rebooting with the new kernel; or, on the Sun-4c machines: changing the setting of the "ttya-ignore-cd" or "ttyb-ignore-cd" EEPROM settings if the port is one of the CPU serial ports. In SunOS 4.1 (and, I think, some SunOS 4.0[.x] releases for the Sun386i), you do so by changing the "/etc/ttytab" line for the port in question to have the "local" attribute if CD is to be ignored, or not to have it if CD is not to be ignored, and running the "ttysoftcar" command to tell the kernel that the status of the "ignore CD" flag should be changed. In 4.1, there's no need to change the EEPROM setting to change SunOS's behavior; it may affect the PROM's behavior, but that's the only reason why it'd be necessary. 38) I put in a new "termcap" entry, or updated an existing "termcap" entry, for a terminal, but "vi" doesn't seem to know about my change. Why? The "vi" in SunOS 4.1[.x] is based on the System V Release 3.1 "vi", because that version of "vi" supports 8-bit character sets. That version of "vi" uses "terminfo", not "termcap"; you have to change the "terminfo" entry for the terminal. You may first have to convert the compiled "terminfo" entry to a text entry; "/usr/5bin/infocmp -I " will write the text of the "terminfo" entry for the terminal to its standard output. If you already have a "termcap" entry, you can convert it to a "terminfo" entry with "/usr/5bin/captoinfo". A text "terminfo" entry must be recompiled in order for programs using "terminfo" to use it; "/usr/5bin/tic" will recompile it. 39) I have a Type 5 keyboard, and find its placement of the Caps Lock, Control, and Esc keys inconvenient. How do I remedy this? Well, one remedy may be to buy the "UNIX layout" version of the Type 5; this option seems, unfortunately, to be little-known to Sun customers, and Sun may not be promoting it as they should. That keyboard has a layout much more friendly to the traditional UNIX user than do the normal PC-style layouts for the Type 5. If you don't have that option, you can use the appropriate program to reprogram the keys; see the next question. 40) How can I move keys around on a Sun keyboard, for example exchanging the Caps Lock and Control keys on a Type 5 keyboard? It depends on which window system you're running, if any. If you're not using any window system, or you're using a window system such as SunView that uses the OS's keyboard event translation mechanism, you can dump the tables used by the OS's keyboard event translation mechanism with the "dumpkeys" command, and load changes to that table with the "loadkeys" command; see LOADKEYS(1). If you're using X11 - either in its MIT incarnation, or Sun's Open Windows incarnation - or some other window system that shuts off the OS's keyboard event translation mechanism, you need to use the window system's commands, if any, for that function. In X11, the command for that is "xmodmap"; its translation tables can be printed with "xmodmap -pk", and changes to that table can be loaded with "xmodmap" as well. NOTE: in the particular case of the Control and Caps Lock keys, while MIT X appears to handle interchanging those two keys correctly, so that the new Caps Lock key is a toggle and the new Control key is not, some versions of Open Windows do not - even though the keys have had their mappings exchanged, the window system server still thinks that the *old* Caps Lock key, which is now the Control key, should be a toggle, and that the *old* Control key, which is now the Caps Lock key, should not be a toggle. [Here is a work-around for this problem, provided by Mark Plotnick (mp@allegra.att.COM)]: Copy the appropriate keytable (e.g. /usr/openwin/etc/keytables/US4.kt) to $HOME/.keytable, and change the 2nd attribute character in a key's attributes field to N or P depending on whether the key should have "pseudolock". $ diff /usr/openwin/etc/keytables/US4.kt /usr/gre/.keytable 78,79c78,79 < lock 119 # CapsLock < control 76 # Control --- > lock 76 # CapsLock > control 119 # Control 226c226 < 76 NN XK_Control_L --- > 76 NP XK_Caps_Lock 278c278 < 119 NP XK_Caps_Lock --- > 119 NN XK_Control_L 41) My Sun doesn't have an ANSI C compiler. How can I get one? SunOS releases prior to 5.x come with a C compiler. However, it was an old compiler, and it didn't support ANSI C syntax or ANSI C features. The SunSoft Catalyst CD #5 contains the binaries for the GNU C compiler for Solaris 1.x and 2.x. You should get the latest version of GCC and compile it using this compiler. Many vendors offer ANSI C compilers for SunOS. Sun sells Sun C 1.1 for SPARC, which includes an ANSI C compiler (although not a full ANSI C environment, i.e. it doesn't necessarily include all the ANSI C include files or library routines); various other vendors (Lucid? Others?) sell ANSI C compilers as well. The Free Software Foundation's GCC also supports ANSI C syntax and ANSI C features. It can be FTP'ed in source form from many sites, and in binary form from some sites. A compiled version of the latest GCC for SunOS 5.x is available from prep.ai.mit.edu. The directory containing these files is /pub/gnu/sparc-sun-solaris2 You need to get the following files: gzip-binaries-1.x.x.tar INSTALL.gcc gcc-binaries-2.x.x.tar.gz Note: You need the gzip binaries to ungzip the gcc binaries. After obtaining GCC, you will need to run fixincludes. The INSTALL.gcc file will tell you how. Note: The following sites mirror the GNU software distribution from prep.ai.mit.edu: ASIA: utsun.s.u-tokyo.ac.jp:/ftpsync/prep, cair.kaist.ac.kr:/pub/gnu AUSTRALIA: archie.oz.au:/gnu (archie.oz or archie.oz.au for ACSnet) AFRICA: ftp.sun.ac.za:/pub/gnu MIDDLE-EAST: ftp.technion.ac.il:/pub/unsupported/gnu EUROPE: irisa.irisa.fr:/pub/gnu, grasp1.univ-lyon1.fr:pub/gnu, ftp.mcc.ac.uk, unix.hensa.ac.uk:/pub/uunet/systems/gnu, src.doc.ic.ac.uk:/gnu, ftp.win.tue.nl, ugle.unit.no, ftp.denet.dk, ftp.informatik.rwth-aachen.de:/pub/gnu, ftp.informatik.tu-muenchen.de, ftp.eunet.ch, nic.switch.ch:/mirror/gnu, nic.funet.fi:/pub/gnu, isy.liu.se, ftp.stacken.kth.se, ftp.luth.se:/pub/unix/gnu, archive.eu.net CANADA: ftp.cs.ubc.ca:/mirror2/gnu USA: wuarchive.wustl.edu:/mirrors/gnu, labrea.stanford.edu, ftp.kpc.com:/pub/mirror/gnu, ftp.cs.widener.edu, col.hp.com:/mirrors/gnu, ftp.cs.columbia.edu:/archives/gnu/prep, gatekeeper.dec.com:/pub/GNU, ftp.uu.net:/systems/gnu You should check the site close to you before ftping to prep. 42) How do I change the time zone setting on my machine? In releases prior to SunOS 4.0, you will have to reconfigure your kernel, recompile it, install the new kernel, and reboot. See the documentation on kernel configuration. In SunOS 4.0 and later releases, you will need to run the "zic" command with the "-l" flag, with the appropriate time zone setting as the argument. For example, to set the time zone to US Eastern Time, do: zic -l US/Eastern to set it to the proper setting for Great Britain and Eire, do: zic -l GB-Eire and so on. You will then probably want to reboot your machine, in order to: 1) cause any daemons started before the time zone was changed to restart, and pick up the new time zone; 2) run "tzsetup" for the benefit of old pre-SunOS 4.0 binaries, old programs not converted to use the new routines to convert local time to UNIX time, and Calendar Manager. You can also manually link "/usr/share/lib/zoneinfo/localtime" to the appropriate time zone file, but there's really no point in doing so when "zic -l" will do that for you. In Solaris 2.x, you do it the same way you do it on any other SVR4 system - you put a line that says TZ=