Solaris x86 FAQ
Archive-name: Solarisx86/faq
Posting-Frequency: monthly
Last-modified: 1999/5/21
URL: http://sun.pmbc.com/faq/
Version: 2.2
Copyright: Copyright © 1997, 1998, 1999 Dan Anderson. All rights reserved.
Maintainer: Dan Anderson <danx@cts.com>, San Diego, California, USA
_________________________________________________________________
(1.0) TABLE OF CONTENTS
(2.0) INTRODUCTION
(3.0) RESOURCES
(3.1) What FTP and web sites do I need to know about?
(3.2) How do I subscribe to the Solaris/x86 mailing list?
(3.3) Where can I obtain Solaris 2/x86 driver updates?
(3.4) Where can I obtain Solaris 2/x86 patches?
(3.5) How can I obtain freeware, shareware, and GNU software on a
CD-ROM?
(3.6) What UNIX-like operating systems are available on x86?
(3.7) What books are available on Solaris x86?
(3.8) What magazine articles are available on Solaris x86?
(3.9) What's new for release 7 of Solaris/x86?
(3.10) What's new for the next release of Solaris/x86?
(4.0) PRE-INSTALLATION
(4.1) What information should I have before an install?
(4.2) What hardware is supported by Solaris 2.x for Intel?
(4.3) What size disks and partitions should I have?
(4.4) What are SCSI IDs expected by Solaris x86?
(4.5) What video card/monitor combination works best?
(4.6) Is Plug-and-Play (PNP) supported by Solaris/x86?
(4.7) Is Advanced Power Management (APM) supported by Solaris/x86?
(4.8) What are the pitfalls of different busses: PCI/ISA/EISA?
(4.9) Are "floppy tape" devices supported by Solaris x86?
(4.10) How can I get a "free" copy of Solaris?
(4.11) What's missing from the "free" copy of Solaris that's in
the commercial version?
(4.12) How can I get Solaris to see the third IDE controller?
(4.13) Are Ultra DMA (UDMA) drives supported?
(4.14) Are Universal Serial Bus (USB) devices supported?
(4.15) Are Microsoft Intellimouse mice supported?
(4.16) What's difference between Solaris x86 Server and Solaris
x86 Desktop?
(5.0) INSTALLATION
(5.1) How long does the install take?
(5.2) My IDE/ATAPI CD-ROM isn't recognized during install by
Solaris' FCS MCB and it's not in the HCL. What can I do?
(5.3) What kind of problems might I encounter installing my SCSI
system?
(5.4) What do I do when the install hangs/panics?
(5.5) I'm trying to install Solaris/x86 on my 8 GB drive. However,
the installation program says the root partition must end within the
first 1023 cylinders of the disk. What can I do?
(5.6) Does Solaris x86 prefer to have the motherboard BIOS set to
NORMAL or LBA for IDE disks?
(5.7) Why does a Solaris install to a disk with valid,
pre-existing fdisk partitions sometimes fail?
(5.8) How do I install or use the documentation CD?
(6.0) POST-INSTALLATION (CUSTOMIZATION)
(6.1) How do I add additional drives?
(6.2) How do I add or configure users, printers, serial ports,
software, etc.?
(6.3) How do I suppress the banner page on my printer?
(6.4) How do I set up an HP-compatible printer to print PostScript
files?
(6.5) How can I improve disk and graphic performance?
(6.6) How do I get Solaris to recognize a NE2000 compatible NIC
card?
(6.7) How do I change the IP address on Solaris/x86?
(6.8) How do I configure a second serial port, /dev/ttyb (COM2)?
(6.9) How do I disable Solaris/x86 from probing the UPS on COM2?
(6.10) How do I set up Solaris/x86 to use PPP to connect to an
ISP?
(6.11) That last answer was torture! Is there any open source PPP
that's easier to use?
(6.12) Is there any commercial PPP that's easier to use?
(6.13) Help! My USRobotics Internal modem doesn't work with PPP.
(6.14) PPP runs extremely slow. What's wrong?
(6.15) How do I configure PPP using Dynamic IP Addresses (DHCP)?
(6.16) How do I configure my SoundBlaster card?
(6.17) How do I enable the audio output from my CDROM to my SBPRO
card?
(6.18) Is Solaris/x86 Year 2000 (Y2K) compliant?
(6.18) Can I use Solaris/x86 to setup a "headless" server?
(6.20) Can I get a Sun-style keyboard (Ctrl & Caps Lock reversed)
for S/x86?
(6.21) + Can I run multiple terminals on the console of Solaris
x86 like those supported on Linux, FreeBSD, Interactive Unix, and SCO?
(6.22) How do I upgrade my video graphics card?
(6.23) How to I burn a CD-R or CD-RW with Solaris?
(6.24) Is IPv6 available for Solaris/x86?
(6.25) Does Solaris x86 support multiple processors?
(6.26) + How do you install XFree86 on Solaris?
(6.27) How do I configure 64K colors for CDE?
(6.28) Are TrueType fonts supported in Solaris?
(6.29) How do I uncompress a .gz file?
(6.30) Why doesn't /usr/bin/cc work?
(6.31) How do you get PGP 2.6.2 to compile on Solaris/x86?
(6.32) How do you connect Solaris to @Home?
(7.0) TROUBLESHOOTING
(7.1) What can I do if Solaris won't boot?
(7.2) How do I restore the Solaris boot block without
reinstalling?
(7.3) What can I do during the Solaris/x86 booting sequence?
(7.4) How do I logon as root if the password doesn't work anymore?
(7.5) My licensed software fails because the host ID is 0. What's
wrong?
(7.6) How can I fix Netscape Communicator to render fonts
correctly on S/x86?
(7.7) I moved my PCI host adapter to another slot and the system
won't boot!
(7.8) Why is Solaris always booting into the Device Configuration
Assistant?
(8.0) INTEROPERABILITY WITH OTHER OPERATING SYSTEMS
(8.1) Can I install Solaris x86 on a system that already has Win
9x or NT or both (among other systems)?
(8.2) How can I use MS Windows' NT Loader to boot Solaris/x86?
(8.3) How can I use the Solaris boot manager to boot Windows NT?
(8.4) How can I use System Commander to boot Solaris/x86 and other
systems?
(8.5) Can I install Linux and Solaris on the same drive?
(8.6) How can I use Linux LILO boot loader to boot Solaris/x86?
(8.7) How can I use LILO to boot Solaris/x86 on the primary slave
IDE?
(8.8) How can I use LILO to boot Solaris/x86 on the secondary
master IDE?
(8.9) How can I use OS-BS or System Selector to boot Solaris/x86?
(8.10) How can I boot both Solaris/x86 and Win NT on the same
disk?
(8.11) How do I mount a DOS partition from the hard drive?
(8.12) Does PartitionMagic and BootMagic understand Solaris
partitions?
(8.13) How do I access a DOS-format diskette from Solaris?
(8.14) Does Solaris mount and recognize Win 9x partitions with
long file names (VFAT)?
(8.15) How can I make my Solaris files easily available to Windows
9x/NT on a network?
(8.16) How can I make my Solaris files easily available to an
Apple Machintosh on a network?
(8.17) How do I access a Mac diskette from Solaris?
(8.18) What is WABI?
(8.19) Can I use SunPCi on Solaris/x86?
(8.20) Will Linux programs run on Solaris 2/x86?
(8.21) How can I get the DOS and UNIX clock to agree on
Solaris/x86?
(8.22) Is Solaris x86 able to execute Solaris SPARC applications?
(8.23) Will my old applications from SVR3 or SCO run on Solaris
2/x86?
(8.24) Will my application from Solaris/SPARC work on
Solaris/x86? I have the source.
(8.25) Can I access Solaris/x86 partitions from Linux?
(8.26) What are some books on Windows NT/Solaris integration?
(8.27) How can I view MS Word files in Solaris?
(8.28) I downloaded Internet Explorer but it doesn't install.
What's wrong?
(8.29) Can I mount other ufs disks, say from BSDi/FreeBSD, and
vice versa?
(8.30) How can I use a disk partition on Solaris 2.x which was
previously dedicated to Windows 95 (or other OS) as dual boot?
(8.31) * How can I convert a DOS/Windows text file to a Unix test
file?
*New question since last month.
+Significantly revised answer since last month.
_________________________________________________________________
(2.0) INTRODUCTION
The Solaris x86 FAQ: Frequently-asked Questions about Solaris on Intel
- x86.
This posting contains frequently-asked questions, with answers, about
the Sun Solaris 2 Operating System on the Intel Platform (x86) found
in the alt.solaris.x86 and comp.unix.solaris USENET newsgroups. The
alt.solaris.x86 newsgroup covers Solaris on the Intel platform, for
version 2.5 and higher. The most up-to-date copy of this FAQ is at
http://sun.pmbc.com/faq/
The comp.unix.solaris newsgroup is for Solaris on all platforms--
Sparc or Intel. Please also consult Casper Dik's excellent FAQ on
Solaris 2, which mostly applies to Solaris x86 too. It's at:
http://www.wins.uva.nl/pub/solaris/solaris2/ and elsewhere.
Solaris 7 is also known as SunOS 5.7 and Solaris 2.x is also known as
SunOS 5.x.
For earlier versions of Solaris/x86, please see the (somewhat dated)
"Solaris 2.4 x86 FAQ" by Bob Palowoda archived at various dusty
corners on the net. The (mostly historical) Sun i386 (Roadrunner) is
covered in Ralph Neill's FAQ,
http://www.sunhelp.com/386i/faq.html.
If you post questions to alt.solaris.x86 or comp.unix.solaris, please
be sure to indicate:
* the machine type and brief configuration, e.g. Pentium II 450 MHz,
128 MB RAM, 200 MB swap space, 8 GB XYZ hard drive, etc.,
* the exact Solaris version number, i.e. Solaris 7 is NOT
sufficient, whereas "Solaris/x86 7 HW 3/99" is more useful.
I'm doing this on my own time as a public service. PLEASE DO NOT ASK
ME QUESTIONS THAT SHOULD BE ASKED OF SUN. Although I am now employed
by Sun Microsystems, as of February 1999, I do not work on this
particular product. Nothing I say is endorsed or approved by Sun. If
you suspect you have software defect problems, please call
1-800-SOFTSPT (1-800-763-8778 or 1-510-460-3267). If you have hardware
problems call your hardware vendor. If you are outside the United
States, contact your local Sun representative.
PLEASE DO NOT ASK ME QUESTIONS THAT SHOULD BE POSTED TO
alt.solaris.x86 or comp.unix.solaris. I don't have the time to
diagnose individual Solaris problems, and I probably don't know the
answer either :-). Many experienced and knowledgeable people read the
newsgroup. Post your question there. However, answers, corrections,
and comments should be directed to me.
No FAQ is the work of one person, but is a USENET community effort.
This material was "snarfed" from other FAQs, USENET newsgroup
postings, mailing lists, and personal knowledge. Generally the source
is noted at the end of each question. Most answers have been reworded,
or expanded, or updated. Thanks to everyone who contributed directly
or indirectly. Please send any corrections or additions to me.
This FAQ is Copyright © 1997, 1998, 1999 Dan Anderson. All rights
reserved. It may be freely redistributed in its entirety provided that
this copyright notice isn't removed. Permission is expressly granted
for this document to be made available for file transfer from
installations offering unrestricted anonymous file transfer on the
Internet.
This article is provided "as is" without any express or implied
warranty of merchantability or fitness for a particular purpose. The
answers come from many varied sources, and, "may be fiction rather
than fact." Therefore, THE AUTHOR ASSUMES *NO* RESPONSIBILITY FOR
ERRORS OR OMISSIONS, OR FOR DAMAGES RESULTING FROM THE USE OF THE
INFORMATION CONTAINED HEREIN, even if they result from negligence or
errors on the part of the author.
Sun, the Sun logo, Sun Microsystems, SunSoft, the SunSoft logo, Java,
Solaris, SunOS, and NFS are trademarks or registered trademarks of Sun
Microsystems., Inc. SPARC is a registered trademark of SPARC
International, Inc. in the United States and other countries. Products
bearing the SPARC trademarks are based on an architecture developed by
Sun Microsystems, Inc. Adobe and PostScript are registered trademarks
of Adobe Systems Incorporated. HP is a trademark of Hewlett-Packard
Company. IBM is a registered trademark of International Business
Machines Corporation. Intel and Pentium are registered trademarks of
Intel Corporation. Pentium® II Xeon is a trademark of Intel
Corporation. Linux is a registered trademark of Linus Torvalds.
Microsoft, MS, MS-DOS, MS Windows, and Windows NT are registered
trademarks of Microsoft Corp. Netscape is a trademark of Netscape
Communications Corp. Netscape® Communicator is a trademark of Netscape
Communications Corp. Open Source is a registered certification mark of
Open Source Initiative. UNIX is a registered trademark of The Open
Group. All other product names mentioned herein are the trademarks of
their respective owners.
-Dan Anderson danx@cts.com
alt.solaris.x86 FAQ Maintainer
San Diego, California, USA
_________________________________________________________________
(3.0) RESOURCES
(3.1) What FTP and web sites do I need to know about?
http://sun.pmbc.com/faq/
The latest version of this FAQ is always at this URL. It's
available in text and HTML formats. This FAQ also appears in
the alt.solaris.x86 and comp.unix.solaris newsgroups and on
various FAQ archives. Check the date at the top of this FAQ to
make sure you have a recent version.
http://www.Sun.COM/
Sun's main web site, contains pointers to Solaris product
information, press releases, etc.
http://soldc.Sun.COM/
Sun's Software Support and Education website. Has x86 driver
updates (DUs), knowledge base, Hardware Compatibility This
website requires (free) registration to use. It replaces the
older http://access1.Sun.COM/ site.
http://docs.Sun.COM/
Sun documentation on-line. Includes manuals, guides,
answerbooks, and man pages in HTML format. Especially useful
for configuring new hardware and new systems is the Information
Library for Solaris (Intel Platform Edition).
http://sun.pmbc.com/bookstore/
My Solaris online bookstore, in association with Amazon.com,
where you can read reviews on selected Solaris books and order
Solaris or other books.
http://www.stokely.com/unix.sysadm.resources/faqs.sun.html#s86.fa
qs.link
Stokely Consulting's list of FAQs has lots of pointers
resources, not only for Solaris x86, but UNIX System
Administration in general.
http://www.eis.com/html/x86links.html
EIS's Solaris/x86 Resources page with lots of pointers. EIS
also maintains the Solaris on Intel mailing list (below).
http://sunfreeware.com/
S. Christensen's Solaris Freeware Page. Pointers to LOTS of x86
pre-packaged GNU and other open-source software.
http://home1.swipnet.se/~w-10694/helpers.html
Pointers to many Solaris viewers, players, and Netscape
plug-ins.
http://metalab.unc.edu/pub/packages/solaris/i86pc/
Selected Solaris 2.x/x86 binaries conveniently packaged in
pkgadd format at the University of North Carolina MetaLab
(formerly Sunsite).
ftp://x86.cs.duke.edu/pub/solaris-x86/bins/index.html
Joe Shamblin's annotated collection of Solaris x86 open source,
with pointers to documentation, make it good for open source
browsing.
http://fishbutt.fiver.net/
Bob Palowoda's Solaris x86 Corner, with tips and benchmarks.
http://sun.pmbc.com/
My Solaris Intel Webpage has includes a search engine that
indexes selected websites containing Solaris Intel information,
including those listed here. Also contains the latest version
of this FAQ and my online bookstore (in association with
Amazon.com).
http://www.wins.uva.nl/pub/solaris/solaris2/
Last, but not least, Casper Dik's thorough FAQ on Solaris 2.
This entire FAQ is available as one file at:
http://www.wins.uva.nl/pub/solaris/solaris2.html
_________________________________________________________________
(3.2) How do I subscribe to the Solaris/x86 mailing list?
Subscribe by sending an e-mail message to
<solarisonintel-subscribe@egroups.com> or visit the eGroups'
Solaris on Intel web page at
http://www.egroups.com/group/solarisonintel/ You DON'T have to
register to join the list, but you do have to register to read the
list archives on the web (sorted by thread and date).
_________________________________________________________________
(3.3) Where can I obtain Solaris 2/x86 driver updates?
The Solaris x86 driver updates can be obtained by HTTP from:
http://soldc.Sun.COM/support/drivers/ They are also available
with FTP from: ftp://ftp.uu.net/vendor/sun/solaris/x86/
[Updated from Casper Dik's Solaris 2 FAQ]
_________________________________________________________________
(3.4) Where can I obtain Solaris 2/x86 patches?
The Solaris x86 driver updates can be obtained by HTTP from:
ftp://sunsolve.Sun.COM/
A listing sorted by release is available at:
http://sunsolve.Sun.COM/pub-cgi/us/pubpatchpage.pl
Pointers to patches, including one huge 2.*_x86_Recommended.tar.Z file
for each release. This directory is publically accessible--it doesn't
require you to be a contract customer. Patches are also available
locally at many SunSites.
The "showrev -p" command shows what patches you have installed.
All files replaced by a patch are saved under /var/sadm/patch/ or
/var/sadm/pkg/
_________________________________________________________________
(3.5) How can I obtain freeware, shareware, and GNU software on a
CD-ROM?
Micromata of Kassel, Germany offers its "Summertime" CD with
precompiled software for Solaris SPARC and Intel,
http://www.micromata.com/summertime/
EIS offers the "Solaris Companion CD." It reportedly offers the same
binaries as Summertime, and some additions. The SPARC and Intel
binaries are sold on separate CDs. See http://www.eis.com/
See question 3.1 above for FTP and web software sites.
_________________________________________________________________
(3.6) What UNIX-like operating systems are available on x86?
* Solaris x86, SVR4-based (http://www.Sun.COM/)
* Interactive UNIX, SVR3.2-based
(http://www.Sun.COM/software/ius/)
* SCO OpenServer UNIX, SVR3.2-based (http://www.sco.com/)
* SCO UNIXWare, SVR4-based (http://www.sco.com/)
* BSD/OS (http://www.bsdi.com/)
* Linux (http://www.linuxresources.com/, open source)
* FreeBSD (http://www.freebsd.org/, open source)
* NetBSD (http://www.netbsd.org/, open source)
* OpenBSD (http://www.openbsd.org/, open source)
Note that the open source versions can also be purchased on CD-ROM,
which is a convenient way to get it. For Linux, there are multiple
vendors selling CD-ROMs (e.g., RedHat, http://www.redhat.com/).
Other systems are over the horizon, in beta, or for teaching/research.
E.g., GNU's HURD, Apple's Rhapsody, Tanenbaum's Minix, or ATT's Plan
9.
Of course, Intel's 64-bit Merced or McKinley CPU families (or both)
are coming. Sun, HP, SCO, and DEC are all porting their versions of
UNIX, Solaris, HP-UX, UNIXWare, and Digital UNIX, to this chip.
_________________________________________________________________
(3.7) What books are available on Solaris x86?
For Unix system administration in general, I like Unix System
Administration Handbook, 2d ed. ("The Red Book"), by Evi Nemeth, Garth
Snyder, Scott Seebass, and Trent R. Hein (Prentice Hall, 1995), ISBN
0-13-151051-7 http://sun.pmbc.com/bookstore/#0131510517
Ron Ledesma has written PC Hardware Configuration Guide for DOS
and Solaris (SunSoft Press, 1994), ISBN 0-13-124678-X,
http://sun.pmbc.com/bookstore/#013124678x. It's a well-written,
but dated, book on setting up Solaris x86 on Intel Architecture.
There's also Solaris 2.X for Managers and Administrators by Curt
Freeland, Dwight McKay, Kent Parkinson, 2d ed. (1997), ISBN:
1-56690-150-2, http://sun.pmbc.com/bookstore/#1566901502
The following two books by Janice Winsor cover Solaris 2.6 for SPARC
and x86. They are from Sun Microsystems/Macmillan Technical
Publishing. I find they cover the subject matter too lightly, but they
may be good for beginners: Solaris System Administrator's Guide,
2d ed. (1998), ISBN 1-57870-040-X,
http://sun.pmbc.com/bookstore/#157870040x, and Solaris
Advanced System Administrator's Guide, 2d ed., ISBN 1-57870-039-6,
http://sun.pmbc.com/bookstore/#1578700396,
Other books are available on Solaris in general from SunSoft Books and
on UNIX (with sections on Solaris) from O'Reilly and Associates.
Hardcopies of Sun manuals are available as SunDocs from SunExpress.
<BLATANT COMMERCIAL>
Please visit my on-line bookstore,
http://sun.pmbc.com/bookstore/, in association with Amazon.com,
where you can order books on Solaris or any other topic. I get paid a
few percent of most books ordered there.
<END BLATANT COMMERCIAL>
_________________________________________________________________
(3.8) What magazine articles are available on Solaris x86?
"Sun injects Solaris X86 with new life as it makes its way to 64 bits"
Sun World. Feb. 1997 by Rick Cook.
http://www.Sun.COM/sunworldonline/swol-02-1997/swol-02-solarisX86
.html
Note: please e-mail other submissions to danx@cts.com.
_________________________________________________________________
(3.9) What's new for release 7 of Solaris/x86?
The new release of Solaris/x86 (7.0) has more driver support, of
course. MCA (PS/2) hardware support and X-window's PEX & F3 font
support is dropped. A stripped-down Veritas Volume Manager is bundled,
more Java-based apps., updated sendmail 8.9 and bind 8.1, and man
pages are in SGML format instead of nroff.
A big change in Solaris 7 is its support for 64-bit virtual addresses
on UltraSPARCs, in contrast to 2.6 which has only 64-bit file offsets.
However, Solaris 7.0 does NOT support 64-bit virtual addresses on x86
(or on older SPARCs). Solaris/x86 7 should support Intel's Extended
Server Memory Architecture, with its 36-bit physical memory addresses
(64 GBmemory), on Pentium Pro, Pentium II Xeon, and beyond. Full Intel
64-bit functionality will have to wait for Sun's port of Solaris to
Intel's IA-64 (Merced/McKinley) chip.
[Thanks to Paul Eggert for clarifications]
_________________________________________________________________
(3.10) What's new for the next release of Solaris/x86?
Officially, Sun has announced these features
* The next release will be called Solaris 8
* "Full Moon" clustering. Allows a server to take over automatically
if another fails.
* "Full Moon" load balancing.
Officially, Solaris 9 will contain Integrated Java and Jini.
Here's some unconfirmed rumors of Solaris 8 features stated publically
by various people:
* Solaris 8 will FCS in 2000.
* ISA and EISA device support will end (use PCI!).
* It seems USB will be supported, since there is (or was) a USB
driver page on www.Sun.COM (see the question below on USB
support).
* Dual-headed monitors will be built-in Xsun (Xinerama, X11R6.4).
* The 8G boot disk limit for IDE disks will be removed.
* Sun will add Pyramid/Siemens-Nixdorf's Reliability, Availability
and Scalability (RAS) functionality and Reliant UNIX clustering
and scalability into Solaris. NCR will add MP-RAS (diagnostics,
remote support...). Fujitsu will add improved RAS and advanced
diagnostics.
Disclaimer: these are unconfirmed rumors: don't blame me if they they
are false and certainly don't do any planning based on it. I wouldn't
even plan on officially-announced future features, due to the
possibility of vaporware or unexpected problems.
[Thanks to Igor Sobrado Delgado, Thomas Tornblom, William Malloy, and
Paul Carver]
_________________________________________________________________
(4.0) PRE-INSTALLATION
(4.1) What information should I have before an install?
* Size of your disk
* Ethernet hardware address
* IP address
* Bandwidth of your video card and monitor
* Maximum vertical frequency your video card will drive
* Mouse type
The size of your disk determines what cluster you are going to install
on your system. I.e., an End User cluster, a Developers Cluster or the
Complete Cluster. See references to how to size your OS when
installing.
The Ethernet hardware address from your Ethernet card would be helpful
if you're on a NIS net and your going to do net installs. You would
like to have the Ethernet address in the /etc/ethers map file before
you do an install. Usually the manufacturer of an Ethernet card will
have some software that you can run under DOS to display this number
or sometimes you can find the Ethernet number on a sticker right on
the Ethernet card. If this is on a standalone network you probably
don't need to know the Ethernet hardware address. Don't confuse this
with the software IP address.
Bandwidth of your monitor and video card are important. During the
install the install process is going to ask you for the size of your
monitor and what vertical resolution you want to drive the monitor at.
Note that in the update disk documentation they give a handy dandy
monitor resolution bandwidth for monitors in the appendix. You may
want to check this out. See other references on video cards and
monitors throughout the FAQ.
The install process will ask you about your mouse type.
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(4.2) What hardware is supported by Solaris 2.x for Intel?
Solaris x86 is the version that runs on Intel-based PCs and servers.
Requirements vary to release, but generally a 80486 processor or
better is required with an ISA, EISA, or PCI bus, 16 MB of memory, and
200-500 MB Disk. Many multi-processor boards are supported. You must
have a CD-ROM drive or access to NFS over the network to install and a
1.44 MB floppy disk drive.
The Solaris x86 Hardware Compatibility List (HCL) lists the tested
hardware. However, not all hardware combinations will work. Also,
hardware not listed may work, but are not guaranteed or supported.
To receive the complete and often updated list Solaris x86 Hardware
Compatibility List (HCL), send an e-mail message (no subject/body
needed) to: x86hcl@Sun.COM (ASCII), x86hcl.ps@Sun.COM
(PostScript), or x86-hwconfig@Cypress.West.Sun.COM
There's also an online version of all the lists at:
http://soldc.Sun.COM/support/drivers/hcl/hcl.html
For troublesome devices and cards, I find Solaris 7 (Intel
Platform Edition) Device Configuration Guide at
http://docs.Sun.COM/ab2/coll.214.4/HWCONFIG/@Ab2TocView? very useful.
(if the link changed, go to http://docs.Sun.COM, click on
"Installation & Setup," then "Installation Collection," then "Device
Config. Guide." You'll also find the HCL and other guides.
[Updated from Casper Dik's Solaris 2 FAQ]
_________________________________________________________________
(4.3) What size disks and partitions should I have?
If you don't plan to install any optional software and man pages you
should typically have a 500 MB drive. Development systems should have
1 GB plus whatever space you need.
Note that Solaris uses a tmpfs. Both the swap area and /tmp share a
common disk space. Configure about 100 MB of swap space on a single
user system. Many programs use the tmpfs for speeding up applications.
My swap file is usually 1.5 times my physical memory.
Look at some rough estimates we have:
/ = 64 MB (best kept small to avoid corruption problems)
/var = 200 MB (needed for logs, spooling, e-mail, and patches)
/opt = 700 MB (I softlink this to /usr/local (ln -s))
/usr = 700 MB (not really user stuff, but read-only system files)
swap = 100 MB (same as /tmp)
/export/home = the remaining disk for your own use
This all seems to fit well in a 4 GB drive and leaves room for user
files and growth.
A word of performance advice. If you're going to be using a fast wide
SCSI controller such as the Adaptec 2940, use a wide SCSI drive for
the system drive. These drives usually have double the throughput of
the normal 8-bit drives, according to the iozone benchmark results,
and they make the tmpfs fly. Don't forget to set the maxpgio in the
/etc/system file for 5400 and 7200 RPM drives accordingly. See the
question on performance in this FAQ.
[Modified from Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(4.4) What are SCSI IDs expected by Solaris x86?
These are the typical values for SCSI devices. For tape and CD-ROM,
these are the defaults used in the /etc/vold.conf file for controlling
the vold mounter. You can set them to other ID's but remember to
adjust the vold.conf file to the new values.
Boot drive ID 0
Second drive ID 1
Tape ID 4
CDROM ID 6
SCSI controller ID 7
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(4.5) What video card/monitor combination works best?
Some questions will arise when trying to configure your video card and
monitor size. The most critical area is when you do the install and
answer the questions about the vertical HZ, screen size 14, 15, 17,
21-inch, etc. If you get it wrong you get the squiggles.
First, find your video card manual. Ha! I can here the laughs from
across the world. What manual? If this is the case just select the
slowest vertical HZ. You can always change it later after the system
is up.
Resolution: be safe and just use 1024x768 or smaller the first time
through the install. Latter, boost it up to 16 million colors and
specify a bigger monitor size.
Screen size should be easy: [\] about that big.
If you don't know the video card type just select the standard vga8 to
do the install. Hopefully when your system boots it displays what
video card you have in it.
A good video card combination such as the ATI and Sony 17sei can allow
you to drive it at 76Hz vertical 1280x1024 on a 17-inch screen.
Hint: Look in the update readme files and at the end in one of the
appendices you'll find a chart of monitors and there scan rates.
Usually good to refer to before you buy the monitor and video card
combination. You could have a very nice high bandwidth monitor and a
lousy video card that can't drive it hard enough. Or visa versa, a
good video card that can drive a high bandwidth but the monitor just
can't handle it.
Another Hint: Even though there's no 14-inch monitor on the
configuration menu you can select the 15-inch setting. If the 14-inch
monitor has a good bandwidth it will sync up.
[Modified from Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(4.6) Is Plug-and-Play (PNP) supported by Solaris/x86?
Yes, with release 2.6 and latter. Solaris 2.5.1 and earlier (even with
the DUs), do NOT support PNP. PNP should be disabled and the card
manually configured for the latter case. Sun FAQ 2234-02 at
http://access1.Sun.COM/cgi-bin/rinfo2html?223402.faq has
instructions for configuring Solaris to recognize specific PNP
devices. See the Solaris 7 (Intel Platform Edition) Device
Configuration Guide (mentioned above) for details on each device (and
see the Driver Update Guide when using updates).
Personally, I find it a lot easier to disable PNP on cards that have
that option. Boot into DOS or Windows (with a diskette if you have to)
and run your card manufaturer's utility or configuration or diagnostic
program. PNP can be tricky with Solaris sometimes.
To display your current system configuration run "prtconf -pv"
_________________________________________________________________
(4.7) Is Advanced Power Management (APM) supported by Solaris/x86?
APM isn't really supported on x86. Solaris is "APM tolerant" which
means that if APM can do everything transparently to Solaris, it will
work. If it isn't transparent, Solaris gets confused.
So, SPARC has power management in the OS but x86 does not.
[Thanks to Doug McCallum]
_________________________________________________________________
(4.8) What are the pitfalls of different busses: PCI/ISA/EISA?
Read the merits of running Solaris x86. But the worst sin is running
UNIX on an ISA bus with disk controllers such as the Adaptec 1542
series. They're cheap but if you have more that 16 MB of memory in
your system you shouldn't be running an ISA disk controller.
Typically you're going to see better performance from the PCI or EISA
bus. PCI is the biggest winner. VLB and MCA are supported, but largely
obsolete.
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(4.9) Are "floppy tape" devices supported by Solaris x86?
No. You have to use a SCSI tape backup device. Other options include
purchasing a zip drive, which is supported (except on the parallel
port), or backing-up your files to a MS-DOS/MS Windows partition and
back it up from MS DOS/MS Windows or some other operating system.
_________________________________________________________________
(4.10) How can I get a "free" copy of Solaris?
A "free" copy of Solaris for personal use (where "free" means you pay
only media, shipping, and handling cost), is available from here: For
*.edu (Educational users): http://www.Sun.COM/edu/solaris/ For
all others: http://www.Sun.COM/developers/ I also have this link:
http://www.Sun.COM/solaris/freesolaris.html
The cost is US$8 for US Shipping/handling (plus sales tax), US$12 for
Canada, and US$25 for the rest of world.
"Personal use" means not for use for commercial gain or in connection
with business operations (such as MIS or other internal business
systems).
[Thanks to Graham Lovell]
_________________________________________________________________
(4.11) What's missing from the "free" copy of Solaris that's in the
commercial version?
The following two CDs are supplied with the commercial version but not
with the free version: Netscape Communicator V4.05 and Software
Supplement for Solaris 7. The latter contains SunVTS, ODBC Driver
Manager, Open GL, Solaris on Sun Hardware AnswerBook, PC file viewer,
ShowMe, and SunFDDI.
[Thanks to Mike Mann]
_________________________________________________________________
(4.12) How can I get Solaris to see the third IDE controller?
You can't. The third and fourth IDE controllers cannot be used--only
the first two IDE controllers are supported.
[Thanks to Mike Riley]
_________________________________________________________________
(4.13) Are Ultra DMA (UDMA) drives supported?
I understand Solaris 7 recognizes UDMA drives in native mode. They are
not supported in Solaris 2.6 or older, although they are recognized in
its compatibility mode as regular ATAPI drives.
[Thanks to Christopher Arnold and Steve]
_________________________________________________________________
(4.14) Are Universal Serial Bus (USB) devices supported?
Solaris 7 does not support USB. It's low-level Device Assistant
recognizes the presence of USB, but the Solaris Operating System has
no USB support, and as a corollary, no support for USB-attached
devices.
Sun is involved with the USB umbrella organization and has advertised
for programmers working on USB, so presumably USB will be supported by
Solaris x86 in a future release. Keep an eye out on
http://www.Sun.COM/io/ and http://www.Sun.COM/io/usb/
_________________________________________________________________
(4.15) Is Microsoft Intellimouse or other scrolling mice supported?
Partly. Configure it as a 3-button PS/2 mouse. The wheel won't scroll
anything, but pressing the wheel down is the same as pressing the
middle button. The same holds true for Logitech's MouseMan Wheel mice.
Update: I understand the new version 1.2 of Intellimouse does not work
with Solaris.
_________________________________________________________________
(4.16) What's difference between Solaris x86 Server and Solaris x86
Desktop?
There is absolutely no difference, other than what you are licensed to
do with it. You get exactly the same software with the two products.
(This is not the case with Sparc server, where the server product
contains more CDs with some additional software. If you want something
like Solstice AdminSuite, you have to order it separately).
The Solaris desktop license restricts you from using the system as
"any type of server" (other than print or NIS). or supporting more
than two continuous users. Read your license for details. A Server
Upgrade License is available.
[Thanks to Andrew Gabriel]
_________________________________________________________________
(5.0) INSTALLATION
(5.1) How long does the install take?
It depends on the CD-ROM and hard disk speed. On a 300 MHz Pentium
with a multispeed SCSI CDROM, from the time "Initial Install" starts,
it only takes about a half hour. Add another half hour for initial
probes and configuration menus. Add a lot more if you have problems,
of course. Upgrades take about 3 hours or more. This is because the
system must determine what critical configuration data must be saved
and replace it on a "per-package basis".
I'm the impatient type and given up totally on system upgrades. Now I
have a separate disk drive which I just do initial installs because it
goes so much faster. With the typical SCSI drives costing in the $200
range it just isn't worth it anymore to do upgrades. But this is my
opinion so take it for what it is worth. I just save the /etc, /opt,
/local, and /export/home directories and selectively restore rather
than upgrade.
Below is typically what I save before doing an initial upgrade. Don't
take this for the ultimate system definition of what you should save
but it works for my system. Your system may be designed very
differently. The first thing I do is mount the filesystem that has a
home directory with the below critical files and copy them to the
appropriate directories. I'm sure it could be automated but. . . What
the advantage of this process is that I can do an initial install in
about an hour. My home directories are always on another disk
partition.
Install_Notes My own release notes
crontab This is my crontab, just do a "crontab -e" and save the file
defaultroute If you have one for routing to a DNS server.
df Save the output to keep an idea of my disk usage
dfstab /etc/dfs/dfstab for shared file systems
inetinit I modify my inetinit; not a standard industry practice.
kshrc_bob A typical .kshrc for a user
kshrc_root A root .kshrc
mail Make a copy of the current mail directory
passwd /etc/passwd file
profile_bob A typical ksh .profile. Note that home directories are
mounted on a separate drive so this type of file
doesn't get destroyed during an initial install.
profile_root A profile for root.
sendmail.cf The system sendmail.cf that works for your system.
That is if you didn't modify it.
shadow /etc/shadow file
vfstab /etc/vfstab filesystems
volmgt /etc/init.d/volmgt Stupid volmgt; I always disable
because I can't stand it getting in the way. Normally
you don't modify this one.
[Modified from Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(5.2) My IDE/ATAPI CD-ROM isn't recognized during install by Solaris'
FCS MCB and it's not in the HCL. What can I do?
With at least older versions of Solaris (2.5.1 or before), you may
have problems with IDE/ATAPI CD-ROMS either faster than 8x speed,
connected to the secondary IDE/ATAPI, or connected to a sound card. I
hear reports from multiple people, however, that this problem has gone
away with Solaris 2.6. I understand the problem is related to the
CMD640 IDE chipset. I find SCSI CD-ROMS are always a safe bet, as are
CD-ROMS listed on the HCL.
[Thanks to L. E. "MadHat" Heath and others]
_________________________________________________________________
(5.3) What kind of problems might I encounter installing my SCSI
system?
Typical problems with SCSI drives are termination and SCSI IDs. You'll
have flaky behavior if there's no termination resistor on the drive at
the end of a SCSI "chain". Worse are double termination resistors.
Some people mistakenly leave a resistor jumper on a drive when it's
not at the end of a SCSI "chain." This also makes the system flaky.
Carefully read your SCSI adapter manual on termination if you're
unsure about it. A SCSI drive can run for hours with no problems--then
boom, you get a panic. Always check cabling, pins, and connections and
use the *shortest* cable possible. The first thing I do when I have a
problem with a SCSI device is to reseat the SCSI cables (with the
machine powered off).
With SCSI IDs, a common problem is that the IDs on the drive, usually
set with dip switches or a button, don't match the settings with your
software (Solaris) or it's a duplicate ID. Check the IDs carefully
when adding or upgrading SCSI devices. The boot drive must be ID 0.
Other more obscure problems are setting the BIOS address space for the
disk controller the same as the network card address space, and the
PCI video card address conflicting with PCI SCSI disk controller BIOS
address space.
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(5.4) What do I do when the install hangs/panics?
One of the most common problems with some mother boards is handling
DMA during the install. Usually, that's the case if you get a hang
right around configuring /dev/devices. Try turning off the
caching--external and internal. Slow the system speed down if it
allows you to do this in the BIOS or through the front panel switch.
Leave these settings ONLY for the install: kick it back up after the
install.
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
Another common problem is support for new devices. Use the latest
driver update boot and distribution diskettes, especially with
newly-supported hardware. Carefully check the HCL to verify your cards
are listed. Try removing/replacing suspected troublesome cards to
isolate the problem.
Sun gives these tips for handling hardware incompatibilities during
installation (see
http://access1.Sun.COM/cgi-bin/rinfo2html?115502.faq ):
". . . Disable external cache, . disable synchronous negotiation on
the CD ROM, and disable ROM BIOS shadowing. These may be re-enabled
after installation. Also, if using an un-supported or clone
motherboard, slowing the system clock or changing from a double-
clocked processor to a single-clocked one may help. Say, for
example, a 486DX-50 as opposed to a 486-250 or 486-66."
I would also add disabling video cache to this list.
Here's a checklist of typical causes of hangs during installation:
* Incompatible CD-ROM drives (or mounting on the secondary IDE).
* Incompatible SCSI controller (avoid the clones and cheap cards).
* Incompatible Motherboard (try changing motherboard settings).
_________________________________________________________________
(5.5) I'm trying to install Solaris/x86 on my 8 GB drive. However, the
installation program says the root partition must end within the first
1023 cylinders of the disk. What can I do?
The root filesystem must be below 1024 cylinders of your disk (on
older BIOSes that's under the first 512 MB on IDE or 1 GB for SCSI).
The number of cylinders has nothing to do with the size of the disk.
So it is possible to have 1.5Gb partitions below 1024 cylinders on
some disks (with more MB per cylinder) and not on others. Simply make
the root filesystem smaller and create an additional /usr filesystem
(and e. g. /var . . .). For reliability, the root filesystem should be
small (say 64 MB) with large filesystems mounted on it.
Newer BIOSes support LBA, Logical Block Addressing. The BIOS may have
to be edited on bootup to enable the LBA option. This bumps the HD
limit to 8GB. With LBA, Solaris/x86 and other operating systems can be
placed anywhere you want. I have the Solaris/x86 partition completely
above the 528MB limit.
Be sure that the root and the boot slice of the Solaris partition are
within the 1024 cylinder boundary using the BIOS geometry reported for
your disk and you should be fine. That is the cause of the "slice
extends beyond end of disk" message -- exceeding 1024 cylinders.
I have seen problems with fdisk as well. In those cases I used a disk
editor to adjust the partition so it started and ended on cylinder
boundaries. This seems to happen when Solaris uses the actual geometry
of a disk, as seen by Solaris at runtime, vs. the geometry reported by
a controller to allow DOS to think it has no more than 1024 cylinders.
Partition Magic reported problems with that partition when I tried it
on systems that had Solaris partitions that weren't aligned with the
others correctly.
In any case, Solaris x86 is limited to 8GB partitions for IDE. [Thanks
to Ronald Kuehn and Mike Riley]
_________________________________________________________________
(5.6) Does Solaris x86 prefer to have the motherboard BIOS set to
NORMAL or LBA for IDE disks?
In theory, both work. Leave it up to the BIOS' auto-detect, just as
the Configuration Guide advises.
[Thanks to Randy J. Parker]
_________________________________________________________________
(5.7) Why does a Solaris install to a disk with valid, pre-existing
fdisk partitions sometimes fail?
There is a well known bug that sometimes prevents Solaris from
installing into an existing partition. Its cause has never been
identified, or its existence officially acknowledged by filling out a
bug report. It is secretly well known only to Sun's Installation
Support team in Chelmsford, MA., who claim that the workaround is
apparent from the message "slice extends beyond end of disk".
I agree that the workaround is simple, but I think some kind of
document explaining the workaround should be returned by searches of
sunsolve and access1. Better yet, the error message could actually
describe the error! Or, how about identifying and fixing the bug so it
never happens to begin with?
For those of you too "stupid" :-) to read the error message, I'll
decode it:
slice = "disk"
extends = "is full of fdisk partitions"
beyond = "before"
end = "installation."
of = "Please"
disk = "delete at least one of 'em, and try again"
For example: If a disk has three partitions with the following: 1)
FAT, 2) no filesystem yet, 3) NTFS, the installation might fail in
some poorly understood cases, with the misleading error message.
The workaround is to delete the unused partition, leaving a "hole"
between the flanking partitions. The install fdisk, Partition Magic,
or any other fdisk will now see only 2 partitions: 1) FAT and 2) NTFS.
There will obviously be lots of cylinders between the end of the
first, and the beginning of the second. The Solaris install will spot
the hole, and create a partition according to its own mysterious
specifications. Somehow, this new partition is acceptable, even though
a seemingly identical one created by a different fdisk isn't. Perhaps
the bug is in *when* it was created: if previous, sometimes balk.
Perhaps NORMAL / LBA is relevant at this point - - it did make a
difference in at least one case I tested. Oddly, I have also had cases
where the offending procedure of creating the partitions before
beginning to install Solaris worked fine.
However, I once had a case where the Solaris install created a
partition that left gaps of a few cylinders before and after. I am
wary that it could err on the other side of the boundary, and damage a
flanking filesystem by encroaching across the pre-existing boundary.
The safest approach when dealing with a squirrelly fdisk is to use the
dangerous one *first*. Install Solaris before the other partitions get
used, if possible. Hopefully the other fdisk-type programs will
recognize such corruption and allow the encroached-upon partitions to
be deleted and re-created, without hurting the Solaris partition.
At any rate, the most-likely-to-succeed procedure is to install into a
hole, or onto an empty disk with no partitions.
Thanks to Super-User (asianinter.net), who pointed out cases involving
modern BIOS' auto-detecting IDE disks as NORMAL. Alan Thomas prefers
always to set disks to NORMAL, and once had trouble with a disk that
was set to LBA.
[Thanks to Randy J. Parker]
_________________________________________________________________
(5.8)How do I install or use the documentation CD?
The AnswerBook documentation CD that comes with Solaris is is very
useful. To use it with Solaris 7, you have to install the Answer Book
2 Server. To do this, run the ab2cd script on the CD as root. For
example: cd /cdrom/sol_7_doc/; ./ab2cd Then open your browser and
enter the URL http://localhost:8888/
[Thanks to Daniel Chirillo]
_________________________________________________________________
(6.0) POST-INSTALLATION (CUSTOMIZATION)
(6.1) How do I add additional drives?
IDE/ATAPI and SCSI the drives are already low-level formatted. If you
wish to format a SCSI you can use the "format" utility that comes with
Solaris. A second drive install would be to use "format".
* Select the disk
* fdisk (select the whole disk or partial for format)
* format
* Write the label with the "label" option partition, check the
partition arrangement
* Quit the format program
* newfs the drive with "newfs". E.g. "newfs /dev/rdsk/c0t1d0s0"
would create a files system on the the whole drive with the SCSI
ID 1
* mount the partition on your favorite mount point directory
* Adjust your /etc/vfstab
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(6.2) How do I add or configure users, printers, serial ports,
software, etc.?
Use admintool from X Windows. For the "Keyboard Display or Mouse" use
kdmconfig.
_________________________________________________________________
(6.3) How do I suppress the banner page on my printer?
To disable the banner pages permanently perform the following steps:
1. cd /usr/lib/lp/model
2. cp standard standard-nobanner
3. Use your favorite editor to edit file standard-nobanner. Around
line 332, change this from: nobanner="no" to: nobanner="yes"
4. lpadmin -p PRINTERNAME -m standard-nobanner
Note: unchecking the "Always print banner" box in admintool or running
"lpadmin -p st -o nobanner" only allows users to submit print requests
with no banners (lp -onobanner filenamehere), but doesn't suppress
printing of banner pages by default.
[Thanks to Youri N. Podchosov and Rob Montjoy's Sun Computer Admin.
FAQ]
_________________________________________________________________
(6.4) How do I set up an HP-compatible printer to print PostScript
files?
Basically, install GhostScript, then use GhostScript (gs) to filter
PostScript files for output to HP LaserJet-compatible (PCL) printers.
Add a filter description file in the /etc/lp/fd directory to call
GhostScript. This technique works for any GhostScript-supported
printer. Note that higher-end HP printers (LJ IV) also support
PostScript directly. For details, see Alexander Panasyuk's GhostScript
Solaris Printer HOWTO at
http://cfauvcs5.harvard.edu/SetGSprinter4Solaris.html
John Groenveld provides these instructions:
Here's the procedure I followed. It assumes you've got a working
ghostscript with a driver for your printer and that its attached to
/dev/lp1. BTW I do see a problem with Alexander Panasyuk's HOWTO. He
writes directly to the device in his filter. I don't think thats what
filters should do, but thats just my opinion.
# Test your driver:
/opt/gnu/bin/gs -q -dSAFER -dNOPAUSE -sDEVICE=laserjet -sOutputFile=/dev/lp1 \
/opt/gnu/share/ghostscript/5.50/examples/alphabet.ps
# Create the printer:
lpadmin -p lj6l_ps -v /dev/lp1 -o nobanner
# Create the printer filter definition:
cat > /etc/lp/fd/laserjet.fd <<eof
Input types: postscript
Output types: laserjet
Printer types: any
Printers: any
Filter type: fast
Command: /opt/gnu/bin/gs -q -dSAFER -dNOPAUSE -sDEVICE=laserjet -sOutputFile=-
-
eof
# Add the filter name to the filter table:
chown lp:lp /etc/lp/fd/laserjet.fd
chmod 664 /etc/lp/fd/laserjet.fd
lpfilter -f laserjet -F /etc/lp/fd/laserjet.fd
# Configure the printer to use the LaserJet filter:
lpadmin -p lj6l_ps -I laserjet
# Enable the printer to accept jobs:
accept lj6l_ps
enable lj6l_ps
# Test:
/usr/ucb/lpr -h /opt/gnu/share/ghostscript/5.50/examples/alphabet.ps
_________________________________________________________________
(6.5) How can I improve disk and graphic performance?
Disk Performance (iozone)
A typical iozone test with 10 to 20 MB sequential file will give about
2 MB/sec. read/write on a 50 MHz ESIA system on a Maxtor 540SL (8.5
ms) drive with an Adaptec 2740 controller. You'll get a little better
performance from a 90 MHz Pentium system. A fully thrashed system will
see writes down to about 1 MB/sec. I noticed that the NCR 810/825,
etc., seem a little more peaky in the performance specially on the PCI
bus.
Note: If you are going to be using high speed spindle drivers for your
boot driver like 5400 and 7200 RPM drives you may want to "set
maxpgio=60" for the 5400 RPM drive in your /etc/system file, "set
maxpgio=80" for the 7200 RPM drives. This causes the schedpaging to be
more efficient.
ISA SCSI controllers are a very poor choice (use PCI), but you may
want to increase "lotsfree" in your /etc/system file if you have lots
of memory (32 MB or more).
[Andrew Gabriel adds for ATAPI/IDE: Read about drive0_block_factor and
drive1_block_factor in /platform/i86pc/kernel/drv/ata.conf (man ata).
Even my oldest IDE drives support drive0_block_factor=0x10 without any
trouble.]
Graphic Performance (xstone) Xstones is a little more of a subjective
measurement of graphics performance. The comp.unix.x.i386 newsgroup
keeps up on the latest xstone performance on graphics cards for PC's.
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(6.6) How do I get Solaris to recognize a NE2000 compatible NIC card?
NEI is the driver name for the Novell/Eagle 2000-compatible family of
NIC cards. The driver is disabled by default because probing for it
causes problems with other cards (it sometimes locks the system up).
So, you have to modify file /kernel/drv/nei.conf to include I/O
ranges, interrupts. For example:
name="nei" parent="isa" reg=0x1,0xf600,0x1f interrupts=11 ;
Where name, "nei," is what will show up in /dev. The parent, "isa, "
is what bus type to use. The term ISA is misleading as it includes PCI
bus. To Solaris, it's either sysbus, the SPARC system bus, or isa,
meaning anything that's not SPARC sysbus. The "0x1" is a flag meaning
that I'm going to specify I/O port ranges, rather than memory offsets,
0xf600 indicates the beginning I/O address, in hex and 0x1f is the
offset of I/O range, from the beginning, in hex. The "interrupts=11"
indicate IRQ 11, in decimal. Thus, I have a Realtek 8029 PCI
NE2000-compatible card, set to base I/O addresses 0xf600-0xf61f, IRQ
11.
You also have to add a /etc/hostname.nei0 file with the IP address and
hostname. Also add the line to /etc/hosts. For example:
10.1.1.1 foo.bar.com
Next, as root, type "touch /reconfigure; reboot" After rebooting, type
"ifconfig nei0 plumb" to make sure the device was recognized. It
should show up in the output from typing "prtconf". If this card is
"Plug and Play," you should disable it and configure the card
manually, if possible. For further details see Sun FAQ 1105-02 at
http://access1.Sun.COM/cgi-bin/rinfo2html?110502.faq
[Answer adapted from Iram Peerbhai]
_________________________________________________________________
(6.7) How do I change the IP address on Solaris/x86?
See the instructions in "man sys-unconfig" Basically, sys-unconfig
unconfigures the machine to make it ready to be configured again on
reboot. It's a lot easier and less error prone than the usual dozen or
so steps required to purge the old IP address.
For the thrill-seekers among us, you can also do it "by-hand" with by
editing these files (possibly more?) with your fav. editor:
/etc/nodename Set the machine name (if it changed)
/etc/hostname Update this if the hostname changed.
/etc/hostname.le0 (or .hme0 or ?) Update this if the hostname changed.
/etc/hosts Soft-linked to /etc/inet/hosts
/etc/nsswitch.conf Update if your name resolution method/order changed.
/etc/resolv.conf Update if your name servers/domain changed (DNS only).
/etc/defaultdomain Set the default domain name, if it changed.
/etc/defaultrouter Set the default router's IP address, if it changed.
/etc/inet/hosts Make sure your IP address is updated or added here.
/etc/inet/netmasks Set your network number & netmask, if it changed.
/etc/inet/networks Set your network name, if it changed.
/etc/net/ticlts/hosts For the streams-level loopback interface.
/etc/net/ticots/hosts For the streams-level loopback interface.
/etc/net/ticotsord/hosts For the streams-level loopback interface.
[Thanks to Parthiv Shah, Vijay Brian Gupta, and Michael Wang]
_________________________________________________________________
(6.8) How do I configure a second serial port, /dev/ttyb (COM2)?
By default Solaris only enables /dev/ttya. But the modem is usually on
/dev/ttyb (or COM2) if you have a serial mouse. If you don't have a
/dev/ttyb file, then you don't have the second serial port defined.
For Solaris 7, use admintool and select "Serial Ports."
The following are instructions for Solaris 2.6 and 2.5.1.
To add the second serial port, perform the following as root. For
other serial ports and internal modems follow the same steps but
uncomment the appropriate line in the asy.conf file.
Edit file /platform/i86pc/kernel/drv/asy.conf as follows:
Solaris 2.6: Replace /platform/i86pc/kernel/drv/asy.conf with this:
(first backup the existing copy of asy.conf to, say, asy.conf.ori)
name="asy" class="sysbus" interrupts=12,4 reg=0x3f8,0,0 ioaddr=0x3f8;
ignore-hardware-nodes=1;
name="asy" class="sysbus" interrupts=12,3 reg=0x2f8,0,0 ioaddr=0x2f8;
Solaris 2.5.1: Remove the comment from the following line in file
/platform/i86pc/kernel/drv/asy.conf:
name="asy" class="sysbus" interrupts=12,3 reg=0x2f8,0,0 ioaddr=0x2f8;
* Save the changed file, asy.conf.
* Return to the root directory and, this is the important part, as
root type "touch /reconfigure".
* Type "sync" then "reboot" to restart the system.
* After you get a message saying syncing file systems and no more
[N] characters appear, turn your machine off and then turn it on
again.
* Verify the device is present with "ls -l /dev/ttyb"
* For details and for COM3 and COM4 instructions, see
http://access1.Sun.COM/cgi-bin/rinfo2html?228402.faq
[Modified from Bruce Riddle's Solarisx86 2.5/Dialup PPP Configs FAQ]
_________________________________________________________________
(6.9) How do I disable Solaris/x86 from probing the UPS on COM2?
With the following command, ran as root:
# eeprom com2-noprobe=true
This (undocumented) option to the eeprom command disables boot-up time
probing of COM2 (apparently done to detect modems). The eeprom command
alters the Solaris boot sector. If the UPS is connected to a serial
port during boot-up time, the UPS may go into self-test or shutdown or
recalibrate. An alternate solution is to disconnect the serial cable
during booting. With the obvious change, this also works for COM1. See
also BugID 4038351.
[Thanks to Andy I. McMullin and John D. Groenveld]
_________________________________________________________________
(6.10) How do I set up Solaris/x86 to use PPP to connect to an ISP?
"Life is too short for bad PPP software." --Celeste Stokley
Setting up PPP with the system-default aspppd could be an exercise in
torture. That's because it's based on the old BNU/UUCP communication
software, which itself is infamously hard to set up.
Of course, the hardware (modem and serial port) has to be set up
correctly too. Make sure hardware flow control is enabled.
The best documentation on it is Bruce Riddle's PPP Configuration for
Solaris/x86 at http://www.riddleware.com/solx86/ppp-config.html
Another good guide is at http://www.kempston.net/solaris/
For pointers to other references, see Stokley's "Serial Port
Resources" at http://www.stokely.com/unix.serial.port.resources/
Also see Sun's "Expanding your Network with PPP" in the TCP/IP and
Data Communications Administration, at docs.Sun.COM and "SunService
Tip Sheet for SunPPP" (InfoDoc ID 11976).
Here's some notes that may also help you out with Sun's aspppd:
otherwise pkgadd SUNWbnur and SUNWbnuu.
needs to give you the names or you can look them up on the net.
lines. Your provider can provide the domainname (probably
name-of-your-isp.com, unless they have a multi-location operation).
The DNS nameserver goes on the nameserver line.
host should be the smtp server. This hostname needs to be accurate.
environment variable NNTPSERVER to find the NNTP server. Set that in
your environment before invoking the reader. This can go in your
.profile, .cshrc, or whatever, depending on what shell you use.
machine you dial up to (most likely the gateway machine). You'll have
to edit the /etc/uucp/{Systems, Dialers, Devices} with things like
your preferred modem setup unless you like one of the defaults (one of
my character flaws, I guess, I don't like any of them), dialing info
for the gateway machine (note that our PPP is broken, and ignores the
time-to-call field, disaster for a lot of us), and what serial port
you have your modem connected to. Then edit the /etc/asppp.cf file to
configure the ipdptp0 interface.
Notes for the examples:
I have my modem configured to power-on in the mode I like to use for
my PPP configuration. DISABLE LOGINS ON THE MODEM PORT. I don't recall
the nameserver IP address of my DNS server, so the example has a bogus
address for /etc/resolv.conf. I also found that I had to put a delay
at the end of the chat script in /etc/uucp/Systems, or I couldn't get
connected. Loopback problems and config error problems, caused by the
remote system still being in echo mode on the line when my machine
started sending the first PPP configure packets. Also, I have yet to
find a 2.4 setup where ttymon grabs the line after PPP times out and
disconnects (but before the modem has recognized a DTR-down condition
(my speculation is that our streams stuff doesn't actually take DTR
down)) causing the line to essentially be hung. This is avoided by not
enabling ttymon on that port. In other words, in keeping with Sun's
long tradition, truly bi-directional lines are a crapshoot on Suns.
Examples for my home machine:
/etc/hosts:
165.154.15.142 MyPCNameGoesHere
165.154.1.1 my-isp
127.0.0.1 localhost
/etc/resolv.conf:
domainname hookup.net
nameserver 165.154.1.7
/etc/mail/sendmail.cf:
# (Stuff not included here for brevity) . . .
Dmether
# (Stuff not included here for brevity) . . .
DRmail.tor.hookup.net
CRmail.tor.hookup.net
# (Stuff not included here for brevity) . . .
/etc/uucp/Dialers:
wb144 =W-, "" \dAT\r\c OK\r \EATDT\T\r\c CONNECT
/etc/uucp/Devices:
ACUWB cua/0 - Any wb144
/etc/uucp/Systems (line split for readability, change the phone #):
my-isp Any ACUWB 57600 555-2871 "" P_ZERO ogin: MyLoginNameGoesHere \
assword: MyPasswordGoesHere
/etc/asppp.cf:
ifconfig ipdptp0 plumb MyPCNameGoesHere my-isp netmask 0xffffff00 -trailers up
path
inactivity_timeout 900
interface ipdptp0
peer_system_name my-isp
debug_level 8
default_route
[Thanks to Dennis (from Bob's Solaris 2.4 x86 FAQ) and Wyatt Wong)]
_________________________________________________________________
(6.11) That last answer was torture! Is there any open source PPP
that's easier to use?
Yes, as you can see, aspppd, the Solaris-bundled ppp product, is
difficult to setup and use ("infamous"). Part of the problem is it
uses the old BNU/UUCP programs and configuration files, which are too
general and weren't really intended for PPP.
Fortunately, PPPD has been ported to Solaris and is easier to
configure, performs better, and is still free. It's available from
Peter Marelas at http://www.phase-one.com.au/solaris-x86/pppd/
I use PPPD with Solaris 7. PPPD 2.3.5 also works with 2.5.1 and 2.6.
This product isn't designed for use with SMP machines.
For Solaris 7, you can use the binaries compiled for Solaris 2.6 (not
2.5.1). If you compile on Solaris 7, you need to modify source file
common/zlib.c to compile it. Change every definition of variable "u"
to "u1". There's 5 occurrences at lines 4215, 4290, 4329, and 4337,
and 4347. For example, change "inflate_huft *u[BMAX];" to
"inflate_huft *u1[BMAX];".
Besides PPPD, mentioned here, Andrew Gabriel mentions there's also DP
(for Dialup PPP). DP documentation and source is available from
http://www.acn.purdue.edu/dp/ I don't have any personal
experience with this software.
PPPD Configuration
To configure, you set up a chat script to handle the ISP dialog and
enter the phone number and other parameters in the pppd options file.
Examples I use are below (files are in /etc/ppp unless otherwise
mentioned).
I removed files chap-secrets and pap-secrets, as I don't need them for
my ISP. File connect-errors has error output from bad connections.
File /etc/ppp/ip-down:
#!/usr/bin/sh
# Turn off IP forwarding
/usr/sbin/ndd -set /dev/ip ip_forwarding 0
File /etc/ppp/ip-up:
#!/usr/bin/sh
# Turn on IP forwarding
/usr/sbin/ndd -set /dev/ip ip_forwarding 1
File /etc/ppp/ppp-on:
#!/usr/bin/sh
# Set up a PPP link
PEER=myisp
LOCKDEV=ppp0
if [ -f /etc/ppp/$LOCKDEV.pid ] ; then
echo "PPP device $LOCKDEV is locked"
exit 1
fi
/usr/local/sbin/pppd call $PEER
exit 0
File /etc/ppp/ppp-off:
#!/usr/bin/sh
# /etc/ppp/ppp-off
# Shutdown a PPP link
LOCKDEV=ppp0
# If the ppp pid file is present then the program is running. Stop it.
if [ -r /etc/ppp/$LOCKDEV.pid ] ; then
kill -INT `cat /etc/ppp/$LOCKDEV.pid`
# If unsuccessful, ensure that the pid file is removed.
if [ ! "$?" = "0" ] ; then
echo "removing stale /etc/ppp/$LOCKDEV.pid file."
rm -f /etc/ppp/$LOCKDEV.pid
exit 1
fi
# Success. Terminate with proper status.
echo "ppp link $LOCKDEV terminated"
exit 0
fi
echo "ppp link $LOCKDEV is not active"
exit 1
File etc/ppp/peers/myisp:
cua1 # modem is connected to /dev/cua1 (cua0 is usually the mouse)
115200 # bits per second (if too fast, use 38400 or 57600)
crtscts # use hardware flow control
noauth # don't require the ISP to authenticate itself
defaultroute # use the ISP as our default route
204.94.88.94: # our ip address:gateway address (both are optional)
connect '/usr/local/bin/chat -v -f /etc/ppp/peers/chat-myisp'
File etc/ppp/peers/chat-myisp:
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
ABORT "Username/Password Incorrect"
"" "ATZ"
OK "ATDT555-2871"
CONNECT ""
"ogin:" "^Updan"
"ssword:" "\qaardvark"
The last two files require the most modification. See "man pppd" and
"man chat" and the FAQ and SETUP files provided with pppd.
Messages go to /var/adm/messages. A good PPP session should look
something like this:
Oct 24 22:47:49 dan.cts.com pppd[1439]: Connect: ppp0 <--> /dev/cua1
Oct 24 22:47:50 dan.cts.com pppd[1439]: local IP address 204.94.88.94
Oct 24 22:47:50 dan.cts.com pppd[1439]: remote IP address 205.163.84.83
Oct 24 23:08:52 dan.cts.com pppd[1439]: Connection terminated.
Your "netstat -rn" output should have lines that look similar to this:
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
205.163.84.83 204.94.88.94 UH 3 1 ppp0
default 205.163.84.83 UG 0 1
For debugging pppd, I add this line in /etc/syslog.conf: and restart
syslogd (fields are tab-separated):
daemon.* /var/adm/messages
Then, you get the chat script dialog captured to help isolate the
problem. Print out and read the docs mentioned above if you have
problems.
Once the PPP link is working, you can enable DNS hostnames as follows:
First, Modify this line in /etc/nsswitch.conf to something like:
hosts: files dns
Second, add lines similar to this in /etc/resolv.conf:
domain PutYourISPDomainNameHere.com
nameserver 192.188.72.18
nameserver 192.188.72.21
If you use PAP authentication, you also need to create file
/etc/ppp/pap-secrets with tab-separated entries, viz:
# /etc/ppp/pap-secrets
# PPP User ID Server "Secret" IP Addresses
MyUserIDGoesHere * "LetMeIn"
Change MyUserIDGoesHere to your PPP login ID and LetMeIn (WITH the
double quotes, "") to your PPP PAP password. Add this line to
/etc/ppp/peers/myisp:
-chap name MyUserIDGoesHere
Where MyUserIDGoesHere is as above and "-chap" disables Chap
authentication.
_________________________________________________________________
(6.12) Is there any commercial PPP that's easier to use?
Yes. Solaris sells its "Solstice PPP" product with its server system.
It requires a license for the server side (usually an ISP), but not
for the client-side (if you have only one connection). However, you
have to have access to the Solaris server CDROM to obtain the
software. See http://www.Sun.COM/solstice/server/PPPbrief.html
Basically, to set up, you use the GUI program pppinit to set up the
PPP link. You start and stop PPP with "/etc/init.d/ppp start" (and
stop), as with aspppd, or use the GUI program ppptool. Solstice PPP is
documented in the Solstice PPP AnswerBook at http://docs.Sun.COM/
and a easier to set up than aspppd and pppd.
Progressive Systems, Inc. sells Morning Star PPP, probably the most
successful third-party PPP commercial product. It's available for
Solaris/x86 (and several other systems) for a 15-day evaluation from
http://www.progressive-systems.com/
_________________________________________________________________
(6.13) Help! My USRobotics Internal modem doesn't work with PPP.
If it's a WinModem, you're out of luck--That only works with MS
Windoze and then only with special drivers. It's missing critical UART
hardware that's emulated in proprietary software and hardware
interfaces. WinModems (which run only on Windows) are less expensive
to manufacture because they don't include a controller. Instead, they
include proprietary drivers for Windows that offload processing to the
CPU. For some reason (tell me if you know?), Internal PCI card modems
all seem to be WinModems.
If you're using aspppd, supplied with stock Solaris, you can either
switch to another PPP product that works with USRobotics Internal
Sportster modems, such as Solaris PPP (not free) or PPPd (free, see
above) or try this: (from Alan Orndorff's "Solaris x86 Resources,"
http://www.mindspring.com/~dwarfie/):
Modify your /etc/uucp/Dialers file in the following manner:
Add P_ZERO to your modem definition string to set it to "no parity."
E.g,
hayes =,-, "" P_ZERO ""
\dA\pTE1V1X4Q0S2=255S12=255\r\c OK\r \EATDT\T\r\c CONNECT
_________________________________________________________________
(6.14) PPP runs extremely slow. What's wrong?
Solaris 2.5.1 patch 101945-34+ has poor TCP performance over slow
links, including PPP.
Patches for this, Bug ID 1233827, are available from
http://soldc.Sun.COM/:
* Solaris/x86 2.5.1: 103631 (IP) and 103581 (TCP)
* Solaris/x86 2.5: 103170 (IP) and 103448 (TCP)
Both these patches are in the Recommended Patches set. The "showrev
-p" command shows what patches you have installed. Similar patches
exist for SPARC, PowerPC, and Solaris 2.4.
[From Bruce Riddle's Solarisx86 PPP FAQ and Casper Dik's Solaris 2
FAQ]
_________________________________________________________________
(6.15) How do I configure PPP using Dynamic IP Addresses (DHCP)?
If you're using Solaris aspppd, you need a void entry in /etc/hosts
and plumb it to do DHCP with PPP. Basically add this line to
/etc/hosts:
0.0.0.1 void
(Note: for Solaris 2.4 use 0.0.0.0 in lieu of 0.0.0.1)
Change the ifconfig line in /etc/asppp.cf to link to void rather than
the local machine IP entry in /etc/hosts. Then add "negotiate_address
on" to your /etc/asppp.cf file.
If you're using the open source pppd, simply don't specify an IP
address in your pppd options file.
If you're using the commercial Solaris PPP, keep the default of "none"
when prompted for your IP address by pppinit. Edit file
/platform/i86pc/kernel/drv/asy.conf.
To use DHCP, either: (1) Add a file /etc/dhcp.ppp0 (where ppp0 is the
name of your TCP interface shown in ifconfig; usually le0 for
Ethernet) with the following suggested line:
wait 60
Or (2) Edit files /etc/hostname.ppp0 (where ppp0 is the interface
name) and /etc/nodename to be both empty (0-length) files, then
reboot.
[Thanks to Bruce Riddle, Wyatt Wong, and Ed Ravin]
_________________________________________________________________
(6.16) How do I configure my SoundBlaster card?
For Solaris 2.6 and 7 (2.5.1 instructions follow):
First try, as root: "touch /reconfigure; /usr/sbin/reboot". You should
see two links under /dev/sound and play .au files with audiotool if
this works. If not, try the following procedure:
Node 0xf5a33500
compatible: 'pnpCTL,00E4,0' + 'sbpro'
dma-channels: 00000001.00000005
interrupts: 00000005
model: 'Audio'
name: 'pnpCTL,0045'
pnp-csn: 00000001
reg: 8e8c00e4.19f815e8.00000000.00000001.00000220.00000010
.00000001.00000330.00000002.00000001.00000388.00000004
unit-address: 'pnpCTL,00E4,19f815e8'
The device ID I want is CTL0045. This comes from the name line
"pnpCTL,0045". There were a couple of other 'pnpXXX,DDDD' devices.
This was the only one with the model "Audio".
updated /platform/i86pc/boot/solaris/devicedb/master as follows (no
comma):
< CSC0000|PNPB002|PNPB003|CTL0031|ESS1681 sbpro oth all sbpro.bef
"Sound Blaster"
- ---
> CTL0045|CSC0000|PNPB002|PNPB003|CTL0031|ESS1681 sbpro oth all sbpro.bef
"Sound Blaster"
# /usr/sbin/reboot -- -r
as soon as the machine boots, it will prompt you -- just to verify
that the Sound Blaster showed up in the device list. It did as "Sound
Blaster." Since I ran the DCA boot will get the -r arg anyways.
to the Sunday Blues on real audio at
http://www.sunday-blues.com/listen.html.
If the above procedure fails for Solaris 2.6 or 7 (as it did for me),
continue with the procedure below for Solaris 2.5.1.
[Thanks to Park Byoung-Gi, Steve Krapp, Chris, Dave, and Norma]
For Solaris 2.5.1:
Edit file /platform/i86pc/kernel/drv/sbpro.conf as instructed in the
file (note that the instructions were removed for Solaris 2.6 and
above!). Usually, it's just adding "dma-channels-1,5" to the
appropriate name="sbpro" line. Then "touch /reconfigure" and
"/usr/sbin/reboot"
For example, given a SoundBlaster 16 or AWE32, the following specifies
IRQ 2, Audio I/O Address 0x220, and 8 & 16 bit DMA channels 1 & 5:
name="sbpro" class="sysbus"
interrupts=5,2 reg=-1,9,0,1,0x220,0x14 type="SB16" dma-channels=1,5;
For a SoundBlaster PRO, the entry looks like this (one DMA channel:
1):
name="sbpro" class="sysbus"
interrupts=5,2 dma-channels=1 reg=-1,1,0,1,0x220,0x14 type="SBPRO";
Leave the other numbers alone. Make sure these resources are
configured for the card and are not used by other devices. For
example, NICs and Parallel Ports often use IRQ 5, and token ring cards
often use IOA 0x220. For more information, type "man sbpro."
A commercial alternative to the above is to use 4Front Technologies'
Open Sound System (OSS). It's available for a free trial for about 10
days. After that, it's $30, but well-worth the savings in time. For
cards newer than SoundBlaster 16/32/Pro, it's the only choice. To use,
download the tar.Z file from http://www.opensound.com/, extract,
and run the install menu ./oss-install and let it auto-detect the
sound card. Reboot (or at least sync), then run "soundon" to enable
the driver manually (see file oss/Readme for how to enable
automatically).
_________________________________________________________________
(6.17) How do I enable the audio output from my CDROM to my SBPRO
card?
Start audiocontrol then select "Record." Ha ha, "Record" really means
"Sound Source ;-)." In the audiocontrol record window, select
"Internal CD" (other choices are Microphone or Line in).
You must have audiocontrol running before starting your favorite CD
player application. I use workman, but you can try other open source
players, such as xmcd. I haven't found a GUI CD player built-in with
Solaris. Anyone? Robert Muir reports you can use this from the command
line (non-X):
audiorecord -p internal-cd /dev/null &
[Thanks to Eugene Bobin and Robert Muir]
_________________________________________________________________
(6.18) Is Solaris/x86 Year 2000 (Y2K) compliant?
According to Sun Microsystems, Solaris/x86 7 and up are Y2K compliant
out of the box. Of course, they use to say that about 2.6. Older
versions 2.4, 2.5, 2.5.1, and 2.6 can be made Y2K safe by applying a
set of Y2K patches. These patches are available at
http://sunsolve.Sun.COM/
Solaris/x86 Y2K information is available at
http://www.Sun.COM/y2000/ Of the Y2K patches, only the make and
sccs patch are in the Recommended Patches set.
For Solaris/x86 Y2K recommended patches, see
http://access1.Sun.COM/patch.y2k/
For the entire Y2K patch cluster for each Solaris release, see
http://sunsolve.Sun.COM/pub-cgi/show.pl?target=patches/y2k-patche
s This latter link may be restricted to registered or licensed users.
I certainly didn't pay any money to access it though (other than the
Solaris license).
* 7: No patches needed (so far!)
* 2.6: Y2k patches exist, but none are serious enough to be
"recommended" There's 4 (non-recommended) y2k patches.
* 2.5.1: 18 patches recommended. Another 10 non-recommended patches.
* 2.5: 17 patches recommended. Another 10 non-recommended patches.
* 2.4: 17 patches recommended. Another 6 non-recommended patches.
The "showrev -p" command shows what patches you have installed. Anyone
can download recommended patches. Non-recommended patches are not as
serious and generally require registration to access and download.
_________________________________________________________________
(6.19) Can I use Solaris/x86 to setup a "headless" server?
The answer is yes, it can be done, but it's BIOS dependent, since many
BIOS chips won't boot up the system without the keyboard and video
card. The console can be configured to go to serial ports as described
below. Removal of video card is also BIOS dependent. Setup steps:
only) set the serial line's Data Set Ready (DSR) to HIGH. If you
don't--it won't boot. This can be done with a NULL modem or with the
following 25-pin or 9-pin pinouts:
DTE A DTE B
25 (9) 25 (9)
------ ------
FG 1 (-) ------ 1 (-) FG
TD* 2 (3) ------ 3 (2) RD
RD 3 (2) ------ 2 (3) TD*
CTS 5 (8) -+---- 20 (4) DTR*
DSR 6 (6) -| +- 5 (8) CTS
CD 8 (1) -+ |- 6 (6) DSR
DTR* 20 (4) ----+- 8 (1) CD
SG 7 (5) ------ 7 (5) SG
RTS* 4 (7) (nc) 4 (7) RTS*
RI 22 (9) (nc) 22 (9) RI
* DTE (terminal/computer) driven
(nc) = no connection
If the NULL modem is "incomplete", the boot process hangs shortly
after starting the asy driver (after the message "asy0 is
/isa/asy@1,3f8" or similar asy1/2f8 message). For details, see
http://www.freebsd.org/handbook/hw-io.html
ttyb): eeprom input-device=ttya output-device=ttya (just like SPARC?
;-)
Update: Andrew Schwabecher reports that using "ttya" doesn't work.
Instead, he adds these entries to
/platform/i86pc/boot/solaris/bootenv.rc:
setprop output-device com1
setprop input-device com1
For 2.5.1, add "set console = 1" to /etc/system.
[Thanks to John Weekley, Scott Wedel, Kenneth Wagner, Andy Spitzer,
Kai O'Yang, Michael Wang, David Page, and Andrew Schwabecher]
_________________________________________________________________
(6.20) Can I get a Sun-style keyboard (Ctrl & Caps Lock reversed) for
S/x86?
The following is from Don Christensen (6/1998):
I have found two options, the Sun PC-style type 5 keyboard from
Workstation Express, and a Sun Unix-style type 5 keyboard from NCD.
Both keyboards feel much more solid that a typical PC keyboard, with
the NCD being a little better in my opinion (aside from the fact that
it is Unix-style.)
There is a slight problem with the NCD keyboard in that three of the
keys are not seen by the PC. However, there are five extra keys on the
keyboard that could be used instead (the space between the cursor keys
and the Insert, Del, etc keys are filled in with blank keys.) A
moderate amount of work with xmodmap should have either keyboard
functioning quite well. I did not check to see if all of the keys were
seen on the Workstation Express keyboard, but I suspect that it will
be as good as or better than the NCD keyboard.
I had more problems with my Toshiba Tecra 740CDT. When directly
plugged in, neither keyboard worked. Much to my surprise, both
keyboards worked when plugged in through a Y adaptor (so I could also
plug in a mouse). However, many keys on the NCD keyboard were not
seen. Fewer keys on the Workstation Express keyboard were not seen,
but there were enough that I personally don't think it's usable.
Support at NCD said that the NCD keyboard supports "Scan Set 3" while
most PCs support "Scan Set 2". I am not really familiar with PC
hardware, but it doesn't surprise me that the keyboard controller
would be brain dead enough to not support any keyboard. This seems
like a very plausible explanation, at least for the laptop. If I ever
find the right contact at Toshiba, I hope they might have a BIOS
upgrade to support these keyboards (but I am not holding my breath.)
I had our IT department order the keyboard for me, so I don't have
exact numbers, but I was told by Kathy Fulton at NCD (650-919-2888)
that the keyboard is around $116 list. The model number is N-123UX (I
was also given SU192 as a number, but the back of the keyboard says
N-123UX). [See http://www.ncd.com/ - D.A.]
I don't have a Workstation Express catalog handy. [No web page! Call
1-800-844-5757. The part number is #DCA1905, with #DCA1645 (AT
adapter) or #DCA1646 (PS/2). - D.A.]
Personally, I just use software to switch Control_L and Caps_Lock
keys. Create file $HOME/.xmodmaprc with:
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
and add "xmodmap $HOME/.xmodmaprc" to your $HOME/.dtprofile file.
_________________________________________________________________
(6.21) Can I run multiple terminals on the console of Solaris x86 like
those supported on Linux, FreeBSD, Interactive Unix, and SCO?
Yes. Starting with Solaris/x86 2.4, they are no longer configured
during the installation, but they still work if configured afterwards
by hand. Sun disabled them because they are no longer officially
supported, and they recommend using CDE Workspace areas for multiple
console screens. Fortunately, they did not remove the functionality
from the kernel, so you can configure multiple virtual terminals back
in yourself as follows:
First, as root, verify the device's major number with grep:
# grep -i chanmux /etc/name_to_major
chanmux <number>
Second, verify the /dev/vt* entries are present (with ls -l /dev/vt*).
If not present, add the /dev entries, substituting whatever you found
with grep for <number>:
mknod /dev/vt01 c <number> 1
mknod /dev/vt02 c <number> 2
etc...
Copy and paste the following to /etc/inittab (after the "co:" entry),
and verify no line breaks are added:
v1:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT01 Login: " -T AT386 -d /dev/vt0
1 -l console
v2:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT02 Login: " -T AT386 -d /dev/vt0
2 -l console
v3:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT03 Login: " -T AT386 -d /dev/vt0
3 -l console
v4:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT04 Login: " -T AT386 -d /dev/vt0
4 -l console
v5:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT05 Login: " -T AT386 -d /dev/vt0
5 -l console
v6:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT06 Login: " -T AT386 -d /dev/vt0
6 -l console
v7:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT07 Login: " -T AT386 -d /dev/vt0
7 -l console
To get init to reread inittab, either reboot, or issue the command:
/usr/sbin/init q
Now, Alt-SysReq F1 switches to VT01, Alt-SysReq F2 switches to VT02,
etc. (if activated as above) Alt-SysReq P switches to the previous
screen. Alt-SysReq N switches to the next screen. Alt-SysReq H
switches to the X console screen (not Alt-SysReq F8).
This is also documented in Sun's FAQ 2245-02,
http://access1.Sun.COM/cgi-bin/rinfo2html?244502.faq Sun's FAQ
has three typos. In Step 2's example, replace the second "mknod
/dev/vt01 c <num> 1" with "mknod /dev/vt02 c <num> 1" In Step 3,
replace "co:" in the FAQ with "v1:" to "v7:" and remove the line
breaks between "-T" and "AT386".
If you're using XFree86, you need to leave one VT open (usually VT07);
otherwise XFree86 will not run.
[Adapted from Casper Dik's Solaris 2 FAQ; XFree86 info from Gantry
Zettler]
_________________________________________________________________
(6.22) How do I upgrade my video graphics card?
First see if you have the driver installed. They are listed when you
run kdmconfig. If the driver is present, configure with kdmconfig. If
it's a new card, see if it's listed in the latest "x86 Video Driver
Update" (VDU) for your Solaris release on
http://access1.Sun.COM/drivers/ If listed, install the VDU.
kdmconfig is ran automatically at the end of the VDU installation.
Before changing cards, choose, from kdmconfig, the 16-color 640x480
VGA setting, which is the lowest-common denominator for VGA video
cards. After switching cards and rebooting (verifying the VGA setting
works for the new card) choose a higher setting with kdmconfig.
See the Update Guide that comes with the VDU on specific installation
instructions for the VDU. Generally, it's done as follows: (assuming
the image downloaded from access1.Sun.COM is named vdu11image.Z and is
in /tmp), type as root:
# cd /tmp
# uncompress du11vid2.Z ; cat du11vid1.bin du11vid2 | cpio -icvdum
# zcat vdu11image.Z | cpio -icvdumB
# ./installdu.sh
_________________________________________________________________
(6.23) How to I burn a CD-R or CD-RW with Solaris?
Use cdrecord (free) or commercial software. SCSI CD-R (Record once)
and CD-RW (Read-Write many times) drives tend to be better supported
than ATAPI drives. For details, see the Sun CD-ROM FAQ at
http://saturn.tlug.org/suncdfaq/ and Jörg Schilling's cdrecord
page at:
http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilli
ng/private/cdrecord.html
_________________________________________________________________
(6.24) Is IPv6 available for Solaris/x86?
Yes--in experimental form. It's available as an update to 2.5 and
2.5.1 See
http://playground.Sun.COM/pub/solaris2-ipv6/html/solaris2-ipv6.ht
ml They say you need a Solaris with no patches installed, but other's
have reported being able to apply the update to systems with patches
(no guarantees!). Reportedly, IPv6 is also available (experimentally)
for Solaris 7. I don't know if the same or different patch is
required. If you wish to connect to the 6bone, an experimental, mostly
tunneled IPv6 network, see http://www.6bone.net/
_________________________________________________________________
(6.25) Does Solaris x86 support multiple processors?
Yes. Solaris x86 automatically detects multiple processors (up to 4).
psrinfo(1M) will print the status of your processors, mpstat(1M) will
report the CPU usages, and psradm(1M) can be used to take processors
offline.
[Based on an answer by John Groenveld]
_________________________________________________________________
(6.26) How do you install XFree86 on Solaris?
Why would you want to? You would if you prefer the window managers
that come with XFree86, are tired of CDE's restrictiveness or style,
or XSun's lack of color depths or non-support for your graphics board.
(If board support is the only problem, consider 3rd party drivers from
XiGraphics, http://www.xig.com/). Of course, it's much easier to
install CDE, if it works for you.
Here's one person's experiences with installing XFree86. Another, more
detailed, set of instructions by Gregory Lazzaro appear at:
http://www.geocities.com/~gregl/htm/Xfree86_setup_rev3.htm As a
final hint, get and read the HOWTOs and books that were written for
XFree86 on Linux.
I finally solved my problem by using XFree86 X server. Since I needed
to tweek things a bit to get it working, here is a short how-to for
people who want to use XFree86 X server and CDE on Solaris 2.6 [I have
a report this also works with Solaris 7].
On Solaris 2.6, Sun changed the way X client communicates with X
server when both the client and X server are on the local machine
(DISPLAY variable is set to ":0"). In short, instead of using
/tmp/.X11-unix, the client connects to the X server using
/tmp/.X11-pipe. Since XFree86 doesn't support /tmp/.X11-pipe, CDE will
not work out-of-the-box on the local display under the XFree86 server.
If you added virtual terminals (see 6.21), you must leave one VT
open (usually VT07); otherwise XFree86 will not run.
After installing and configuring XFree86 (binaries for Solaris are
available from ftp.xfree86.org), /usr/dt/config/Xservers needs to be
copied to /etc/dt/config/Xservers. This line:
:0 Local local_uid@console root /usr/openwin/bin/Xsun :0 -nobanner
in file /etc/dt/config/Xservers should be changed to look something
like:
unix:0 Local local_uid@console root /usr/X11R6/bin/X :0 -bpp 16
For 8-bit displays, "-bpp 16" should be omitted, or changed to "-bpp
24" for 24-bit displays. After that, dtlogin will set the DISPLAY
variable for local session to "unix:0.0" instead of ":0.0" and CDE
will be able to connect to the local X server.
To add fonts from the /usr/openwin/lib/X11/fonts directory to the
default font path for XFree86 server, edit /etc/XF86Config file and
add these lines:
FontPath "/usr/openwin/lib/X11/fonts/F3bitmaps/"
FontPath "/usr/openwin/lib/X11/fonts/Type1/"
FontPath "/usr/openwin/lib/X11/fonts/Speedo/"
FontPath "/usr/openwin/lib/X11/fonts/misc/"
FontPath "/usr/openwin/lib/X11/fonts/75dpi/"
FontPath "/usr/openwin/lib/X11/fonts/100dpi/"
to section "Files". Aliases for CDE fonts are in the F3bitmaps
directory, so you'll need at least this line.
And that should be it.
For those that use S3 Virge cards, it seems that SVGA server (the
default server for Virge cards) has problems with some chipsets. Try
using an old S3V server instead. Also, the problem with returning from
graphics to text mode seems to be present on all three servers I tried
(Xsun, SVGA and S3V).
[Thanks to Aleksandar Milivojevic, by way of John Groenveld]
_________________________________________________________________
(6.27) How do I configure 64K colors for CDE?
Solaris' kdmconfig offers only a choice of 256 or 16M colors for your
graphics board. To configure Xsun to use 16-bit color, configure using
kdmconfig for the desired resolution in 256 color mode. Note the board
line from /etc/openwin/server/etc/OWconfig file. Look in the
referenced file in directory
/usr/openwin/share/etc/devdata/SUNWaccel/boards to see if there is
support for 16bit color mode for your card.
If your board is listed, edit file /etc/openwin/server/etc/OWconfig
and change defdepth="8" to defdepth="16" in it. Also, values for
MaxPClk for some cards are way too low in 16-bit and 24-bit modes in
the /usr/openwin/share/etc/devdata/SUNWaccel/boards file. But if you
want to change this, you are doing it on your own risk.
The CDE logo that is displayed after one logs in is a bit-mapped
grayscale image(?!), but everything else should work just fine.
[Thanks to Aleksandar Milivojevic, by way of John Groenveld]
_________________________________________________________________
(6.28)Are TrueType fonts supported in Solaris?
Yes, Xsun supports them. Use the Font Administrator GUI,
/usr/dt/bin/sdtfontadm, to add them to the server's list of fonts.
[Thanks to Tran Tran]
_________________________________________________________________
(6.29) How do I uncompress a .gz file?
With "gzip -d" (or gunzip, which is gzip linked to gzip). Suprisingly,
Solaris does not come with gzip (it does have zip/unzip). Gzip is
available as a pre-compiled package from
http://www.sunfreeware.com/ (use pkgadd to install) and also as a
tar file (to extract, type "uncompress gzip*Z; tar xvf gzip*.tar") at
ftp://ftp.netscape.com/pub/unsupported/gnu/gzip-1.2.4.x86-sun-sol
aris2.4.tar.Z
_________________________________________________________________
(6.30)Why doesn't /usr/bin/cc work?
Because it's just a front-end "stub" for the unbundled C compiler sold
by Sun (SunPro C). You can also get the free GNU C compiler, gcc, from
various locations, including http://www.sunfreeware.com/ in
pkgadd format. If you install gcc, I recommend that you rename or
compress /usr/bin/cc and softlink (ln -s) /usr/local/bin/gcc (or
whereever it is) to /usr/bin/cc. By default, Solaris comes with
support tools (such as make and libraries) in /usr/ccs/bin,
/usr/ccs/lib and usr/include. If not, add the appropriate packages.
For more information, see the "Software Development" section in Casper
Dik's Solaris 2 FAQ.
_________________________________________________________________
(6.31)How do you get PGP 2.6.2 to compile on Solaris/x86?
PGP, or Pretty-good Privacy, is strong-encryption software for
encrypting, decrypting, and digitally-signing files and data. I would
steer clear of PGP 5 as it has compatibility problems.
First, check to see if your version of PGP 2.6.2 has a bug. In file
src/crypto.c, function make_signature_certificate(), the line: "byte .
outbuf[MAX_BYTE_PRECISION+2];"
To compile, change file makefile, at around line 116, as follows:
$(CPP) $(ASMDEF) 80386.S > _80386.s to
$(CPP) $(ASMDEF) 80386.S | grep -v '^# ' > _80386.s
(Don't forget the leading tab character, cntl-i). Next, type: cd
rsaref/install/unix; make; cd ../../../src; make solx86gcc (if you're
using the Sun WorkShop compilers, change "gcc" to "cc" and remove
"-traditional-cpp" in file makefile).
As a reminder, the US Government considers PGP and other
strong-encryption software a "munition" and prohibits the export of
PGP software to countries other than the US and Canada without an
export license. Certain other governments (e.g., France?) even
prohibit possession of encryption software.
To use PGP, I hightly recommend Garfinkel's book, PGP: Pretty
Good Privacy
[Makefile patch from Joe Shamblin]
_________________________________________________________________
(6.32)How do you connect Solaris to @Home?
Grab this e-zine article "xDSL and cable modems" from:
http://www.zdjournals.com/sun/9905/sun9951.htm (Inside Solaris,
May 1999) The article covers instructions on enabling Solaris with a
cable ISP.
At least for the the East Brunswick, NJ, servers, I had the easiest
time with DHCP (not the static setup):
/etc/hosts:
127.0.0.1 localhost CCxxxxx-A # where CCxxxxx-A is your hostname
24.x.x.x CCxxxxx-A loghost # where 24.x.x.x is your assigned I
P
/etc/nsswitch.conf:
hosts: files dns
/etc/resolv.conf
domain ebnsk1.nj.home.com
nameserver 24.3.196.33
nameserver 24.3.196.33
/etc/dhcp.elx0 (empty file)
/etc/hostname.elxl0 (empty file)
NOTE: replace "elxl0" with your NIC device name
No /etc/defaultdomain, /etc/defaultrouter, or /etc/netmasks files are
used. This info is handled by DHCP. Reboot and you're hooked up.
Here's my (partially disguised) netstat -rn and ifconfig -a outputs:
$ netstat -rn
Routing Table:
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
24.x.x.0 24.x.x.x U 3 2 elxl0
224.0.0.0 24.x.x.x U 3 0 elxl0
default 24.x.x.1 UG 0 44
127.0.0.1 127.0.0.1 UH 0 236 lo0
$ ifconfig -a
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232
inet 127.0.0.1 netmask ff000000
elxl0: flags=4843<UP,BROADCAST,RUNNING,MULTICAST,DHCP> mtu 1500
inet 24.x.x.x netmask ffffff00 broadcast 24.x.x.255
[Thanks to Alan Lucero.]
_________________________________________________________________
(7.0) TROUBLESHOOTING
(7.1) What can I do if Solaris won't boot?
You need to boot from your install CD. Insert the Solaris Software CD
in your CDROM drive. If your CDROM drive/bios isn't bootable, first
insert the "Device Configuration Assistant" (DCA) diskette. At the
"Boot Solaris" menu, choose "CD."
At the "Type of Installation: Interactive or Jumpstart" menu, type "b
-s"
Or, after the video configuration, network, time and date you'll
notice one of the menu's has a button: [Exit] Select Exit and, when it
asks you again "do you want to exit?," just say yes.
Once you're at the UNIX root prompt #, you can mount the boot drive
with "mount /dev/dsk/c0t0d0s0 /mnt"" and view anything wrong with the
boot drive (omit the "t0" for ATAPI/IDE).
[Modified from Bob Palowoda's Solaris 2.4 x86 FAQ]
_________________________________________________________________
(7.2) How do I restore the Solaris boot block without reinstalling?
This may happen when installing a boot manager that comes with another
operating system (such as LILO from Linux) or an after-market multi-OS
boot manager. These sometimes trample's active partition, which in our
case is Solaris. Also, moving the Solaris partition with a partition
manager program such as Partition Magic requires reinstalling the
Solaris boot block. Before taking these steps, first verify the
Solaris partition is active. If it isn't, just make the Solaris
partition active and reboot. Otherwise follow the steps below.
previous question, 7.1.
/dev/rdsk/c?t?d?s2 where ? is the controller #, target ID, disk #, and
slice 2 (whole disk). Omit "t?" for ATAPI/IDE E.g., /dev/rdsk/c0d0s2
important; if it's wrong, you you may hose another partition: prtvtoc
/dev/rdsk/c0t0d0s2 (omit "t0" for ATAPI/IDE). The prtvtoc prints out
the map for the Solaris partition on the hard drive, if found. The
partitions shown on the output are actually "slices" within the
Solaris partition.
installboot (partition boot block) (boot block) (raw disk dev)
E.g., for SCSI:
installboot /usr/platform/i86pc/lib/fs/ufs/pboot \
/usr/platform/i86pc/lib/fs/ufs/bootblk /dev/rdsk/c0t0d0s0
(omit "t0" for ATAPI/IDE)
The Solaris Multiple Device Boot Menu should appear after rebooting.
If not, you can always to an upgrade (re-)install.
_________________________________________________________________
(7.3) What can I do during the Solaris/x86 booting sequence?
Step #1: Boot loader
If you have multiple partitions, the boot loader in the Solaris
partition will come up and ask you which partition you want to boot.
This partition must be the active partition, or at least be marked
active by a third-party boot manager before this boot loader receives
control (not all boot managers have this feature). If you don't answer
in so many seconds, it boots Solaris.
This boot manager is pretty basic. It has no customization. You can't
change the default boot partition to one other than Solaris, you can't
change the timeout value, and you can't change the partition
descriptions. But it gets the job done.
Step #2: Device Assistant
This will ask you to press ESC if you want to change stuff. This is to
make up for the fact that x86 machines don't have a nice OpenBOOT chip
to sort out REAL "Plug and Play".
Basically, in Solaris x86, the Device Assistant seems to set up
certain things in /platform/i86pc/boot. This is so the "real" OS has
some common format to examine for devices, instead of having lots of
nasty x86 hardware specific stuff. That way, Sun can keep the main OS
somewhat hardware independent, and keep it very close to the Sparc
version.
The "Assistant" can actually been of assistance. If you select
"partial scan", then "Device tasks", and then "View/Edit Devices", it
will tell you what Solaris THINKS your devices are, and where they are
at. Quite useful, when Solaris gets completely lost, and you're
wondering if it's your fault, or what.
Otherwise, it can give you a warm fuzzy feeling, if you select "Full
Scan", and you see all your devices properly recognized.
Step #3: OS Boot
Well, actually, the "Boot interpreter". The interface is similar, but
not identical, to SPARC Solaris' OpenBoot 'boot' command. The main
differences I notice are:
* It's "b -r", not "boot -r", if you want to force reconfiguration.
Why would you want to do that? Well sometimes, if your devices have
changed a LITTLE, you might want to do this. You can also invoke it
with a "touch /reconfigure" as root before rebooting.
* You don't have nice device aliases like you do with sparc hardware
that being said, if you do nothing, it should autoboot into the actual
OS in a few seconds. Or you can type something quickly within 5
seconds, and force a "reconfiguration boot", as mentioned earlier.
* The "Driver Assistant" or whatever, really looks for major changes,
like adding or removing a card. However, if, say, you add another disk
drive, you'll probably want to just do "b -r". Note that the Device
Assistant will itself trigger a "b -r", after it has autodetected
hardware changes.
Step #4: The Main OS: Solaris
You made it (I hope)!. Hopefully, you should now see a line with
"SunOS5.7" or similar in it, and a little twirly text character
spinner starting. You are now really in the classic Solariss
environment. From here on in, your experience is almost identical to
your brethen who work with SPARC Sun equipment.
[Thanks to Phil at http://www.bolthole.com/solaris/]
_________________________________________________________________
(7.4) How do I logon as root if the password doesn't work anymore?
Regaining control of a Solaris x86 system where the root password has
been lost can be accomplished by the following steps. Note that any
savvy user can do this with the proper CD-ROM and diskette. Therefore,
of course, physical security of a system is important for machines
containing sensitive data.
Solaris x86.
the boot device.
you straight to a root shell, #, (and you'll be in single-user mode).
create a directory called hdrive under the /tmp directory and then
mount the root hard drive partition under this temporary directory.
mkdir /tmp/hdrive
mount /dev/dsk/c0t0d0s0 /tmp/hdrive #SCSI; for ATAPI/IDE, omit "t0"
following commands.
TERM=at386
export TERM
file:
vi /tmp/hdrive/etc/shadow
to:
root::6445::::::
:wq!
reboot the system:
halt
from the Console Login: as root with no password. Just hit enter for
the password.
root password and secure the system.
[Thanks to Lynn R. Francis, Texas State Technical College]
_________________________________________________________________
(7.5) My licensed software fails because the host ID is 0. What's
wrong?
Intel processor machines don't have an IDPROM, so Sun generates a
serial number, hostid command or sysinfo()'s SI_HW_SERIAL,
pseudo-randomly during installation. The number is stored in
/kernel/misc/sysinit, whose only function, it appears, is to provide
the serial number. If serialization information is tampered or sysinit
fails to load, the host ID will be 0. If you reinstall Solaris,
sysinit will be regenerated and your host ID will change. So be
careful about reinstalling Solaris if you have licensed software that
depends on your host ID. Backup your sysinit file.
To preserve the same ID (and therefore licenses), copy file
/kernel/misc/sysinit to the replacement system. I understand the Sun
Workshop Manual says this is allowed twice per calendar year (please
verify this yourself).
For more information, see the Sun NVRAM/hostid FAQ, available at
http://www.squirrel.com/squirrel/sun-nvram-hostid.faq.html and
elsewhere. This also has tools to fake hostids.
_________________________________________________________________
(7.6) How can I fix Netscape Communicator to render fonts correctly on
S/x86?
This problem occurs with Solaris 2.6 and Netscape Communicator 4.0x,
and has since been fixed. Apply patch 106248, which I'm told fixes
this problem. A workaround is to add the following two lines to your
~/.xinitrc file:
xset +fp /usr/openwin/lib/X11/fonts/75dpi/
xset fp rehash
Another workaround, if you don't have these fonts, is to go into
Netscape Preferences and change the font faces.
[Thank's to Alan Orndorff, Jeffrey Cook, and John Riddoch]
_________________________________________________________________
(7.7) I moved my PCI host adapter to another slot and the system won't
boot!
Don't move the adapter. It isn't a supported feature in Solaris and
isn't easy to recover from. If you have any choice in the matter, move
the controller back to it original slot.
The PCI device number is part of the device's basic ID, including its
child disks. If you change slots, you've effectively removed that
controller and its disks, and added an unrelated controller and disks.
You need to fix up all of the references to the old disks to point to
the new disks.
I've never come up with any strategy better than "boot, observe
failure, fix failure, reboot" for recovering from this kind of change.
For simple cases (single controller, in particular) it can be helpful
to clear /dev/dsk/* and /dev/rdsk/* and run "disks", but that is
perilous too.
Incidentally, changing motherboards is likely to trip exactly this
problem, because motherboards generally number their slots
differently.
To conclude, it's difficult and dangerous, and the general guidelines
involves fixing:
1. /etc/vfstab or /dev or both
2. /devices to match one another
3. possibly removing lines from /etc/path_to_inst in order to make
the right /devices nodes show up
The ultimate goal is to get back the same controller numbers as
before.
[Sun FAQ 2576-02 at
http://access1.Sun.COM/cgi-bin/rinfo2html?257602.faq]
_________________________________________________________________
(7.8) Why is Solaris always booting into the Device Configuration
Assistant?
This happens if you installed Solaris onto a disk other than the
primary boot disk. It also happens if you didn't remove your DCA boot
diskette or if you didn't remove your installation CD-ROM if it's in a
bootable CD-ROM drive. See Sun FAQ 2576-02 at
http://access1.Sun.COM/cgi-bin/rinfo2html?257602.faq on
instructions on how to change your default boot device.
_________________________________________________________________
(8.0) INTEROPERABILITY WITH OTHER OPERATING SYSTEMS
(8.1) Can I install Solaris x86 on a system that already has Win 9x or
NT or both (among other systems)?
When you run the 2.6 install program, it will ask you which partition
you wish to use. On disk1, all you need to do is to create another
partition on your existing disk. You can use Solaris boot manager to
boot Solaris x86, NT, and Win 9x (among other systems).
To shrink an existing MS-DOS/MS Windows partition, if you need to make
room, use something like Partition Magic.
Problems have been reported inter-working with OS/2, however.
Reportedly, the order in which you install things is very important.
Solaris doesn't "share" computers and partitions really well. You need
to install Solaris first, on a partition towards the end, reinstall
the boot manager and add the partition.
Other options for booting is to use System Commander (see question
below), IBM's Boot Manager (bundled with Partition Magic or OS/2),
FreeBSD's OS-BS (see question below) or OS-BootSelect (open source),
instead of the Solaris' Boot Manager.
FreeBSD has a good page on booting multiple operating systems that
apply quite well to any Intel-based operating system at
http://www.freebsd.org/tutorials/multios/multios.html
[Thanks to Barry Katz, Brandon Hume, Joseph A. Faracchio, Joelle
Nebbe, Eugeny Kuzakov, and Sean M. Kelley]
_________________________________________________________________
(8.2) How can I use MS Windows' NT Loader to boot Solaris/x86?
The general idea is that you copy the first sector of your native root
Solaris/x86 partition into a file in the DOS/NT partition. Assuming
you name that file something like c:\bootsect.sun (inspired by
c:\bootsect.dos) you can then edit the c:\boot.ini file (copy boot.ini
to boot.old first): to come up with something like this
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(0)\WINNT="Windows NT"
multi(0)disk(1)rdisk(0)partition(0)C:\BOOTSECT.SUN="Solaris/x86"
C:\="DOS"
This procedure assumes that DOS and NT have been installed onto the
first disk and Solaris/x86 or whatever have been onto the second disk.
Note that in order to use the Windows NT boot loader, the NT partition
must be the active boot partition. Solaris/x86 must also be the active
boot partition, so must reside on another disk (This may be another
reason to use a commercial product, System Commander--see question
below).
Mount a DOS-formatted floppy (if you've converted to NTFS, which isn't
readable from Solaris/x86) or the FAT partition (see question below),
under, say, /mnt. Type:
dd if=/dev/rdsk/c0t0d0p0 of=/mnt/bootsect.sun bs=512 count=1
# (Note: The above is for SCSI; use /dev/rdsk/c0d0p0 for ATAPI/IDE.)
Reboot into DOS or NT. NTFS users copy the bootsect.sun file from the
floppy to C:. Modify the DOS/NT attributes (permissions) on boot.ini
with:
attrib -s -r c:\boot.ini
Edit to add the appropriate entries from the example boot.ini above,
and restore the system and read-only file attributes:
attrib +s +r c:\boot.ini
[Thanks to Krejcarek Brian Grant and the FreeBSD FAQ]
A second, easier, method is to use the "postcard-ware" program
BootPart 2.2 from http://www.winimage.com/bootpart.htm. E.g.,
C:> bootpart.exe (displays the partitions) c:> bootpart.exe 1
bootsect.sun Solaris (Creates a boot sector file bootsect.sun and adds
"Solaris" to the NT loader menu)
[Thanks to Louis Lam]
_________________________________________________________________
(8.3) How can I use the Solaris boot manager to boot Windows NT?
1. Create 3 PRIMARY partitions on the disk in the following order
1. DOS FAT
2. DOS FAT (to become NTFS)
3. empty (to become Solaris)
2. install DOS (or Win 9x) on Partition 1
3. Then install NT on partition 2, converting to NTFS while
installing
4. Finally, install Solaris 2.6 on partition 3 using Solaris
interactive.
Solaris boot manager will be the master boot controler, but then
choose partition 1 to boot NT (yes that is right, not 2). Then the NT
boot manager will come to life, allowing you to select either DOS
(partition 1) or NT (partition 2). Note that Solaris is the active
partition.
[Thanks to Claude Dumas]
_________________________________________________________________
(8.4) How can I use System Commander to boot Solaris/x86 and other
systems?
To use System Commander to dual boot both Win NT and Solaris, make
these two configuration changes to System Commander:
all other partitions from NT and Solaris (so they can't see each
other's partitions).
1. From main System Commander menu pick ALT-S.
2. select "Global Settings" but *DO NOT* press enter.
3. press "ALT-F9" which brings up an internal configuration menu.
4. Change the "Clear Items" menu choice from "MEMORY" to "NO" or
"NONE".
5. press ESC to return to main menu.
_________________________________________________________________
(8.5) Can I install Linux and Solaris on the same drive?
Yes, with certain precautions. Unfortunately, both Solaris/x86 and
Linux swap partitions use the same ID, 0x83. So if you install Solaris
on a drive with a Linux swap partition already on it, it will install
on the Linux swap partition. You have two choices:
swap partition if you have enough memory).
latter, the install program will probably ask if you want to format
what it thinks is your Linux swap partition (and is actually your
Solaris partition) as a swap file. Be sure to not do this!
_________________________________________________________________
(8.6) How can I use Linux LILO boot loader to boot Solaris/x86?
Add something like this to your /etc/lilo.conf file under linux and
rerun /sbin/lilo. Note that Solaris *MUST* be the active partition, on
either the primary or another another hard drive. To use LILO with
Solaris on the primary partition, install LILO in the MBR and mark the
solaris partition as active.
In this example Solaris is on your second hard drive (hence the
"loader" line):
other = /dev/hdb1
loader = /boot/chain.b
label = solaris
For more information, see the Linux HOWTOs and LILO User Guide. For
information on installing Solaris/x86 on your second hard drive, see
below.
_________________________________________________________________
(8.7) How can I use LILO to boot Solaris/x86 on the primary slave IDE?
Basically, the Linux LILO boot loader is used to fool solaris into
thinking the slave is the master and vice versa (with the chain.b
line) Add this in your Linux /etc/lilo.conf:
other=/dev/hdb1
label=solaris
table=/dev/hdb
loader=/boot/chain.b
(use /dev/hdc instead of /dev/hdb if your second drive is the
secondary IDE master instead of the primary IDE slave drive)
Solaris had a bit of trouble because for some reason it had the
default boot device as the primary HD and couldn't mount the root
filesystem off of it (because it wasn't there). BUT, this was fixable
since the device configuration assistant (blue screens) allowed me to
change the default boot device to the second HD. Once I did that, I
was off to the races.
[Thanks to Zoran Marjanski]
_________________________________________________________________
(8.8) How can I use LILO to boot Solaris/x86 on the secondary master
IDE?
Follow the instructions for the previous question substituting
/dev/hdc as directed. An alternate, much-more-difficult method follows
that doesn't involve the "switch drives with /boot/chain.b" trick.
Lim Chee Siang writes:
These are basically the steps I 'discovered' through countless failed
attempts to get Solaris to boot from the secondary master.
I got LILO to boot Solaris/x86 2.5.1 from the master disk of the
secondary IDE. Solaris was initially installed in the primary-master
disk, i.e. the only disk in the system; whereas Win9x and Linux was in
the other disk, which I temporarily removed during Solaris
installation.
Solaris boots according to the boot-path variable in /etc/bootrc.
During boot, fsck will check the disk entries in /etc/vfstab.
Similarly, mount will scan /etc/vfstab when mounting mounting
filesystems.
In order to boot Solaris from secondary-master disk, these two files
MUST be modified, and the /dev/rdsk/ and /dev/dsk/ directories MUST
have the correct links to /devices/isa/ata@1f0,0/ and
/devices/isa/ata@170,0/.
The procedures go like these, assuming you can afford to lose the
Solaris partition--because recovery from incorrect entries in the
files to be modified in the following steps is tricky:
disk as secondary-master. Solaris will create the correct links from
/dev/rdsk/ and /dev/dsk/ to /devices/isa/ata@1f0,0/ and
/devices/isa/ata@170,0/. For example, if you only have one
primary-master (Solaris) and one secondary-master (any disk), you
should see entries like
/dev/rdsk/c0d0sXX -> ../../devices/isa/ata@1f0,0/cmdk@XXXX
/dev/rdsk/c1d0sXX -> ../../devices/isa/ata@170,0/cmdk@XXXX
/dev/dsk/c0d0sXX -> ../../devices/isa/ata@1f0,0/cmdk@XXXX
/dev/dsk/c1d0sXX -> ../../devices/isa/ata@170,0/cmdk@XXXX
we're going to make changes to /etc/bootrc and /etc/vfstab.
a. change boot-path /isa/ata@1f0,0/cmdk@0,0:a in /etc/bootrc to
/isa/ata@170,0/cmdk@0,0:a
b. change all instances of c0d0sXX in /etc/vfstab to c1d0sXX.
Step a informs the secondary Solaris boot loader that we're booting
from the secondary-master disk while step b is for fsck to check the
correct Solaris partitions and mount to find the filesystems for
mounting.
Transfer the disk with Solaris from primary-master to Secondary
master.
and add the following entries to /etc/lilo.conf.
# Solaris at secondary master
other = /dev/hdc1
loader = /boot/chain.b
label = solaris
Proceed with lilo installation as you would normally do.
_________________________________________________________________
(8.9) How can I use OS-BS or System Selector to boot Solaris/x86?
Grab OS-BS [a free boot manager distributed with FreeBSD] from:
ftp://ftp.freebsd.org/pub/FreeBSD/tools/osbs135.exe Or (newer)
from: http://www.prz.tu-berlin.de/~wolf/os-bs.html
Assuming you've already got Linux installed and enough free space for
Solaris, go ahead and install the latter. Solaris then becomes the
Active partition. Follow that installation with OS-BS and configure to
"set startup id", which changes the Active partition on-the-fly.
OS-BS comes in a newer, commercial version, that I use, called System
Selector in the US, De'marreur in France, and Boot Manager elsewhere.
See http://www.BootManager.com/
System Selector needs a small FAT or FAT32 partition to install on.
You also need to either boot a version of DOS or Windows to read the
install files on the CD-ROM drive. Note that this partition doesn't
need to be bootable or active--it is only used to hold files used by
System Selector. System Selector replaces the previous boot block in
the MFT and boots directly from the drive's MFT.
When System Selector's installation menu comes up, you won't see
Solaris listed among the selections under the "System" tab, as you
most other systems that may be on your system, such as Windows or
Linux. Instead, go to the "Partitions" tab and select the partition
marked "Linux Swap." This is actually the Solaris Partition (both
Solaris and Linux Swap partitions share the same code, 83 hex). Select
it and under the "Properties" tab make sure you check "Assign active
ID to this system [partition] before booting."
_________________________________________________________________
(8.10) How can I boot both Solaris/x86 and Win NT on the same disk?
Here's one way of doing it. Solaris/x86 requires it's partition to be
active and uses it's own boot manager with it hard-coded to boot to
Solaris on timeouts. If you want to use NT's boot manager or default
to another operating system, it usually requires installing both
operating systems on separate disks or using a third-party product,
such as System Commander, that makes the partition "Active" on the fly
This solution, described here by Andrew Mickish, is to make a boot
floppy:
Although the Solaris x86 installation manual makes it sound like all
you have to do is partition your disks to get multiple operating
systems to work, I found that this was not the case. To get a dual
boot of Solaris and NT on the same hard drive, without using the
Solaris default boot manager, you have to use a floppy boot disk to
help start one of the OSes. Here is how I got NT and Solaris working
on the same disk.
The following fdisk partitioning causes Solaris to boot from the hard
drive, yet allows you to boot to NT if you insert a floppy disk with
the NT boot loader:
+--------------------------------------------------+
| Solaris [Active, for Solaris] |
| C: PRI-DOS (FAT) [Active, for NT] |
| D: EXT-DOS (FAT) |
+--------------------------------------------------+
Partitioning: The Solaris partition should be created during the
Solaris installation, using Solaris's FDISK. The remaining partitions
should be created during installation of NT.
Active partition: You must set the Solaris partition to be ACTIVE in
order to make it boot to Solaris. NT does not have to be active to
boot. Use a DOS boot disk with FDISK to quickly change which partition
is active.
Boot disk: After setting the NT partition to be active, you still need
the NT boot loader on a floppy disk in order to direct the PC to the
second partition. (Usually the boot loader is on the primary partition
of the hard drive, but that partition is Solaris and unreadable to
NT.) Your floppy directs the boot process to the right partition by
using a BOOT.INI file that says where the NT kernel can be found:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows NT Workstation Version 4.00"
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows NT Workstation Version 4.00
[VGA mode]" /basevideo /sos
Note: The numbering of partitions is one-based, so the C: partition in
the diagram above is in partition #2.
Please send comments and suggestions to mickish@cmu.edu
[Thanks to Andrew Mickish]
_________________________________________________________________
(8.11) How do I mount a DOS partition from the hard drive?
mount -F pcfs /dev/dsk/c0t0d0p0:1 /mnt # SCSI
mount -F pcfs /dev/dsk/c0d0p0:1 /mnt # ATAPI/IDE
Where c0 is the controller number.
t0 is the target (SCSI ID number) (omit for ATAPI/IDE)
d0 is always 0 for SCSI, the drive # for ATAPI/IDE
p0 is the partition; DOS is the first partition here
/mnt is the mount point
You can use the normal UNIX commands to copy files, 'cp', etc., after
that to move the data. DOS filenames are in the old 8.3 format (lower
case) for Solaris 2.5.1, in long filename format (lower case) for
Solaris 2.6, and in long filename format (mixed case, with optional
lower case only) for Solaris 7.
Note: The mount -F pcfs . . ." command won't mount a FAT16 partition
if it was fdisk-ed and format-ted with Windows 9x, or NT 4.0 (at least
for Solaris 2.6 and earlier. Any reports with Solaris 7?). Use DOS
6.x. HPFS (OS/2), FAT64 (Win NT), or NTFS (Win NT) partitions are not
mountable under Solaris at all. FAT32 (Win 9x) are mountable with
Solaris 7. There's some reports of not being able to mount FAT32
partitions if it's not the first partition.
To mount the partitions automatically, put something like this in
/etc/vfstab:
#device device mount FS fsck mount
#to mount to fsck point type pass at boot
/dev/dsk/c0d0p0:1 - /c pcfs - yes -
/dev/dsk/c0d1p0:1 - /d pcfs - yes -
This mounts the DOS partitions (assuming it's the first partition) on
/c and /d, respectively, on startup. For more info, see "man pcfs"
[From Bob Palowoda's Solaris 2.4 x86 FAQ]
Note: p0 refers to the first primary partition and p1, p2, . . .
refers to the logical DOS partitions found in the extended DOS
partition. Solaris/x86 does NOT support DOS directly in the 2nd, 3rd,
or 4th primary partition of a disk. See BugID 1170107. Furthermore,
Solaris/x86 does NOT support more than one Solaris fdisk partition on
a physical disk nor more than 8 Solaris "slices" on a Solaris fdisk
partition.
[Thanks to Randy J. Parker, Norma Adamson, Rob Duarte, and Danny
Huynh]
_________________________________________________________________
(8.12) Does PartitionMagic and BootMagic understand Solaris
partitions?
Yes and no. PowerQuest's PartitionMagic can copy and move Solaris
Partitions, with a low-level sector-by-sector copy. It cannot enlarge
or shrink the Solaris Partition, actually contain multiple "slices" of
various Solaris ufs file systems. Furthermore, after a partition copy,
the boot block needs to be restored. See the question elsewhere in
this FAQ "How do I restore the Solaris boot block without
reinstalling?
BootMagic can be setup to boot Solaris partitions, since it
dynamically marks the partition as active. The setup, however, doesn't
automatically recognize these partitions as Solaris (but as Linux Swap
partitions).
_________________________________________________________________
(8.13) How do I access a DOS-format diskette from Solaris?
Using volume management, type "volcheck". This forces Solaris to poll
the diskette drive (and other drives). The diskette drive isn't polled
automatically (unlike the CD-ROM), as it would quickly wear out. You
should see something like this typing "mount":
/floppy/unnamed_floppy on /vol/dev/diskette0/unnamed_floppy read/write
on Wed Jan 20 09:05:44 1999
To unmount using volume management, type "eject". After a message, you
can manually eject the floppy safely.
You can also mount the diskette in a similar way to hard drive
partitions without using volume management (the old way):
mount -F pcfs /dev/diskette /mnt
Don't forget to turn of the volume management before you try to do
this from the command line or you'll get a "device busy" message.
"/etc/init.d/volmgt stop" will stop the volume manager. To restart the
volume manager, "/etc/init.d/volmgt start".
[From Bob Palowoda's Solaris 2.4 x86 FAQ and Casper Dik's Solaris 2
FAQ]
The GNU mtools package allows access of DOS diskettes without being
root. The diskette isn't mounted, but instead special commands with
the prefix m, such as mcopy, mdir, mdel, etc. are available.
_________________________________________________________________
(8.14) Does Solaris mount and recognize Win 9x partitions with long
file names (VFAT)?
Solaris 2.6 and above uses the "long" (VFAT) file names, but earlier
versions of Solaris use the "short" (DOS/FAT/8.3) file name (for
example, "progra~1"). Solaris 2.6 recognizes the case (e.g. "Program
Files/"), which may be optionally folded to lower case ("program
files") with the foldcase mount option. Earlier Solari folds DOS file
names to lower case only. VFAT refers to the file naming convention
and is completely separate from FAT16/FAT32 (see a earlier question
for that).
[Thanks to Nelson Chan]
_________________________________________________________________
(8.15) How can I make my Solaris files easily available to Windows
9x/NT on a network?
Solaris PC NetLink (aka "Project Cascade") is included in Solaris Easy
Access Server. provides "a complete set of WIndows NT Network
Services," which includes SAMBA-type NT naming, file, print,
directory, and security services for Windows 3.11/95/98/NT clients. It
is based on Microsoft NT 4 code licensed via AT&T ("Advanced Server
for Unix"). For info, see http://www.Sun.COM/solaris/easyaccess/
Personally, I prefer SAMBA, a robust, open source package that
provides SMB services (aka MS Windows networking) from UNIX. This
allows LAN-Manager-type browsing and "Connect Network Drive," and
provides access to UNIX print servers. For the Samba FAQ, sources,
binaries, and other information, see the SAMBA web page at:
http://samba.anu.edu.au/samba/
John Blair's SAMBA: Integrating UNIX and Windows covers
configuring and using SAMBA (ISBN 1-57831-006-7,
http://sun.pmbc.com/bookstore/#1578310067)
Sun has a commercial product, Solstice LM Manager, that works (poorly)
with MS LAN Manager/SMB and links in with NIS/DNS.
_________________________________________________________________
(8.16) How can I make my Solaris files easily available to an Apple
Machintosh on a network?
Use CAP, an excellent open source AppleTalk server software for UNIX.
The Columbia AppleTalk Package (CAP) implements the AppleTalk protocol
stack on UNIX The main applications provide an AppleShare 2.1
compatible server (aufs), a LaserWriter Spooler (lwsrv) and a program
to print to LaserWriters (papif). For more information, see:
http://www.cs.mu.oz.au/appletalk/cap.html
_________________________________________________________________
(8.17) How do I access a Mac diskette from Solaris?
Use a emulator package like Mae from Apple (I understand Mae is not
supported and has some MT-unsafe bugs). For "sneakernet," you can also
use a DOS diskette, as both Solaris and Apple support these.
_________________________________________________________________
(8.18) What is WABI?
WABI is "Windows Application Binary Interface." WABI 2.2 runs old
16-bit native MS Windows 3.x programs (no support is planned for
32-bit Win 9x/NT programs). I would guess the the Sun WABI Technical
Knowledge Base would be the best place to find the latest answers
about WABI.
If you are going to be running WABI on the Intel boxes, at least have
8 MB more than you would use in a normal system. So if you have 16 MB
this means you really want 24 MB of memory if you are going to be
running 1 WABI session. In my opinion it is worth it just to bite the
bullet and get the 32 MB of memory.
The WABI FAQs can be obtained by sending an empty message to:
wabi-questions@East.Sun.COM
The list of current WABI apps can be obtained by mailing:
wabi-apps@East.Sun.COM
Reports indicate that WABI support will be dropped by Sun and replaced
by some other PC-on-Sun product.
[From Bob Palowoda's Solaris 2.4 x86 FAQ and Casper Dik's Solaris 2
FAQ]
_________________________________________________________________
(8.19) Can I use SunPCi on Solaris/x86?
No. SunPCi is an add-on card and software for Solaris on SPARC only.
SunPC emulates a PC with the card and Caldera's "DR-DOS" allowing
Windows 3.1/9x to be installed on top of it. The card has a 300 MHz
K6-2 AMD processor and RAM. It emulates hard and floppy drives, serial
ports, SuperVGA, mouse, keyboard, etc. Generally, SunPCi or it's older
cousin, SunPC, emulates the PC environment OK, although it performs
more slowly than a straight PC (your mileage may vary). Software that
requires a parallel port hardware key (dongle) won't work.
_________________________________________________________________
(8.20) Will Linux programs run on Solaris 2/x86?
The Lxrun program, originally written for SCO, is now available on
Solaris/x86. The Lxrun emulator allows one to execute Linux binaries,
both in ELF and a.out Linux formats. Linux ext2 read-only filesystem
support (mount/unmount) is included with ext2fs.tar.gz. To use you
setup or mount a ext2fs filesystem, say at /usr/local/linux, install
lxrun, setup a PATHMAP file there, then run programs or shells with
"lxrun <program name>.
For more information see the following links:
* The Solaris Lxrun Technical Overview (FAQ) is at:
http://soldc.sun.com/articles/lxrun/
* And another Sun article is at:
http://www.sun.com/linux/lxrun/
* The Lxrun home page is at
http://www.ugcs.caltech.edu/~steven/lxrun/
_________________________________________________________________
(8.21) 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 daily.
That way your clock will give the proper time whether you boot Solaris
or MS-DOS/MS Windows.
If you're running Windows NT and find the clock "overadjusted" twice a
year (that is, it gains or loses an extra hour), you should comment
out (with a "#") the "rtc" line in file /var/spool/cron/crontabs/root.
[Adapted from Casper Dik's Solaris 2 FAQ]
_________________________________________________________________
(8.22) Is Solaris x86 able to execute Solaris SPARC applications?
There's no way to run a SPARC binary on an x86 machine unless you
wrote an emulator for the SPARC CPU and ran it.
[Thanks to Doug McIntyre]
_________________________________________________________________
(8.23) Will my old applications from SVR3 or SCO run on Solaris 2/x86?
Solaris x86 has an emulation mode that should run the majority of
well-behaved SVR3 (including SCO UNIX), and SCO 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. The main standard being iBCS (Intel Binary
Compatibility Standard).
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.
[From Casper Dik's Solaris 2 FAQ]
Linux binaries do not run under Solaris x86.
Work has recently began (12/97) by the 86open group to further
standardize the Intel Unix binary and application interface. For more
information, see http://www.telly.org/86open/
_________________________________________________________________
(8.24) Will my application from Solaris/SPARC work on Solaris/x86? I
have the source.
Yes and no. Generally applications that don't make assumptions about
computer architecture will work. That is, code shouldn't depend on
structure or union alignments, or in what order a number appears in a
word ("big or little endian"). Don't use functions labeled SPARC or
x86 only in the man pages. In other words, "well-behaved" C (or other
language) programs should recompile fine. Sun has a good white paper
on these issues at http://www.Sun.COM/workshop/wp-archdiff/
_________________________________________________________________
(8.25) Can I access Solaris/x86 partitions from Linux?
Yes. Read-only access is available. You need to have Linux 2.1.x or
greater. To see if your Linux kernel recognizes Solaris partitions,
type the following on Linux: dmesg | grep solaris
You should get something like this:
hda: hda1 hda2 <solaris: [s0] hda5 [s1] hda6 [s2] hda7 [s3] hda8
[s5] hda9 [s6] hda10 [s7] hda11 >
This says that Solaris lives in the 2nd partition (hda2), slices 0 to
hda11.
To mount a partition, type something like this:
mount -r -t ufs -o ufstype=sun /dev/hda5 /mnt
This will mount the root slice (s0) on /mnt read-only.
Warning: Softlinks that are relative to root (e.g., /usr/local
pointing to /local) will point to the wrong place. To avoid this
problem, change these links in Solaris to relative soft-links (e.g.,
/usr/local to ../local).
This can be automated with /etc/fstab. If you don't want the
partitions mounted at boot, add ",noauto" after "defaults,ro" (no
space). If you want non-root users to be able to mount partitions, add
",user" (careful!):
# /etc/fstab
# . . .
#Device Mount FS Fsck Mount at
#to mount point type Options pass boot # Slice
/dev/hda5 /solaris ufs defaults,ro,ufstype=sun 0 0 # s0
/dev/hda8 /solaris/var ufs defaults,ro,ufstype=sun 0 0 # s6
/dev/hda9 /solaris/opt ufs defaults,ro,ufstype=sun 0 0 # s3
/dev/hda10 /solaris/usr ufs defaults,ro,ufstype=sun 0 0 # s5
/dev/hda11 /solaris/export/home ufs defaults,ro,ufstype=sun 0 0 # s7
# Note: slice s2, by convention, indicates the whole disk
If, when you type "dmesg" above, you don't see Solaris partitions
recognized, you might have to rebuild your Linux kernel. Be sure to
specify "y" in /usr/src/linux/.config when you type "make config":
CONFIG_UFS_FS=y
CONFIG_SOLARIS_X86_PARTITION=y
Linux 2.2 has experimental write support to Solaris partitions. If you
get this message when mounting in read-write mode: "...
ufs_read_super: fs needs fsck" then UFS function ufs_read_super
somehow decided the fs isn't clean, and therefore set the RDONLY bit.
Type something like this to re-mount in read/write mode (replace
"hda5" with your file system):
mount -o remount,rw /dev/hda5
There's another linux kernel configuration question,
CONFIG_SMD_DISKLABEL, that applies only to Sparc Solaris disks, which
are in yet another format. The answer to that question doesn't matter
for Solaris/x86 filesystems.
_________________________________________________________________
(8.26) What are some books on Windows NT/Solaris integration?
The best book is, IMHO: David Gunter, Steven Burnett, and Lola Gunter,
Windows NT and UNIX Integration Guide (Osborne McGraw-Hill,
1997), ISBN 0-07882395-1,
http://sun.pmbc.com/bookstore/#0078823951
Also see the question above on SAMBA.
_________________________________________________________________
(8.27) How can I view MS Word files in Solaris?
Software Development Corporation's (SDC's) port of Corel WordPerfect.
It support WordPerfect, Word (old and new), HTML, RTF, FrameMaker,
Applix, and several other document formats. It's available as a 30-day
trial fully-enabled download. Price varies and is cheaper for upgrades
and educational use. See http://www.sdcorp.com/
The Applix Office suite can read Word files, among other formats, as
above, and comes with a spreadsheet and other applications. I still
prefer WordPerfect for word processing, but Applix Office offers a
broader array of applications. See http://www.applix.com/
You can also try MS WordView (free), which converts Word 8 (Office
97), but not older, Word files to HTML. WordView is available in
source form (mostly Perl and some C) from
http://www.csn.ul.ie/~caolan/docs/MSWordView.html
StarDivision (www.stardivision.com or www.stardiv.de), a German
software company has it's StarOffice suite for S/86. StarOffice
supports basic PowerPoint and Excel files, in addition to MS Word
files. The "Personal Edition" of Star Office is available for free
download, for non-commercial use, at
http://www.stardivision.com/freesolaris/ For this reason, and
it's familiar MS Office-type interface, this is my preference of these
packages.
For the above software, more complicated Word format files cannot be
converted, especially those saved with "Quick Save" enabled. Be aware
that these office suites seem to require systems with 128MB of memory
or more to perform reasonably (in my experience).
Finally, you CAN'T use PC File Viewer. It's available (and free) only
for the SPARC-resident Solaris 2.6 PC File Viewer is Sun's relabeled
version of Inso Corp.'s (http://www.inso.com/) QuickView Plus.
See http://www.Sun.COM/desktop/products/software/pcviewer.html
_________________________________________________________________
(8.28) I downloaded Internet Explorer but it doesn't install. What's
wrong?
Microsoft Internet Explorer 4 for Solaris is available only for the
SPARC architectures. You'll get this message if you try to install it
with ie4setup: "unexpected ( on line one"
However, Netscape is available from
ftp://ftp.netscape.com/pub/communicator/4.6/english/unix/supporte
d/sunos551_x86/ This address changes slightly for each language and
version. Or try http://www.netscape.com/download/
Netscape comes with Solaris 7 on a separate CD, unless it's the "free"
version of Solaris. For the "free" version you need to Netscape from
the FTP site.
_________________________________________________________________
(8.29) Can I mount other ufs disks, say from BSDi/FreeBSD, and vice
versa?
Maybe. First, although Solaris, BSDi, FreeBSD, and NetBSD share a
common-heritage file system, the Berkeley-style ufs, Solaris has made
extensions. The 32-bit UID field has been modified in Solaris to be a
pointer to a parallel "Shadow inode" with Solaris ACL information.
Also, the superblock has an additional inode field in Solaris and 2
fields have different byte swappings.
Reportedly, you can mount, say, zip disks from FreeBSD, on Solaris by
doing a fsck on them before mounting. Fsck makes these fields Solaris-
compatible. Your mileage may vary and you should test this (in both
directions) before trying this on live data.
_________________________________________________________________
(8.30) How can I use a disk partition on Solaris 2.x which was
previously dedicated to Windows 95 (or other OS) as dual boot?
On Solaris 2.x, use fdisk to find your disk partition table. For
example, on an IDE drive,
# fdisk /dev/rdsk/c0d0p0
would show something like the following:
Total disk size is 524 cylinders
Cylinder size is 16065 (512 byte) blocks
Cylinders
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1 Solaris 0 260 261 50
2 Active Solaris 261 522 262 50
Where "Partition 1" was used for Windows 95. It was deleted and
recreated with "Solaris" type.
Make a ufs filesystem on the partition. (You can not subdivide this
fdisk partition into Solaris slices). For example,
# mkfs -F ufs /dev/rdsk/c0d0p1 4192965
where number 4192965 = 261 * 16065 is the total number of blocks on
this partition, calculated as the cylinder length on this partition
(261 from the above partition table) times the cylinder size (16065
blocks as shown in the header of the partition table.)
Mount the filesystem as usual. For example:
# mount /dev/dsk/c0d0p1 /export/home
[Thanks to Michael Wang. Reference: Sun Microsystems INFODOC ID:
13142]
_________________________________________________________________
(8.31) How can I convert a DOS/Windows text file to a Unix test file?
Use dos2unix <dosformatfile> <unixformatfile> Use unix2dos
<unixformatfile> <dosformatfile> The former removes the ^M and ^Z
characters and the latter adds them. See man dos2unix and man unix2dos
for details.
_________________________________________________________________
[End, Solaris x86 FAQ]
_________________________________________________________________