SunOS 3.5: Unterschied zwischen den Versionen
Luna (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Luna (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 13: | Zeile 13: | ||
set boot device to ie() in the PROM: | set boot device to ie() in the PROM: | ||
>q 019 | >q 019 | ||
EEPROM 019: 73? 69 | EEPROM 019: 73? 69 | ||
EEPROM 01A: 64? 65 | EEPROM 01A: 64? 65 | ||
EEPROM 01B: 00? ----Enter Control-C to exit | EEPROM 01B: 00? ----Enter Control-C to exit | ||
--------------- | --------------- | ||
>EEPROM: Using RS232 A port. | >EEPROM: Using RS232 A port. | ||
Selftest Completed. | Selftest Completed. | ||
Sun Workstation, Model Sun-3/160M. | Sun Workstation, Model Sun-3/160M. | ||
ROM Rev 3.0, 16MB memory installed, Serial #9944. | ROM Rev 3.0, 16MB memory installed, Serial #9944. | ||
Ethernet address 8:0:20:1:7C:32, Host ID 110026D8. | Ethernet address 8:0:20:1:7C:32, Host ID 110026D8. | ||
Testing 16 Megabytes of Memory ... Completed. | Testing 16 Megabytes of Memory ... Completed. | ||
Auto-boot in progress... | Auto-boot in progress... | ||
EEPROM boot device...Boot: sd(0,0,0) | EEPROM boot device...Boot: sd(0,0,0) | ||
Device not found | Device not found | ||
>b ie() | >b ie() | ||
Boot: ie(0,0,0) | Boot: ie(0,0,0) | ||
Using IP Address 192.168.2.22 = C0A80216 | Using IP Address 192.168.2.22 = C0A80216 | ||
Booting from tftp server at 192.168.2.1 = C0A80201 | Booting from tftp server at 192.168.2.1 = C0A80201 | ||
Downloaded 31056 bytes from tftp server. | Downloaded 31056 bytes from tftp server. | ||
Boot: ie(0,0,0)vmunix | Boot: ie(0,0,0)vmunix | ||
Size: 494840+80288+106616 bytes | Size: 494840+80288+106616 bytes | ||
Sun UNIX 4.2 Release 3.5EXPORT (GENERIC) #1: Tue Dec 1 19:03:42 PST 1987 | Sun UNIX 4.2 Release 3.5EXPORT (GENERIC) #1: Tue Dec 1 19:03:42 PST 1987 | ||
Copyright (c) 1986 by Sun Microsystems, Inc. | Copyright (c) 1986 by Sun Microsystems, Inc. | ||
mem = 16384K (0x1000000) | mem = 16384K (0x1000000) | ||
avail mem = 15761408 | avail mem = 15761408 | ||
Ethernet address = 8:0:20:1:7c:32 | Ethernet address = 8:0:20:1:7c:32 | ||
si0 at vme24d16 200000 vec 0x40 | si0 at vme24d16 200000 vec 0x40 | ||
sd0 at si0 slave 0 | sd0 at si0 slave 0 | ||
sd1 at si0 slave 1 | sd1 at si0 slave 1 | ||
sd2 at si0 slave 8 | sd2 at si0 slave 8 | ||
sd3 at si0 slave 9 | sd3 at si0 slave 9 | ||
st0 at si0 slave 32 | st0 at si0 slave 32 | ||
st1 at si0 slave 40 | st1 at si0 slave 40 | ||
zs0 at obio 20000 pri 3 | zs0 at obio 20000 pri 3 | ||
zs1 at obio 0 pri 3 | zs1 at obio 0 pri 3 | ||
mti0 at vme16d16 620 vec 0x88 | mti0 at vme16d16 620 vec 0x88 | ||
ie0 at obio c0000 pri 3 | ie0 at obio c0000 pri 3 | ||
bwtwo0 at obmem ff000000 pri 4 | bwtwo0 at obmem ff000000 pri 4 | ||
bwtwo0: resolution 1152 x 900 | bwtwo0: resolution 1152 x 900 | ||
sd0: scsi bus failure | sd0: scsi bus failure | ||
si0: sd0, unit offline | si0: sd0, unit offline | ||
sd0: scsi bus failure | sd0: scsi bus failure | ||
si0: sd0, unit offline | si0: sd0, unit offline | ||
root on nd0 | root on nd0 | ||
using 198 buffers containing 1622016 bytes of main memory | using 198 buffers containing 1622016 bytes of main memory | ||
?A?N?NG:???D?cloc??ot?i?iti?li?e?--??H??K?AND??? |Ԡ?HŠDA??!?? | ?A?N?NG:???D?cloc??ot?i?iti?li?e?--??H??K?AND??? |Ԡ?HŠDA??!?? | ||
???'t?o?e?c?ec | |||
?li?t?file:??etc?f?t?? | ?li?t?file:??etc?f?t?? | ||
?e?oot?f?ile?...?el?!? | |||
?? | |||
# | # | ||
# ls | # ls | ||
.MINIROOT bin etc tmp | .MINIROOT bin etc tmp | ||
.profile boot lost+found usr | .profile boot lost+found usr | ||
a dev stand vmunix | a dev stand vmunix | ||
---------------------- | ---------------------- | ||
Zeile 83: | Zeile 83: | ||
Use the scsiinfo tools on SunOS to get the disk parameters. | Use the scsiinfo tools on SunOS to get the disk parameters. | ||
root@gepard:~# ./scsiinfo-4.6-sunos4.1.3U1 -f /dev/rsd2c | root@gepard:~# ./scsiinfo-4.6-sunos4.1.3U1 -f /dev/rsd2c | ||
Vendor: DEC | Vendor: DEC | ||
Model: RZ26 (C) DEC | Model: RZ26 (C) DEC | ||
Revision: T386 | Revision: T386 | ||
Serial: 412225157560 | Serial: 412225157560 | ||
Device Type: Disk | Device Type: Disk | ||
Data Transfer Width(s): 8 | Data Transfer Width(s): 8 | ||
Supported Features: SYNC_SCSI LINK_CMD TAG_QUEUE | Supported Features: SYNC_SCSI LINK_CMD TAG_QUEUE | ||
Formatted Capacity: 2050860 sectors (1.0 GB) | Formatted Capacity: 2050860 sectors (1.0 GB) | ||
Sector size: 512 bytes | Sector size: 512 bytes | ||
Physical Cylinders: 2570 | Physical Cylinders: 2570 | ||
Heads: 14 | Heads: 14 | ||
Sectors per track (Avg.): 57 | Sectors per track (Avg.): 57 | ||
Tracks per zone: 14 | Tracks per zone: 14 | ||
Alternate Sectors per zone: 14 | Alternate Sectors per zone: 14 | ||
Alternate Tracks per volume: 0 | Alternate Tracks per volume: 0 | ||
Rotational speed: 5400 rpm | Rotational speed: 5400 rpm | ||
Cache: Read-Only | Cache: Read-Only | ||
data cyl: 2568 | data cyl: 2568 | ||
alt cyl: 2 | alt cyl: 2 | ||
phys cal: 2570 | phys cal: 2570 | ||
---------------- | ---------------- | ||
Zeile 111: | Zeile 111: | ||
after installing the system: | after installing the system: | ||
./MAKEDEV std sd0 sd1 sd2 pty0 mti0 | ./MAKEDEV std sd0 sd1 sd2 pty0 mti0 | ||
mv /etc/ypbind /etc/ypbind.save | mv /etc/ypbind /etc/ypbind.save | ||
setenv TERM vt100 | setenv TERM vt100 | ||
setenv PATH .:/usr/local/bin:/usr/ucb:/bin:/usr/bin:/etc:/usr/etc:/usr/5bin | setenv PATH .:/usr/local/bin:/usr/ucb:/bin:/usr/bin:/etc:/usr/etc:/usr/5bin | ||
---------------- | ---------------- | ||
Zeile 122: | Zeile 122: | ||
add to /etc/rc.local: | add to /etc/rc.local: | ||
# set default route | # set default route | ||
echo 'setting default route' > /dev/console | echo 'setting default route' > /dev/console | ||
route add default 192.168.2.253 1 | route add default 192.168.2.253 1 | ||
-------------------- | -------------------- | ||
amelie:$ telnet john | amelie:$ telnet john | ||
Trying 192.168.2.22... | Trying 192.168.2.22... | ||
Connected to john | Connected to john | ||
Escape character is '^]'. | Escape character is '^]'. | ||
4.2 BSD UNIX (john) | 4.2 BSD UNIX (john) | ||
login: root | login: root | ||
Last login: Sat Mar 9 21:35:33 from 192.168.2.111 | Last login: Sat Mar 9 21:35:33 from 192.168.2.111 | ||
Sun UNIX 4.2 Release 3.5EXPORT (JOHN_2019) #2: Sun Feb 7 11:10:47 PST 1988 | Sun UNIX 4.2 Release 3.5EXPORT (JOHN_2019) #2: Sun Feb 7 11:10:47 PST 1988 | ||
Copyright (c) 1986 by Sun Microsystems, Inc. | Copyright (c) 1986 by Sun Microsystems, Inc. | ||
mem = 16384K (0x1000000) | mem = 16384K (0x1000000) | ||
avail mem = 15695872 | avail mem = 15695872 | ||
Ethernet address = 8:0:20:1:7c:32 | Ethernet address = 8:0:20:1:7c:32 | ||
si0 at vme24d16 200000 vec 0x40 | si0 at vme24d16 200000 vec 0x40 | ||
sd0 at si0 slave 0 | sd0 at si0 slave 0 | ||
sd1 at si0 slave 1 | sd1 at si0 slave 1 | ||
sd2 at si0 slave 8 | sd2 at si0 slave 8 | ||
sd3 at si0 slave 9 | sd3 at si0 slave 9 | ||
st0 at si0 slave 32 | st0 at si0 slave 32 | ||
st1 at si0 slave 40 | st1 at si0 slave 40 | ||
zs0 at obio 20000 pri 3 | zs0 at obio 20000 pri 3 | ||
zs1 at obio 0 pri 3 | zs1 at obio 0 pri 3 | ||
mti0 at vme16d16 620 vec 0x88 | mti0 at vme16d16 620 vec 0x88 | ||
ie0 at obio c0000 pri 3 | ie0 at obio c0000 pri 3 | ||
bwtwo0 at obmem ff000000 pri 4 | bwtwo0 at obmem ff000000 pri 4 | ||
bwtwo0: resolution 1152 x 900 | bwtwo0: resolution 1152 x 900 | ||
sd0: scsi bus failure | sd0: scsi bus failure | ||
si0: sd0, unit offline | si0: sd0, unit offline | ||
sd0: scsi bus failure | sd0: scsi bus failure | ||
si0: sd0, unit offline | si0: sd0, unit offline | ||
root on nd0 | root on nd0 | ||
using 198 buffers containing 1622016 bytes of main memory | using 198 buffers containing 1622016 bytes of main memory | ||
# uname -a | # uname -a | ||
john john 4.2BSD vm sun | john john 4.2BSD vm sun | ||
-------------------------------- | -------------------------------- | ||
gcc-2.5.8 | gcc-2.5.8 | ||
./configure --enable-languages=c m68k-sun-sunos3.5 | ./configure --enable-languages=c m68k-sun-sunos3.5 | ||
build gcc in steps: | build gcc in steps: | ||
make "CC=/usr/local/bin/gcc" LANGUAGES=c | make "CC=/usr/local/bin/gcc" LANGUAGES=c | ||
make stage1 | make stage1 | ||
make CC="stage1/xgcc -Bstage1/" CFLAGS="-g -O" | make CC="stage1/xgcc -Bstage1/" CFLAGS="-g -O" | ||
make stage2 | make stage2 | ||
make CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O" LANGUAGES="c proto c++" | make CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O" LANGUAGES="c proto c++" | ||
make compare | make compare | ||
make install CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O" LANGUAGES="c proto c++" | make install CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O" LANGUAGES="c proto c++" | ||
______________ | ______________ | ||
flex-2.5.4 | flex-2.5.4 | ||
change -g to -O in Makefile | change -g to -O in Makefile | ||
m4-1.4 | m4-1.4 | ||
change -g to -O in Makefile | change -g to -O in Makefile | ||
gcc-2.5.8 | gcc-2.5.8 | ||
X11R4 | X11R4 | ||
use Sun cc. Just set OS version to 3.5 in config/sun.cf and make World. | use Sun cc. Just set OS version to 3.5 in config/sun.cf and make World. | ||
has problesm building/installing server/ddx/sun | has problesm building/installing server/ddx/sun | ||
cc -c -O -I../../../. -I. -I../mfb -I../mi -I../../include -I../../.././X11 -DXDMCP -DSHAPE -DMITSHM -DMULTIBUFFER -DMITMISC sunCG3C.c | cc -c -O -I../../../. -I. -I../mfb -I../mi -I../../include -I../../.././X11 -DXDMCP -DSHAPE -DMITSHM -DMULTIBUFFER -DMITMISC sunCG3C.c | ||
"sunCG3C.c", line 463: CG3AC_MONOLEN undefined | "sunCG3C.c", line 463: CG3AC_MONOLEN undefined | ||
"sunCG3C.c", line 464: CG3AC_ENBLEN undefined | "sunCG3C.c", line 464: CG3AC_ENBLEN undefined | ||
"sunCG3C.c", line 480: CG3BC_MONOLEN undefined | "sunCG3C.c", line 480: CG3BC_MONOLEN undefined | ||
"sunCG3C.c", line 481: CG3BC_ENBLEN undefined | "sunCG3C.c", line 481: CG3BC_ENBLEN undefined | ||
*** Error code 1 | *** Error code 1 | ||
remove all references to CG3 and CG6 in the Makefile. Build server without support for these. We don't need them, because cg3 and cg6 are sbus cards and we don't have those. | remove all references to CG3 and CG6 in the Makefile. Build server without support for these. We don't need them, because cg3 and cg6 are sbus cards and we don't have those. | ||
Zeile 212: | Zeile 212: | ||
sed-3.0.2 | sed-3.0.2 | ||
sed/utils.h: | sed/utils.h: | ||
#include <sys/types.h> | #include <sys/types.h> | ||
make-3.75 | make-3.75 | ||
IOT trap (core dumped) | IOT trap (core dumped) | ||
copy make to /usr/local/bin/make by hand. | copy make to /usr/local/bin/make by hand. | ||
gawk-2.03: FAIL | gawk-2.03: FAIL | ||
use gcc | use gcc | ||
FAILS | FAILS | ||
gzip-1.2.4a | gzip-1.2.4a | ||
cp install-sh /usr/local/bin/install | cp install-sh /usr/local/bin/install | ||
Zeile 234: | Zeile 233: | ||
bison-1.28 | bison-1.28 | ||
--disable-nls | --disable-nls | ||
unzip-5.52: | unzip-5.52: | ||
make sunos3 | make sunos3 | ||
fileio.c: | fileio.c: | ||
#include <missing_strerror.h> | #include <missing_strerror.h> | ||
xpm-3.4k: | xpm-3.4k: | ||
use gcc | use gcc | ||
ajdust path to install to /usr, not /usr/local | ajdust path to install to /usr, not /usr/local | ||
grep-2.4.2: | grep-2.4.2: | ||
replace strcoll with strcmp | replace strcoll with strcmp | ||
+/* Define to `int' if <sys/types.h> does not define. */ | |||
+#undef mode_t | |||
+/* Define to `int' if <sys/types.h> does not define. */ | |||
+#undef mode_t | typedef int mode_t; | ||
typedef int mode_t; | |||
make-3.77: | make-3.77: | ||
glob/fnmatch.c: | glob/fnmatch.c: | ||
#include <sys/types.h> | #include <sys/types.h> | ||
#define NULL 0 | #define NULL 0 | ||
function.c and job.c: | function.c and job.c: | ||
#ifndef remove | #ifndef remove | ||
#define remove unlink | #define remove unlink | ||
#endif | #endif | ||
see if this works. remove() should remove both files and directories. | see if this works. remove() should remove both files and directories. | ||
unlink() only removes files. | unlink() only removes files. | ||
Zeile 273: | Zeile 270: | ||
gawk-3.0.6: | gawk-3.0.6: | ||
/usr/local/lib/gcc-lib/m68k-sun-sunos3.5/2.5.8/include/time.h:16: redefinition of `struct tm' | /usr/local/lib/gcc-lib/m68k-sun-sunos3.5/2.5.8/include/time.h:16: redefinition of `struct tm' | ||
check for #include <time.h> and change to #include <sys/time.h> | check for #include <time.h> and change to #include <sys/time.h> | ||
time.h and sys/time.h cannot both be included. | time.h and sys/time.h cannot both be included. | ||
#include only <sys/time.h>. It will automatically include <time.h>. | #include only <sys/time.h>. It will automatically include <time.h>. | ||
Zeile 283: | Zeile 280: | ||
bash-2.02.1: | bash-2.02.1: | ||
lib/readline/input.c | lib/readline/input.c | ||
lib/readline/parens.c | lib/readline/parens.c | ||
SunOS 3.5 does not declare FD_SET in <sys/types.h> | SunOS 3.5 does not declare FD_SET in <sys/types.h> | ||
create <missing_fd.h> and include here. | create <missing_fd.h> and include here. | ||
gcc-2.8.1: FAIL | gcc-2.8.1: FAIL | ||
in auto-config.h | in auto-config.h | ||
/* Define if you have the <stddef.h> header file. */ | /* Define if you have the <stddef.h> header file. */ | ||
#undef HAVE_STDDEF_H | #undef HAVE_STDDEF_H | ||
/* Define if you have the <stdlib.h> header file. */ | /* Define if you have the <stdlib.h> header file. */ | ||
#undef HAVE_STDLIB_H | #undef HAVE_STDLIB_H | ||
FAILS. xgcc can't assemble properly. | FAILS. xgcc can't assemble properly. | ||
texinfo-4.8: | texinfo-4.8: | ||
use /usr/local/bin/ksh | use /usr/local/bin/ksh | ||
add to lib/strdup.c: | add to lib/strdup.c: | ||
#include <sys/types.h> | #include <sys/types.h> | ||
#define NULL 0 | #define NULL 0 | ||
needs #include <missing_strstr.h> | needs #include <missing_strstr.h> | ||
remove the idef _sun, which includes locale.h from lib/gettext.h | remove the idef _sun, which includes locale.h from lib/gettext.h | ||
libiconv-1.9.2: | libiconv-1.9.2: | ||
--disable-nls | --disable-nls | ||
srclib/setenv.c: | srclib/setenv.c: | ||
srclib/unsetenv.c: | srclib/unsetenv.c: | ||
add #include <sys/types.h> | add #include <sys/types.h> | ||
use /usr/local/bin/ksh | use /usr/local/bin/ksh | ||
gcc-2.7.2.3 | gcc-2.7.2.3 | ||
--enable-languages=c,c++ m68k-sun-sunos3.5 | --enable-languages=c,c++ m68k-sun-sunos3.5 | ||
will use cc first. | will use cc first. | ||
change Makefile to use gcc | change Makefile to use gcc | ||
compile error in stage1: | compile error in stage1: | ||
cp/errfn.c: | cp/errfn.c: | ||
extern int sprintf (char *, const char *, ...); | extern int sprintf (char *, const char *, ...); | ||
tin-2.4.4: | tin-2.4.4: | ||
gcc -DHAVE_CONFIG_H -I. -I../include -I../pcre -I../pcre -DLOCALEDIR=\"/usr/local/share/locale\" -I../include -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE=199506L -O2 -c ./curses.c | gcc -DHAVE_CONFIG_H -I. -I../include -I../pcre -I../pcre -DLOCALEDIR=\"/usr/local/share/locale\" -I../include -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE=199506L -O2 -c ./curses.c | ||
./curses.c: In function `Raw': | ./curses.c: In function `Raw': | ||
./curses.c:622: `ECHO' undeclared (first use this function) | ./curses.c:622: `ECHO' undeclared (first use this function) | ||
./curses.c:622: (Each undeclared identifier is reported only once | ./curses.c:622: (Each undeclared identifier is reported only once | ||
./curses.c:622: for each function it appears in.) | ./curses.c:622: for each function it appears in.) | ||
make[1]: *** [curses.o] Error 1 | make[1]: *** [curses.o] Error 1 | ||
ioctl.h:#define ECHO 0x00000008 /* echo input */ | ioctl.h:#define ECHO 0x00000008 /* echo input */ | ||
#define CBREAK 0x00000002 /* half-cooked mode */ | #define CBREAK 0x00000002 /* half-cooked mode */ | ||
#define ECHO 0x00000008 /* echo input */ | #define ECHO 0x00000008 /* echo input */ | ||
SunOS 3.5 doesn't know about h_addr_list. replace all h_addr_list[0] with h_addr: | SunOS 3.5 doesn't know about h_addr_list. replace all h_addr_list[0] with h_addr: | ||
header.c | header.c | ||
nntplib.c | nntplib.c | ||
curses.c | curses.c | ||
add #include <missing_fd.h> to curses.c | add #include <missing_fd.h> to curses.c | ||
add to pcre/pcre_globals.c: | add to pcre/pcre_globals.c: | ||
#include <sys/types.h> | #include <sys/types.h> | ||
extern void *malloc(size_t); | extern void *malloc(size_t); | ||
extern void *realloc(void *, size_t); | extern void *realloc(void *, size_t); | ||
extern void free(void *); | extern void free(void *); | ||
SunOS 3.5 defines this in /etc/services: | SunOS 3.5 defines this in /etc/services: | ||
"untp 119/tcp usenet" | "untp 119/tcp usenet" | ||
change untp to nntp. | change untp to nntp. | ||
change autoconf.h: | change autoconf.h: | ||
#define TOLOWER_BROKEN 1 | #define TOLOWER_BROKEN 1 | ||
#define TOUPPER_BROKEN 1 | #define TOUPPER_BROKEN 1 | ||
[[Kategorie: | [[Kategorie: UNIX]] | ||
[[Kategorie: SunOS]] | [[Kategorie: SunOS]] |
Aktuelle Version vom 11. April 2023, 12:53 Uhr
Installing SunOS on a Sun3:
SunOS 3.5 runs on classic Sun3 like the 3/160, 3/110, 3/75, 3/60, or 3/50. It does not support the sun3x kernel architecture. It's old and rather simple. There are no shared libraries. It deviates from more modern SunOS 4 in one very important area: It does not netboot like a modern SunOS. It requires a special "nd" server to provide network storage. SunOS 3.5 will be able to use NFS shares just fine, but can't use them for booting over the network.
SunOS will often not properly with with a serial terminal set to 9600 8N1, but requires 7N1.
set boot device to ie() in the PROM:
>q 019 EEPROM 019: 73? 69 EEPROM 01A: 64? 65 EEPROM 01B: 00? ----Enter Control-C to exit
>EEPROM: Using RS232 A port. Selftest Completed. Sun Workstation, Model Sun-3/160M. ROM Rev 3.0, 16MB memory installed, Serial #9944. Ethernet address 8:0:20:1:7C:32, Host ID 110026D8. Testing 16 Megabytes of Memory ... Completed. Auto-boot in progress... EEPROM boot device...Boot: sd(0,0,0) Device not found >b ie() Boot: ie(0,0,0) Using IP Address 192.168.2.22 = C0A80216 Booting from tftp server at 192.168.2.1 = C0A80201 Downloaded 31056 bytes from tftp server. Boot: ie(0,0,0)vmunix Size: 494840+80288+106616 bytes Sun UNIX 4.2 Release 3.5EXPORT (GENERIC) #1: Tue Dec 1 19:03:42 PST 1987 Copyright (c) 1986 by Sun Microsystems, Inc. mem = 16384K (0x1000000) avail mem = 15761408 Ethernet address = 8:0:20:1:7c:32 si0 at vme24d16 200000 vec 0x40 sd0 at si0 slave 0 sd1 at si0 slave 1 sd2 at si0 slave 8 sd3 at si0 slave 9 st0 at si0 slave 32 st1 at si0 slave 40 zs0 at obio 20000 pri 3 zs1 at obio 0 pri 3 mti0 at vme16d16 620 vec 0x88 ie0 at obio c0000 pri 3 bwtwo0 at obmem ff000000 pri 4 bwtwo0: resolution 1152 x 900 sd0: scsi bus failure si0: sd0, unit offline sd0: scsi bus failure si0: sd0, unit offline root on nd0 using 198 buffers containing 1622016 bytes of main memory ?A?N?NG:???D?cloc??ot?i?iti?li?e?--??H??K?AND??? |Ԡ?HŠDA??!?? ???'t?o?e?c?ec ?li?t?file:??etc?f?t?? ?e?oot?f?ile?...?el?!? ?? # # ls .MINIROOT bin etc tmp .profile boot lost+found usr a dev stand vmunix
partition a hard disk using SunOS 4 format. Partitioning and disklabeling using Solaris does not work for SunOS 3. Use the scsiinfo tools on SunOS to get the disk parameters.
root@gepard:~# ./scsiinfo-4.6-sunos4.1.3U1 -f /dev/rsd2c Vendor: DEC Model: RZ26 (C) DEC Revision: T386 Serial: 412225157560 Device Type: Disk Data Transfer Width(s): 8 Supported Features: SYNC_SCSI LINK_CMD TAG_QUEUE Formatted Capacity: 2050860 sectors (1.0 GB) Sector size: 512 bytes Physical Cylinders: 2570 Heads: 14 Sectors per track (Avg.): 57 Tracks per zone: 14 Alternate Sectors per zone: 14 Alternate Tracks per volume: 0 Rotational speed: 5400 rpm Cache: Read-Only data cyl: 2568 alt cyl: 2 phys cal: 2570
after installing the system:
./MAKEDEV std sd0 sd1 sd2 pty0 mti0 mv /etc/ypbind /etc/ypbind.save setenv TERM vt100 setenv PATH .:/usr/local/bin:/usr/ucb:/bin:/usr/bin:/etc:/usr/etc:/usr/5bin
add to /etc/rc.local:
# set default route echo 'setting default route' > /dev/console route add default 192.168.2.253 1
amelie:$ telnet john Trying 192.168.2.22... Connected to john Escape character is '^]'. 4.2 BSD UNIX (john) login: root Last login: Sat Mar 9 21:35:33 from 192.168.2.111 Sun UNIX 4.2 Release 3.5EXPORT (JOHN_2019) #2: Sun Feb 7 11:10:47 PST 1988 Copyright (c) 1986 by Sun Microsystems, Inc. mem = 16384K (0x1000000) avail mem = 15695872 Ethernet address = 8:0:20:1:7c:32 si0 at vme24d16 200000 vec 0x40 sd0 at si0 slave 0 sd1 at si0 slave 1 sd2 at si0 slave 8 sd3 at si0 slave 9 st0 at si0 slave 32 st1 at si0 slave 40 zs0 at obio 20000 pri 3 zs1 at obio 0 pri 3 mti0 at vme16d16 620 vec 0x88 ie0 at obio c0000 pri 3 bwtwo0 at obmem ff000000 pri 4 bwtwo0: resolution 1152 x 900 sd0: scsi bus failure si0: sd0, unit offline sd0: scsi bus failure si0: sd0, unit offline root on nd0 using 198 buffers containing 1622016 bytes of main memory # uname -a john john 4.2BSD vm sun
gcc-2.5.8
./configure --enable-languages=c m68k-sun-sunos3.5 build gcc in steps: make "CC=/usr/local/bin/gcc" LANGUAGES=c make stage1 make CC="stage1/xgcc -Bstage1/" CFLAGS="-g -O" make stage2 make CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O" LANGUAGES="c proto c++" make compare make install CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O" LANGUAGES="c proto c++"
______________
flex-2.5.4
change -g to -O in Makefile
m4-1.4
change -g to -O in Makefile
gcc-2.5.8
X11R4
use Sun cc. Just set OS version to 3.5 in config/sun.cf and make World. has problesm building/installing server/ddx/sun cc -c -O -I../../../. -I. -I../mfb -I../mi -I../../include -I../../.././X11 -DXDMCP -DSHAPE -DMITSHM -DMULTIBUFFER -DMITMISC sunCG3C.c "sunCG3C.c", line 463: CG3AC_MONOLEN undefined "sunCG3C.c", line 464: CG3AC_ENBLEN undefined "sunCG3C.c", line 480: CG3BC_MONOLEN undefined "sunCG3C.c", line 481: CG3BC_ENBLEN undefined *** Error code 1
remove all references to CG3 and CG6 in the Makefile. Build server without support for these. We don't need them, because cg3 and cg6 are sbus cards and we don't have those. Also check sunInit.c for init and create of CG3 and CG6.
sed-3.0.2
sed/utils.h: #include <sys/types.h>
make-3.75
IOT trap (core dumped) copy make to /usr/local/bin/make by hand.
gawk-2.03: FAIL
use gcc FAILS
gzip-1.2.4a
cp install-sh /usr/local/bin/install from gawk-3.0.6
bison-1.28
--disable-nls
unzip-5.52:
make sunos3 fileio.c: #include <missing_strerror.h>
xpm-3.4k:
use gcc ajdust path to install to /usr, not /usr/local
grep-2.4.2:
replace strcoll with strcmp +/* Define to `int' if <sys/types.h> does not define. */ +#undef mode_t typedef int mode_t;
make-3.77:
glob/fnmatch.c: #include <sys/types.h> #define NULL 0 function.c and job.c: #ifndef remove #define remove unlink #endif
see if this works. remove() should remove both files and directories. unlink() only removes files.
gawk-3.0.6:
/usr/local/lib/gcc-lib/m68k-sun-sunos3.5/2.5.8/include/time.h:16: redefinition of `struct tm' check for #include <time.h> and change to #include <sys/time.h> time.h and sys/time.h cannot both be included. #include only <sys/time.h>. It will automatically include <time.h>.
bash-2.02.1:
lib/readline/input.c lib/readline/parens.c SunOS 3.5 does not declare FD_SET in <sys/types.h> create <missing_fd.h> and include here.
gcc-2.8.1: FAIL
in auto-config.h /* Define if you have the <stddef.h> header file. */ #undef HAVE_STDDEF_H /* Define if you have the <stdlib.h> header file. */ #undef HAVE_STDLIB_H FAILS. xgcc can't assemble properly.
texinfo-4.8:
use /usr/local/bin/ksh add to lib/strdup.c: #include <sys/types.h> #define NULL 0 needs #include <missing_strstr.h> remove the idef _sun, which includes locale.h from lib/gettext.h
libiconv-1.9.2:
--disable-nls srclib/setenv.c: srclib/unsetenv.c: add #include <sys/types.h> use /usr/local/bin/ksh
gcc-2.7.2.3
--enable-languages=c,c++ m68k-sun-sunos3.5 will use cc first. change Makefile to use gcc compile error in stage1: cp/errfn.c: extern int sprintf (char *, const char *, ...);
tin-2.4.4:
gcc -DHAVE_CONFIG_H -I. -I../include -I../pcre -I../pcre -DLOCALEDIR=\"/usr/local/share/locale\" -I../include -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE=199506L -O2 -c ./curses.c ./curses.c: In function `Raw': ./curses.c:622: `ECHO' undeclared (first use this function) ./curses.c:622: (Each undeclared identifier is reported only once ./curses.c:622: for each function it appears in.) make[1]: *** [curses.o] Error 1 ioctl.h:#define ECHO 0x00000008 /* echo input */ #define CBREAK 0x00000002 /* half-cooked mode */ #define ECHO 0x00000008 /* echo input */
SunOS 3.5 doesn't know about h_addr_list. replace all h_addr_list[0] with h_addr:
header.c nntplib.c curses.c
add #include <missing_fd.h> to curses.c
add to pcre/pcre_globals.c:
#include <sys/types.h> extern void *malloc(size_t); extern void *realloc(void *, size_t); extern void free(void *);
SunOS 3.5 defines this in /etc/services:
"untp 119/tcp usenet" change untp to nntp.
change autoconf.h:
#define TOLOWER_BROKEN 1 #define TOUPPER_BROKEN 1