CONFIG.SYS - Other Information: Difference between revisions
Line 374: | Line 374: | ||
If your only internet connection is via a modem, then you can REM (or delete) the following lines in the CONFIG.SYS in Warp 4 | If your only internet connection is via a modem, then you can REM (or delete) the following lines in the CONFIG.SYS in Warp 4 | ||
REM DEVICE=C:\IBMCOM\LANMSGDD.OS2 /I:C:\IBMCOM /S | REM DEVICE=C:\IBMCOM\LANMSGDD.OS2 /I:C:\IBMCOM /S | ||
REM DEVICE=C:\IBMCOM\PROTMAN.OS2 /I:C:\IBMCOM | REM DEVICE=C:\IBMCOM\PROTMAN.OS2 /I:C:\IBMCOM | ||
REM RUN=C:\OS2\SMSTART.EXE | REM RUN=C:\OS2\SMSTART.EXE | ||
REM CALL=C:\IBMCOM\PROTOCOL\NETBIND.EXE | REM CALL=C:\IBMCOM\PROTOCOL\NETBIND.EXE | ||
REM RUN=C:\IBMCOM\LANMSGEX.EXE | REM RUN=C:\IBMCOM\LANMSGEX.EXE | ||
REM DEVICE=C:\MPTN\PROTOCOL\AFOS2.SYS | REM DEVICE=C:\MPTN\PROTOCOL\AFOS2.SYS | ||
REM DEVICE=C:\MPTN\PROTOCOL\IFNDIS.SYS | REM DEVICE=C:\MPTN\PROTOCOL\IFNDIS.SYS | ||
REM CALL=C:\OS2\CMD.EXE /Q /C C:\MPTN\BIN\MPTSTART.CMD >NUL | REM CALL=C:\OS2\CMD.EXE /Q /C C:\MPTN\BIN\MPTSTART.CMD >NUL | ||
REM DEVICE=C:\IBMCOM\MACS\NULLNDIS.OS2 | REM DEVICE=C:\IBMCOM\MACS\NULLNDIS.OS2 | ||
If you don't run DOS/Windows TCP/IP programs, then you can remove the DOS TCP/IP support. The relevant lines in CONFIG.SYS are: | If you don't run DOS/Windows TCP/IP programs, then you can remove the DOS TCP/IP support. The relevant lines in CONFIG.SYS are: | ||
REM DEVICE=C:\TCPIP\BIN\VDOSTCP.VDD | REM DEVICE=C:\TCPIP\BIN\VDOSTCP.VDD | ||
REM DEVICE=C:\TCPIP\BIN\VDOSTCP.SYS | REM DEVICE=C:\TCPIP\BIN\VDOSTCP.SYS | ||
REM RUN=C:\TCPIP\BIN\VDOSCTL.EXE | REM RUN=C:\TCPIP\BIN\VDOSCTL.EXE | ||
If you don't use Voicetype remove the following | If you don't use Voicetype remove the following | ||
Line 394: | Line 394: | ||
Remove all statements refering to Voicetype (normally they start with x:\vt) in your various path staements (don't forget your autoexec.bat) | Remove all statements refering to Voicetype (normally they start with x:\vt) in your various path staements (don't forget your autoexec.bat) | ||
LIBPATH | LIBPATH | ||
SET PATH | SET PATH | ||
SET DPATH | SET DPATH | ||
SET HELP | SET HELP | ||
Then delete the following lines: | Then delete the following lines: | ||
SET SPCH_RUN=X:\VT\SPCH_RUN | SET SPCH_RUN=X:\VT\SPCH_RUN | ||
SET SPCH_RO=X:\VT\SPCH_RO | SET SPCH_RO=X:\VT\SPCH_RO | ||
SET SPCH_RW=X:\VT\SPCH_RW | SET SPCH_RW=X:\VT\SPCH_RW | ||
SET SPCH_BIN=X:\VT\SPCH_BIN | SET SPCH_BIN=X:\VT\SPCH_BIN | ||
SET SPCH_PATH=X:\VT\SPCH_RO\LANGS\%L\POOLS | SET SPCH_PATH=X:\VT\SPCH_RO\LANGS\%L\POOLS | ||
SET SPCH_TRN=X:\VT\SPCH_DBF | SET SPCH_TRN=X:\VT\SPCH_DBF | ||
=CREATING MAINTENANCE DISKS= | =CREATING MAINTENANCE DISKS= |
Revision as of 21:29, 29 January 2007
ADDING LVM TO WARP4
If you have Warp4 >FP13 installed togehter with Warp4.5 you may want to add the logical Volume Manager
the following steps add the support for LVM to your OS/2 Warp 4 partition
1.copy these from the boot partition of to the corresponding directories of the Warp 4 partition: \OS2\BOOT\OS2DASD.DMD \OS2\BOOT\OS2LVM.DMD \OS2\DLL\LVM.DLL \OS2\SYSTEM\LVM.MSG \OS2\SYSTEM\LVMH.MSG \OS2\LVM.EXE
2. add to the CONFIG.SYS directly after BASEDEV=OS2DASD.DMD
BASEDEV=OS2LVM.DMD
Thats it. From now on you can use LVM within Warp4
BOOT CD HOW TO
OS/2 Boot CD HowTo V1.1
With kindly permission by Chris Wohlgemuth the developer of Cdrecord for OS/2 and Audiocdcreator
The newest version of this FAQ and also Cdrecord and audio-datacdcreator can be found at: http://www.geocities.com/SiliconValley/Sector/5785/index.html
Creating an OS/2(*) boot CD isn't that easy due to the nature of OS/2. The following HowTo shows you a way with minimal effort. It is tested with OS/2 V4 FP10 IDE only. For a more technical description of the boot process from CD get the cdboot.zip package which contains drivers, sample config.sys files and an informational file.
Disclaimer:
THERE ARE NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE INFORMATION GIVEN MAY BE INSUFFICIENT OR WRONG. YOU MAY USE IT ON YOUR OWN RISK. THE AUTHOR ISN'T RESPONSIBLE FOR ANY DATA LOSS OR DAMAGE AS A RESULT OF USING THIS INFORMATION EVEN IF BEING INFORMED ABOUT THE POSSIBILITY OF SUCH DATA LOSS OR DAMAGE. REPRODUCTION OF THIS PAGE IN ANY FORM WRITTEN OR VERBATIM (INCLUDING CDROM) IS NOT ALLOWED WITHOUT PRIOR PERMISSION BY THE AUTHOR. YOU MAY LINK TO THIS PAGE IF YOU DO NOT CHARGE FOR IT OR CLAIM COPYRIGHT FOR IT.
In short: Don't blame the author if anything goes wrong and your data is shreddered. Don't try to make a couple of Dollars with my page without giving me a Ferrari and a villa in Bel Air.
Prerequisites
You need some utilities but all of them are free:
- BootOS2 for creating the boot image
- LXLite1.2.1, for packing the system files
- CD_BOOT.FLT, a filter driver contained in cdboot.zip.
- VFDISK, a virtual floppy driver (if you don't have a 2.88M floppy
drive). You may also use the Super virtual floppy (Shareware).
- SAVEDSKF.EXE or IMAGE.EXE (included with OS/2 V4 in the DISKIMGS
directory) for grabbing the floppy image
Unpack bootos2.zip and install a 2.88M virtual floppy drive if necessary. Be sure to put the files LXLITE.EXE and LXLITE.CFG from the LXLite package into the bootos2 directory as described in BOOTOS2.DOC.
A text only boot system
This is done really fast. Just start bootos2.exe to create a minimal boot system with the floppy as the target. Replace the drive letter with the one of your 2.88M floppy. Use the LX parameter to compress the files.
bootos2.exe FORMAT:NONE LX TARGET=i:
The config.sys created by bootos2.exe on the floppy is shown below.
PROTSHELL=\OS2\BOS2SHL.EXE SET OS2_SHELL=\OS2\CMD.EXE SET COMSPEC=\OS2\CMD.EXE MEMMAN=NOSWAP,PROTECT CODEPAGE=850 DEVINFO=KBD,GR,\OS2\KEYBOARD.DCP DEVINFO=SCR,EGA,\OS2\VIOTBL.DCP LIBPATH=.;I:\OS2\DLL;I:\OS2\MDOS; SET PATH=I:\OS2;I:\OS2\MDOS SET DPATH=I:\OS2;I:\OS2\MDOS SET PROMPT=[$p] BUFFERS=30 IOPL=YES SET KEYS=ON DISKCACHE=D,LW BASEDEV=IBMKBD.SYS BASEDEV=IBM1FLPY.ADD BASEDEV=IBM1S506.ADD BASEDEV=OS2DASD.DMD BASEDEV=OS2SCSI.DMD <-- Only for SCSI devices BASEDEV=QL510.ADD <-- My SCSI card driver BASEDEV=IBMIDECD.FLT BASEDEV=OS2ASPI.DMD /ALL <-- Generaly not necessary DEVICE=\OS2\TESTCFG.SYS IFS=\OS2\HPFS.IFS /CACHE:64 /AUTOCHECK:DI DEVICE=\OS2\OS2CDROM.DMD /Q IFS=\OS2\CDFS.IFS /Q DEVICE=\OS2\POINTDD.SYS DEVICE=\OS2\MOUSE.SYS
You have to modify this config.sys. First remove the drive letters marked in red. You may also remove any device statements you don't need. In the above example the SCSI stuff may be removed if the CD will be used on a non SCSI system. Add any (BASE)DEVICE statements necessary for the target PC. Make sure a driver for the CD-Rom drive of the target PC is included.
The next change is the important one:
Insert the line
BASEDEV=CD_BOOT.FLT /D:2
right after
[...] BASEDEV=IBMIDECD.FLT
into the config.sys. Don't forget to copy the CD_BOOT.FLT (in the cdboot.zip package) into the \OS2 directory of the floppy!
The config.sys should look something like this afterwards:
PROTSHELL=\OS2\BOS2SHL.EXE SET OS2_SHELL=\OS2\CMD.EXE SET COMSPEC=\OS2\CMD.EXE MEMMAN=NOSWAP,PROTECT CODEPAGE=850 DEVINFO=KBD,GR,\OS2\KEYBOARD.DCP DEVINFO=SCR,EGA,\OS2\VIOTBL.DCP LIBPATH=.;\OS2\DLL;\OS2\MDOS; SET PATH=\OS2;\OS2\MDOS SET DPATH=\OS2;\OS2\MDOS SET PROMPT=[$p] BUFFERS=30 IOPL=YES SET KEYS=ON DISKCACHE=D,LW BASEDEV=IBMKBD.SYS BASEDEV=IBM1FLPY.ADD BASEDEV=IBM1S506.ADD BASEDEV=OS2DASD.DMD BASEDEV=IBMIDECD.FLT BASEDEV=CD_BOOT.FLT /D:2 DEVICE=\OS2\TESTCFG.SYS IFS=\OS2\HPFS.IFS /CACHE:64 /AUTOCHECK:DI DEVICE=\OS2\OS2CDROM.DMD /Q IFS=\OS2\CDFS.IFS /Q DEVICE=\OS2\POINTDD.SYS DEVICE=\OS2\MOUSE.SYS
Ok , one last step has to be done. Grab the image from the floppy with your favorite image utility. Warp 4 users may find the program image.exe on the Installation CD in the directory DISKIMGS:
image i: OSBOOT.IMG
Copy the image file into the folder containing all the data you want to burn on the CD like disk utilities, fdisk, format, chkdsk etc. Build the CD image using the following command:
mkisofs -l -L -J -ocdimage.raw -bOSBOOT.IMG -cboot.cat x:/data
The name after the -b option must exactly match the name of the image file. This option is case sensitive!
You may burn this image on CD now. OS/2 boots to a fullscreen command window using this CD. Read the documentation coming with bootos2 about the features avaiable with such a system. Since the IBM1S506.ADD is included you have full access to the harddisks of the PC for maintenance.
A basic WPS boot system
You need a 2.88M floppy drive and a harddisk partition without an OS/2 installation for temporary installing a basic OS/2 system.
1. First start bootos2.exe to create a minimal boot system with the floppy as the target. Replace the drive letter with the one of your 2.88M floppy. Use the LX parameter to compress the files.
bootos2.exe FORMAT:NONE LX TARGET=i:
2. Install a minimal WPS system using bootos2.exe. You need about 15MB free space on the partition. Use the drive letter of the target partition.
bootos2.exe FORMAT:NONE VGA LX TYPE=WPS TARGET=f:
The display is set to VGA to make sure the CD works on virtual any system.
3. Copy CD_BOOT.FLT from the cdboot.zip package to the OS2 directory of the floppy.
4. Copy PMDD.SYS to the OS2 directory of the floppy. You find this file in the OS2 directory of the basic WPS system.
5. Copy the config.sys of the basic WPS system to the floppy.
6. Copy VDISK.SYS to the OS2 directory of the basic WPS system. The file is located in the OS2\BOOT directory of any standard OS/2 installation.
7. Now you have to modify the config.sys file of the boot floppy. The file looks like this:
PROTSHELL=\OS2\PMSHELL.EXE SET USER_INI=\OS2\BOS2USER.INI SET SYSTEM_INI=\OS2\BOS2SYS.INI SET OS2_SHELL=\OS2\CMD.EXE SET COMSPEC=\OS2\CMD.EXE SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,WARPCENTER SET RUNWORKPLACE=\OS2\PMSHELL.EXE DEVICE=\OS2\PMDD.SYS MEMMAN=SWAP,PROTECT SWAPPATH=F:\ 512 LIBPATH=.;F:\OS2\DLL;F:\OS2\MDOS; SET PATH=F:\OS2;F:\OS2\MDOS SET DPATH=F:\OS2;F:\OS2\MDOS SET PROMPT=[$p] BUFFERS=30 IOPL=YES SET KEYS=ON DISKCACHE=D,LW SET HELP=F:\OS2\HELP BASEDEV=IBMKBD.SYS BASEDEV=IBM1FLPY.ADD BASEDEV=IBM1S506.ADD BASEDEV=OS2DASD.DMD BASEDEV=IBMIDECD.FLT DEVICE=\OS2\TESTCFG.SYS IFS=\OS2\HPFS.IFS /CACHE:64 /AUTOCHECK:DF COUNTRY=049,\COUNTRY.SYS DEVICE=\OS2\OS2CDROM.DMD /Q IFS=\OS2\CDFS.IFS /Q /W DEVICE=\OS2\POINTDD.SYS DEVICE=\OS2\MOUSE.SYS CODEPAGE=850,437 DEVINFO=KBD,GR,\OS2\KEYBOARD.DCP DEVINFO=SCR,VGA,\OS2\VIOTBL.DCP SET VIDEO_DEVICES=VIO_VGA SET VIO_VGA=DEVICE(BVHVGA) DEVINFO=SCR,VGA,\OS2\VIOTBL.DCP
Because the WPS system contains way to much data to fit on the boot floppy we move as much files as possible on the CD as described in the section DEVICE drivers on CD. The following line in the config.sys insures the CD drive gets drive letter x:.
RESERVEDRIVELETTER=W:
Modify the config.sys by replacing the drive letters (in this example f:) with the drive letter of the CD drive. Add and modify the statements as shown below.
PROTSHELL=x:\OS2\PMSHELL.EXE SET USER_INI=y:\OS2\OS2_y.INI SET SYSTEM_INI=y:\OS2\OS2SYS_y.INI SET OS2_SHELL=x:\OS2\CMD.EXE SET COMSPEC=x:\OS2\CMD.EXE SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,WARPCENTER SET RUNWORKPLACE=x:\OS2\pmshell.EXE DEVICE=\OS2\PMDD.SYS <-- Do not add a drive letter here! MEMMAN=SWAP,PROTECT SWAPPATH=y:\ 512 LIBPATH=.;x:\OS2\DLL;x:\OS2\MDOS;\os2;\os2\dll; SET PATH=x:\OS2;x:\OS2\MDOS;\os2;\os2\dll; SET DPATH=x:\OS2;x:\OS2\MDOS;\os2;\os2\dll; RESERVEDRIVELETTER=W: <-- This forces the CD-drive on drive letter x: SET PROMPT=[$p] BUFFERS=30 IOPL=YES SET KEYS=ON DISKCACHE=D,LW SET HELP=x:\OS2\HELP BASEDEV=IBMKBD.SYS BASEDEV=IBM1FLPY.ADD BASEDEV=IBM1S506.ADD BASEDEV=OS2DASD.DMD BASEDEV=IBMIDECD.FLT BASEDEV=CD_BOOT.FLT /D:2 <-- Do not forget this driver DEVICE=\OS2\OS2CDROM.DMD /Q IFS=\OS2\CDFS.IFS /Q DEVICE=\OS2\TESTCFG.SYS IFS=x:\OS2\HPFS.IFS /CACHE:64 /AUTOCHECK:DF COUNTRY=049,\COUNTRY.SYS DEVICE=x:\OS2\POINTDD.SYS DEVICE=x:\OS2\MOUSE.SYS CODEPAGE=850,437 DEVINFO=KBD,GR,\OS2\KEYBOARD.DCP DEVINFO=SCR,VGA,\OS2\VIOTBL.DCP SET VIDEO_DEVICES=VIO_VGA SET VIO_VGA=DEVICE(BVHVGA) DEVINFO=SCR,VGA,\OS2\VIOTBL.DCP DEVICE=X:\OS2\VDISK.SYS 3584,512,512
(This is the driver for a RAM disk which holds the desktop and the *.ini files. The RAM-disk will have the first free drive letter)
CALL=X:\OS2\CMD.EXE /C MD Y:\OS2 & COPY X:\OS2\CMD.EXE Y:\OS2 >NUL CALL=X:\OS2\CMD.EXE /C COPY X:\OS2\DLL\BVSCALLS.DLL Y:\OS2\DLL >NUL REM Copy the *.ini files to the RAM-disk CALL=X:\OS2\CMD.EXE /C COPY X:\OS2_y.INI Y:\OS2 >NUL CALL=X:\OS2\CMD.EXE /C COPY X:\OS2SYS_y.INI Y:\OS2 >NUL
Make sure the HPFS.IFS will be loaded after the CDFS.IFS because you need CDFS.IFS to access the CD.
8. The WPS uses *.ini files to store important information. Using the makeini utility coming with OS/2 and ini.rc and inisys.rc located in the OS2 directory of any standard OS/2 installation we build custom ini-files for the CD. To do so Replace any occurence of a drive letter in the *.rc files with the drive letter of the RAM-disk created during CD boot (Y:). This is a quick and dirty hack because most of the program objects located on the WPS will have wrong settings afterwards. To make it the right way step through the files and adapt any setting as necessary. This is beyond the scope of this HowTo. Save the modified files as ini_y.rc and inisys_y.rc. Use the following commands to create the custom ini files:
makeini.exe os2_y.ini ini_y.rc
makeini.exe os2sys_y.ini inisys_y.rc
The *.ini files are hidden. Use attrib to make them visible. Copy the created files to the directory containing the CD data. The files must be in the root of the CD.
9. Grab the image from the floppy with your favorite image utility. Warp 4 users may find the program image.exe on the Installation CD in the directory DISKIMGS:
image i: OSBOOT.IMG
Put the image file in the directory containing the CD data.
10. Create the CD image using the following command where x:/data contains the files for the CD and F:\OS2 is the directory created by bootos2.exe when building the basic WPS system. All the data in the F:\OS2 directory will be put in the OS2 directory of the CD preserving the directory structure.
mkisofs -l -L -J -ocdimage.raw -bOSBOOT.IMG -cboot.cat x:/dataOS2/=F:/OS2
The name after the -b option must exactly match the name of the image file. This option is case sensitive!
11. You may burn this image on CD now.
Remarks
During boot the standard program objects are created. Because the desktop is on the RAM-disk but the program files are located on the CD most of the settings are wrong. You have to adapt the *.rc files according to your needs.
At the moment it's not possible to create a copy of an installation on CD.
If you choose not to set the display to VGA your CD is probably not usable on other PCs than the one it is created on because of different graphicadapters. The display doctor may be a solution but I havn't tried that.
Swapping is enabled to keep every program happy. But have in mind that you swap on a RAM-disk with limited space. You may extend the disks size but running your favorite office suite while compiling Mozilla will presumably fail...
Hints and Tips
Remarks on BASEDEV= and DEVICE
Any driver loaded in the config.sys via the BASEDEV= statement must be in the floppy image. Because the filesystem isn't fully setup yet the files must be located in the OS2 directory or the root of the floppy(image).
In contrast drivers specified with DEVICE= are loaded when the filesystem functions are avaiable. So you can put them somewhere on the CD and provide the fully qualified path in the config.sys. This means they are not part of the floppy image but are loadable from the CD after the CD filesystem is loaded by the kernel from the floppy image. This is useful if you have little space on your floppy and must include another BASEDEV driver.
Making room on the floppy
There isn't much space on the boot floppy. This may be a problem if you have to include a lot of BASEDEV drivers. There're some ways to make room for the additional drivers.
- Remove the file OS2LOGO in the root dir to get about 60kBytes
- Of course delete unnecessary BASEDEV drivers. For example SCSI stuff
if you need no access to SCSI devices. But be careful OS/2 needs some drivers found in OS2 even if they are not listed in the config.sys e.g. SCREEN01.SYS.
- Move drivers loaded with DEVICE= from the floppy to a directory on the
CD. Read below how to do that.
DEVICE drivers on CD
DEVICE drivers may be loaded from any place in the filesystem. To move them on the CD you have to make sure the CD drive letter does not change because of different numbers of hard disk partitions in different PCs. This is important because you provide the full path with drive letter. Insert the following line into the config.sys to make sure your CD drive gets drive letter x:.
RESERVEDRIVELETTER=W:
After doing so you may load any DEVICE driver using a statement like:
DEVICE=X:\The_path\MYDRIVER.SYS
(C) Chris Wohlgemuth 2000
CONFIG.SYS OPTIMISATION
You can also create multiple configurations for specific optimisations, and then select the appropriate configuration at system boot by pressing ALT-F1. See how to get multiple configuration files in Warp 3 or 4
If your only internet connection is via a modem, then you can REM (or delete) the following lines in the CONFIG.SYS in Warp 4
REM DEVICE=C:\IBMCOM\LANMSGDD.OS2 /I:C:\IBMCOM /S REM DEVICE=C:\IBMCOM\PROTMAN.OS2 /I:C:\IBMCOM REM RUN=C:\OS2\SMSTART.EXE REM CALL=C:\IBMCOM\PROTOCOL\NETBIND.EXE REM RUN=C:\IBMCOM\LANMSGEX.EXE REM DEVICE=C:\MPTN\PROTOCOL\AFOS2.SYS REM DEVICE=C:\MPTN\PROTOCOL\IFNDIS.SYS REM CALL=C:\OS2\CMD.EXE /Q /C C:\MPTN\BIN\MPTSTART.CMD >NUL REM DEVICE=C:\IBMCOM\MACS\NULLNDIS.OS2
If you don't run DOS/Windows TCP/IP programs, then you can remove the DOS TCP/IP support. The relevant lines in CONFIG.SYS are:
REM DEVICE=C:\TCPIP\BIN\VDOSTCP.VDD REM DEVICE=C:\TCPIP\BIN\VDOSTCP.SYS REM RUN=C:\TCPIP\BIN\VDOSCTL.EXE
If you don't use Voicetype remove the following
Remove all statements refering to Voicetype (normally they start with x:\vt) in your various path staements (don't forget your autoexec.bat)
LIBPATH SET PATH SET DPATH SET HELP
Then delete the following lines:
SET SPCH_RUN=X:\VT\SPCH_RUN SET SPCH_RO=X:\VT\SPCH_RO SET SPCH_RW=X:\VT\SPCH_RW SET SPCH_BIN=X:\VT\SPCH_BIN SET SPCH_PATH=X:\VT\SPCH_RO\LANGS\%L\POOLS SET SPCH_TRN=X:\VT\SPCH_DBF
CREATING MAINTENANCE DISKS
The probably easiest way to create Maintenance Disks or Partitions is the use of BOOTOS2 a free IBM-EWS utility.
Together with FP13 and up the creation fails due to some enlarged files. If this happens get additionally LXLITE so the files will be compressed.
1. Backup your original config.sys and create one with only the absolute necessary drivers in it. If you use DANIATAPI.FLT don't forget to shorten it to DANIATAP.FLT in your config.sys and also make a shortened copy in \OS2\BOOT.
2. Start Bootos2 with the parameter: '2DISK LX'
3. When Bootos2 asks to insert 'Target Disk 1' copy sysinstx.com from \OS2\INSTALL\BOOTDISK to the \BOS2TEMP subdirectory where BOOTOS2 is installed before proceeding. This will overwrite the old sysinstx.com from your original Warp4 Installationdisks.
4. Now proceed with inserting 'Target Disk 1'.
5. After finishing the Maintenance Disks you may want to copy systinx.com to 'Target Disk 2' in the \OS2 subdirectory, so you will be able to install Warp4.
6. Make a third Disk with some utilities on it e.g. FC/2, or DFSEE or other VIO maintenance programs. As some tools need additional DLL's make a \OS2\DLL subdirectory on this disk and copy: moncalls.dll, moucalls.dll, msg.dll, nsl.dll, quecalls.dll and viocalls.dll from your \OS2\DLL directory into.
7. Don't forget to copy the backup'ed original config.sys back to config.sys in your boot-drive
ENABLE REXX IN THE CONFIG.SYS
The question of whether REXX programs can be called from within the config.sys file has been asked by a number of people. Russ Williams wrote to All:
RW> Can anyone tell me what restrictions there are on running RW> REXX programs from config.sys (via "CALL=")? It doesn't RW> work for me, and the on-line help is no help.
You cannot. The DLLs required to support Rexx are not loaded until Presentation Manager is loaded. If you require Rexx support earlier, look for a program call SRVREXX at a fine BBS near you.
Adding the line RUN=SRVREXX.EXE to the config.sys will immediately initialize Rexx. You will then be able to access Rexx with or without PM being loaded.
HPFS386 HOW-TO
Installing HPFS386 (from Warp Server Advanced) on Warp4
With kindly permission by Al Savage, http://asavage.fdns.net
IBM has said that, if you own Warp Server Advanced (WSA) or another product which uses the HPFS386 file system, it's OK with them for you to also install HPFS386 on any other Warp system you have.
First Steps: To install HPFS386 on a Warp4 (non-LanServer) box, you must have access to a WSA box that has the optional HPFS386 file system installed, for these files.
On the W4 box, create: x:\IBM386FS Copy the contents of the WSA box's x:\IBM386FS dir to the W4 box.
On the W4 box, if you do not have File & Print Services ("Peer Networking") installed, create: x:\IBMLAN
On the W4 box, create: x:\IBMLAN\NETPROG Copy these files from WSA box's x:\IBMLAN\NETPROG dir to the W4 box: CACHE386.exe CACH.msg CAC.msg
Edit CONFIG.sys: Place a 'REM' in front of IFS=E:\OS2\HPFS.IFS Add IFS=x:\IBM386FS\HPFS386.IFS /A:* /AU Add x:\IBMLAN\NETPROG; to LIBPATH Add x:\IBMLAN\NETPROG; to DPATH Add x:\IBMLAN\NETPROG; to HELP Add RUN=x:\ibmlan\netprog\cache386.exe
This last is absolutely required if you have Peer Networking installed. (Reference: http://duanec.indelible-blue.com/wsonw4/0000c416.htm)
If you do not add this line to your CONFIG.SYS, you will get the following error whenever you start the File and Print server:
Net 3091: the CACHE386.exe is not running, The server cannot be started.
You can start CACHE386.EXE manually from a command prompt. However, it is recommended that you edit the CONFIG.SYS and add the above statement.
Edit x:\IBM386FS\HPFS386.ini: Edit "lanroot = x:\IBMLAN" to match your install drive. Edit "cachesize = 32000" (or whatever the number is) to match your desires. There are a bunch of other parameters you can reset as well. Don't, unless you think you know what you're doing.
Update HPFS386 files with WSA update IP08532 (from IBM) Running the CSF on this update won't work, because it will only update half the files. Something about it not being a "real" LS box, though CSF won't complain. It'll pretend to update HPFS386, but fails to update CACHE386.exe, so it's better to apply the update file-by-file. Use the Fastkick/DSKXTRCT method to unpack disks 4, 5, and 6 from:
IP08532.4dk
IP08532.5dk
IP08532.6dk
[directory structure of IP08532]
This will create a directory structure like this:
Unpack (using UNPACK.exe, in Fastkick package) these files FIX\HFS.3\BOOTSH.EX_ FIX\HFS.3\HPFS386.IF_ FIX\SRV.10\HPFS386.DL_ FIX\SRV.10\CACHE386.EX_
Move BOOTSH.exe & HPFS386.ifs to x:\ibm386fs
Move HPFS386.dll to x:\os2\dll (this file may not be needed, but this has not been tested)
Move CACHE386.exe to x:\ibmlan\netprog
If you are running HPFS386 at this time, you may have to boot without loading CACHE386.exe to replace the old copy. If you are using a process killer (or have "SET SCKILLFEATUREENABLED=ON" in your CONFIG.SYS) you can kill the running CACHE386.exe and then copy over it.
Reboot!
Create HPFS386 Boot Diskettes
Create Warp4 Boot diskettes normally, or copy the installation diskettes and update them as necessary for modern, large HDDs.
On Disk1 (ie the second diskette), edit CONFIG.sys : Add "A:\;" to the beginning of the "PATH=", "LIBPATH=", and "DPATH=" lines.
Modify the line ifs=hpfs.ifs /c:64 to read IFS=HPFS386.IFS /AUTOCHECK:*
Modify the line protshell=sysinst1.exe to read PROTSHELL=BOOTSH.EXE CMD.EXE
On Disk2 (ie the third diskette): Delete these files: HPFS.IFS MARKETNG.MSG FDISK.COM TEDIT.HLP TEDIT.EXE RMVIEW.EXE This frees up space to add the following files. Copy these files from x:\IBM386FS to A:\ : Copy these files from x:\IBM386FS to A:\ : BOOTSH.EXE BSH.MSG BSHH.MSG HFS.MSG HFSH.MSG HPFS386.IFS IBMLN386.DAT
Create directory A:\IBM386FS Copy x:\IBM386FS\HPFS386.ini (on HDD) to A:\IBM386FS
Copy x:\IBM386FS\HPFS386.ini to A:\IBM386FS Edit A:\IBM386FS\HPFS386.ini and make the cache size reasonable for your system.
Create a Disk3 (ie a fourth diskette) for utilities, and copy these files to it (ideally, from a FP15+ HDD installation): TEDIT.HLP TEDIT.EXE FDISK.COM CHKDSK.COM CHKDSK32.DLL NLS.DLL UHPFS.DLL VIOCALLS.DLL ZIP.EXE UNZIP.EXE UNZIP32.DLL SHPIINST.DLL
Done! Use Disk3 if you need to run CHKDSK or FORMAT.
INSTALLING IOMEGA PARALLEL DRIVES
Installing the OS/2 Warp drivers for the Iomega Zip drive.
Try first the new BASEDEV PPAOS2.ADD it should work with ALL Zipdrives (100, 100+ and 250), if this doesn't work use the following steps, but keep in mind that the origianl Iomgea driver only works with Zip100 and there also only with older models.
1.Obtain the latest Iomega ZIP drive drivers for OS/2 from iomega 2.copy it to an empty temporary directory 3.double click OS2V234.EXE (depends on version downloaded from the ftp site), or run from OS/2 command line window. This unzips the driver zip file, and a copy of pkunzip so the drivers can be unzipped. 4.read the readme that came with the drivers. 5.run extract.bat You must finish the file decompression by running the EXTRACT.BAT file. This will create two new directories labled DISK1 and DISK2. DISK1 -contains the Iomega Tools and Win-OS/2 DISK2 -contains the Drivers and Utilities OAD version 2.34. 6.Copy each of the disk directories to a seperate floppy. Open the disk1 folder in the PM, and insert an empty, formatted floppy in the floppy drive. Select all the objects in the disk1 folder, and drag them to the floppy icon. After the copy is completed, close the disk 1 folder, remove the floppy from the floppy drive, insert a second blank floppy, open the floppy icon, open the disk2 folder, select all objects in the folder, and drag them to the floppy icon. 7.decide which driver interface(filter) you need. The following is a breakdown of adapters and drives used with the Iomega ADD Filter and with Iomega OAD.
ADD FILTER* SUPPORTED IOMEGA HARDWARE:
ADAPTERS: DRIVES: PC1600 16 bit SCSI adapter** Bernoulli 230 Zip zoom accelerator card** Multidisk 150 Jaz Jet Zip 100 SCSI Jaz 1GB
- The Iomega ADD Filter, allows you to use non- Iomega SCSI adapters compatible with OS/2 Adapter Device Drivers(ADD). Refer to your adapter documentation or manufacturer for information on OS/2 ADD compatibility.
OAD SUPPORTED IOMEGA HARDWARE: ADAPTERS: DRIVES: PC1616 16 bit SCSI adapter Bernoulli 230 PC1600 16 bit SCSI adapter** Multidisk 150 PC800 8 bit SCSI adapter Bernoulli 90 PC2 8 bit SCSI adapter Zip 100 SCSI PC4 8 bit SCSI adapter Zip 100 Parallel port PPA-I parallel port SCSI adapter Jaz 1GB PPA-3 parallel port SCSI adapter Zip zoom SCSI accelerator card**
- The Zip zoom accelerator card and PC1600 may conflict with Adaptec 152x adapters or Adaptec 6x60 based SCSI adapters. If you have more than one of these adapters, refer to "Solving Problems" in the OADMAN.EXE or the ADDMAN.EXE
electronic manuals before installing the adapter or running Automatic Setup. If you are installing the PC1600 or the Zip zoom accelerator card for the first time, Iomega recommends these adapters be supported with the Iomega ADD Filter.
Note the parallel port version requires OAD
Don't worry about correspondence between adapters and drive type, for instance, the Zip 100 Parallel port does not require the PC4 8 bit SCSI adapter.
8.run setupref.exe from disk2 It will inform you of the options you need to make for selecting ADD or OAD filters, and how to load the distribution floppies onto your hard disc. 9.Run the executeable that matches the driver type you will need. Internal help is available from within these programs. Before you run them, you should be aware of the settings of your parallel ports if you have changed them from the defaults. 10.Iomega ADD Filter and Iomega OAD Filter -- Automatic Setup N.B., to make these instructions generic, where they refer to the OAD filter, I use OAD/ADD to indicate that the selected filter name should be used.
I.Insert the Iomega Tools for OS/2 install diskette into a floppy drive. II.Run the OS/2 Device Driver Install program. Open your OS/2 System icon, open your System Setup folder, and double click on the Device Driver Install icon. III.Check source and destination drives. Make sure the source drive is the floppy drive used in step I. The destination drive must be your OS/2 boot drive if you want OAD to load automatically when your system boots. IV.Install the Open Architecture Drivers (OAD or ADD) Select Install and Iomega OS/2 OAD/ADD Driver, then click on OK. The OAD/ADD files are copied automatically to the selected destination drive. When file copying is complete, remove the Install diskette from your floppy drive. V.Exit the OS/2 Device Driver Installation window. Select EXIT, YES, and OK to exit. VI.Preform an OS/2 SHUTDOWN and reboot the system. NOTE: While the system is rebooting, the OAD/ADD driver will display a message indicating that configuration is not yet complete. Continue with step VII. to configure the software. VII.Run GENOAD. (or GENADD) Open an OS/2 full-screen prompt and type:
CD OAD (change to the OAD directory) GENOAD (run GENOAD)
{if the ADD filter is appropriate for you: CD ADD (change to the ADD directory) GENADD (run GENADD)}
VIII.Press when you are ready to leave the Introduction screen. The Introduction screen explains how to use GENOAD/GENADD, including navigation information and how to make selections. IX.Select "Scan Physical Connections" from the GENOAD/GENADD Main Menu and follow the screen instructions. Supported devices found on your system are displayed in the window as the scan progresses. Make sure all your Iomega devices are listed when the scan is finished. If No Devices are Found. . . Refer to Solving Problems in this guide or in the electronic manual. X.Exit the hardware scan window. Press twice and select YES at each dialog box to save the OAD/ADD changes, save OAD/ADD as CONFIG, and overwrite the existing OAD/ADD file. XI.Exit GENOAD. Press ESC twice and select YES to exit. XII.Perform an OS/2 SHUTDOWN and reboot the system.
This completes Automatic Setup. For additional information on Iomega OAD refer to the electronic manual OADMAN.EXE. For additional information on Iomega ADD refer to the electronic manual ADDMAN.EXE.
Your WARP system should boot up recognizing your ZIP drive at this point.
If using the parallel port there are options to choose optimization levels for the zip drive, and choose which parallel port driver is used, if there is a desire to override the automatic parallel port support mechanism...
LINUX
As Linux gets more and more common here some BASIC rules for the installation, so that you can have a trip back in times ;-)
1. Have the IBM OS/2 Bootmanager installed. Using LILO is not advised, although you can also use LILO as bootmanager.
2. If you posess the Gammatech-Utilities make an backup of your partition-table for an easier recovery if anything went wrong. Naturally this can also be done with the Graham-Utilies, but as I don't have 'em I'm not familiarized with them.
3. Make the partitions for Linux with OS/2 fdisk but DON'T format them. Linux can - like OS/2 - boot from any logical partition. And - again like in OS/2 - the boot partition has the same limitations (e.g. if no support for LBA is in your Motherboards BIOS the partition on (E)IDE Drives has to be inside the magical 528MB range). Minimum is one partition to mount the root (/) and one smaller partition for the swap drive - its size depends on your installed memory and your needs, maximum size is 128 MB with kernel 2.0x, as a 'simple' rule, make the swap partition as large as your installed memory.
4. Add Linux to your Bootmanger menu.
5. Now you can install Linux itself (see your Linux Guide for doing this). Install the Linux Bootmanager LILO ONLY in the partition where you have mounted the Linux root (/) e.g. /dev/hdc5.
NEVER NEVER INSTALL LILO IN THE MBR if you want to avoid a lot of troubles. (I know what I'm talking of). Naturally this is not true if you decide to use LILO as bootmanager.
6. If you should have the curious idea to change your partitions AFTER the installation of Linux (e.g. you want to make out of two small ones one big, or the other way round). You'll get CERTAINLY a KERNEL PANIC whenever you try to boot Linux: In this case you have to boot from the (hope you've done it before) generated Linux rescue disk(s) and then change your mounted drives (e.g. /dev/hdc5) in Linux, install Lilo new ... (see your Linux reference for how to do this).
7. Together with the ext2.ifs you can read-write access the linux drives from OS/2. Unfortunately newer Linux releases have changed ext2 a little bit, so ext2.ifs fails, but you can create the ext2 Partition with ext2.ifs and install Linux afterwards without formatting the drive.
8. To read-access the OS/2 HPFS formatted drives compile the Linux kernel with the HPFS-MODULE option. There are also modules for read and write access of HPFS. Thanks to John Thompson by IBM they are now available at Hobbes, or look at ftp://sunsite.unc.edu/pub/Linux/. Actually they are available for the kernel 2.0x, 2.1x. and 2.2x.
9.JFS is also available for Linux see: http://www-124.ibm.com/jfs/. When creating a JFS volume with Linux use the -O option to make it compatible with OS/2
MOVING OS/2 TO ANOTHER PARTITION
By Daniela Engert
Rule of thumb: any drive letter found at a proper place in a valid WPS object is adjusted by the WPS if the object in question is targeted to another drive letter. Of course this doesn't include data stored in the OS/2 INIs which are *not* WPS objects (some software stores pointers to themselves there).
So, the basic operation of moving an existing desktop to another drive letter is *move* the "Desktop" tree from the source drives object to the target one. If the target drive letter doesn't yet exist, create it beforehand. Then reboot to a command line window only (no WPS started!) and issue "XCOPY source: target: /H /O /T /S /E /R /V". This moves the rest of your boot drive to the new target; don't forget to adjust CONFIG.SYS. If required run "SYSINSTX target:" to make the new target drive bootable, You may need to add the new target to your favourite bootmanager as well.
If you need to transplant a desktop to another location, save away \OS2\OS2.INI, \OS2\OS2SYS.INI and the full \Desktop tree including *all* extended attributes. This needs to be done without PM active! Restore the mentioned items to the new target and you're done...
Using these operations I migrated several OS/2 2.1, Warp3 and Warp 4 installations to several new drive letters (D: -> E: -> F: -> ...), changed the underlying hardware and disk drives quite often, cloned existing desktops or full installations to new target drive letters (for testing purposes), and on and on...
No magic, just basic WPS features are involved.
NETSCAPE SETTINGS
Netscape Communicator 4.61 for OS/2 Release Notes
A number of additional browser configuration options are available in the OS/2 version of Netscape Communicator 4.61. These options can be enabled or disabled by editing the file PREFS.JS. This file is located in your NETSCAPE\USERS\NAME directory where NETSCAPE is the directory where you installed Netscape and NAME is the name of the user you created when you installed Netscape. Note these files might be in your 4.04 directory if you installed on a machine that has 4.04.
user_pref("os2.fonts.allow_arial", true|false);
By default, Netscape Communicator for OS/2 Warp only allows the Arial font to work on pages that use the Western Encoding. This is because web pages in other languages do not display properly with Arial. This preferences allows you to turn off Arial for ALL pages or to turn on Arial for ALL pages. Note: If you want the original behavior, you must REMOVE this preference. Neither true or false emulate the original behavior.
user_pref("os2.replace_dots", true|false);
Sometimes, when files are downloaded, Netscape changes the name incorrectly. This happens when a filename has two extensions such as test.tar.gz. This preference prevents Netscape from changing the name of any filename it is going to download. Note: default=false
user_pref("os2.use_system_codepage", true|false);
For some national language functions within Netscape, the codepage of your operating system is used. If you set this value to false, Netscape will use your default encoding to be used. This allows more functions of a translated non-Western browser to work on a Western system configured for codepage 850. Note: default=true
user_pref("os2.use_oem_charset", true|false);
The User Defined Encoding defaults to 1004. This defaults the User Defined Encoding to your system codepage. Note: default=false
user_pref("os2.emulate.windows", true|false);
This preference causes your browser as a Windows browser. You can use this when a site will not let you use it. You can test this by typing javascript:alert(navigator.appVersion) in the URL bar. Note: default=false
user_pref("os2.drag_menu", true|false);
The toolbar menus for the OS/2 version were changed to be real menus, not simulated menus as in the Windows product. This preferences causes the simulated menus to be used by default. Note: default = false
user_pref("os2.url_completion", true|false);
This preference allows you to turn off URL completion in the URL bar. Note: default = true
user_pref("browser.bidi.bidi_enabled", true|false);
Although the OS/2 browser supports Arabic and Hebrew pages, by default, Hebrew and Arabic options are only available on Arabic and Hebrew systems or when you are viewing an Arabic or Hebrew page. This preference forces the browser to think it is on an Arabic or Hebrew system. Note: If you want the original behavior, you must REMOVE this preference.
user_pref("browser.download_unknown_as_binary", true|false);
By default, Netscape downloads unknown file types as text files. This preferences forces Netscape to download unknown types as binary. Note: default = false
user_pref("os2.mail_sound", "filename");
With the OS/2 version of the browser, you can specify a WAV or MIDI file to play when you receive mail. Change filename to the fully qualified name of the file you want to play.
user_pref("mailnews.start_page.enabled", true|false);
When Messenger is started, by default it loads a Netscape home page. This preference turns that off. Note: default = true
user_pref("mailnews.start_page.url", "name_of_page");
When Messenger is started, by default it loads a Netscape home page. This preference turns that off. This allows you to change the page that is loaded.
user_pref("browser.cache.memory_cache_size",4096);
Sets the Browser internal cache size to 4096 kByte. MacIntosh users ;-) have reported that this speeds up the Navigator.
NEW MOTHERBOARDS
HOW TO use new Motherboards with more than 64MB Ram
Before using this advise try to get an updated bios for your motherboard or an newer OS/2 Kernel and test if this solves the problem. If not (and only then) follow these steps.
1. Get the patchldr.zip developed by Daniela Engert from hobbes, leo or somewhere else
2. Follow this description (from patchldr.zip)
From Warp 4 on, OS/2 uses the BIOS function Int15 [AX=E801] to get the size of installed memory. In the recent past some authority sentenced this function as 'not ACPI compliant' and made the BIOS manufacturers to remove this function. WinXX is not affected by that change because it uses BIOS function Int15 [EAX=0000E820] which was added later and which is considered 'ACPI compliant'.
You may run the DOS based utility MEMTEST from this package to determine if your BIOS exhibits the defect I described. Straight DOS is preferred, but it works in an OS/2 VDM sufficiently well. If BIOS function Int15 (E801) is reported as 'not supported', and you have more than 64 MeB of memory installed, the PatchLDR utility will solve the problem.
The utility patches OS2LDR so that the query for the size of installed memory no longer uses BIOS function Int15 [AX=E801] but Int15 [EAX=0000E820]. Due to space constraints I had to remove the memory detection routines for PS/2 machines. But, as these aren't affected by the recent BIOS changes, this is a non-issue.
This patch utility is supposed to work with all fixpacks of Warp 4, the later fixpacks of Warp 3 (including derivatives), and the current version of Warp Server for e-Business. It was able to patch all of my different Warp 3/4/SeB installations successfully. You may decide to run OS/2 with the patched OS2LDR even if you don't need it right now.
According to my own tests and a lot of user reports it solves the memory size defect found with all (?) of the Athlon boards and others as well. So I consider the patch as safe.
USAGE 1) move to the root of the boot partition. 2) enter the command 'ATTRIB -R -S -H OS2LDR'. 3) enter the command 'PatchLDR'.
If step 3 fails, an error message will be displayed. If it succeeds, the old OS2LDR is copied to OS2LDR.bak, and a new, patched OS2LDR is created.
4) enter the command 'ATTRIB +R +S +H OS2LDR'.
From the next reboot on, the new memory size detection code is in effect.
Please remember: after installing a fixpack the OS2LDR patch needs to be applied again because it will be replaced by a non-patched version from the fixpack. If the fixpack installer asks you if it should replace the patched version of OS2LDR with the one from the fixpack distribution, then reply 'YES'! Failing that may render OS/2 unbootable because OS2LDR and OS2KRNL need to match.
OS/2 TRAPS
TRAP 0000 - DIVIDE ERROR: A program attempted to divide a number by zero. Contact software support.
TRAP 0001 - DEBUG EXCEPTION: Contact software support.
TRAP 0002 - HARDWARE/MEMORY ERROR: Memory or hardware failure in the system. Contact hardware support.
TRAP 0003 - BREAKPOINT: This is a special instruction (INT 3) used in debugging" software, which was left in the code either accidentally or by design. Contact software support.
TRAP 0004 - OVERFLOW: An overflow occurred during an arithmetic operation. Contact software support.
TRAP 0005 - BOUND RANGE EXCEEDED: A Bound instruction exceeded the specified limits. Contact software support.
TRAP 0006 - INVALID OPCODE: The processor tried to execute an unreserved invalid opcode. Contact software support.
TRAP 0007 - COPROCESSOR NOT AVAILABLE: If coprocessor diagnostic tests run error-free, contact software support.
TRAP 0008 - DOUBLE FAULT: The processor detected an exception while processing another exception. It could be caused by either hardware or software. If TRAP 0002 also is being experienced, contact hardware support.
TRAP 0009 - COPROCESSOR OVERRUN: The middle portion of a COPROCESSOR operand is protected or not present. Contact software support.
TRAP 000A - INVALID TASK STATE SEGMENT: A task switch to an invalid task-switch segment was attempted. Contact software support.
TRAP 000B - SEGMENT NOT PRESENT: The referenced segment is not present. Contact software support.
TRAP 000C - STACK FAULT: The referenced page is not present in memory, or the procedure referencing the page does not have enough privilege to access the page. Contact software support.
TRAP 000D - GENERAL PROTECTION EXCEPTION: All protection violations that do not cause another exception cause a TRAP 000D. Contact software support.
TRAP 000E - PAGE FAULT: The referenced page is not present in memory, or the procedure referencing the page does not have enough privilege to access the page. Contact software support.
TRAP 000F - RESERVED BY INTEL.
TRAP 0010 - COPROCESSOR ERROR: The processor detected an error from the coprocessor. This could be caused by hardware or software.
OS2 OPTIMISATION
For those of you new to OS/2. Congratulations you are now about to experience slick, reliable computing, not to be found in most other operating systems
This document is intended for both novice and experienced users. It is hoped that it will lead you to a better understanding of your system, and more enjoyable computing. It is not intended to be comprehensive, but rather as a starting point, and that you will find other information from various sources, some mentioned here.
The best way to optimise your system is by helping OS/2
1. Install as much memory as you can afford, OS/2 will use it if it is there, so you won't be wasting your money. Typically 32 Meg is a good starting point.
2. use only HPFS (High PERFORMANCE File System) partitions
3. Use OS/2 without DOS and Windows sessions (you also block those nasty little things called virus)
4. Don't use voicetype if you don't need it.
5. Use small apps (like Papyrus) and not those Ram-Hogs like Staroffice
6. Use native apps (not Java, Windows, Mirrorports like Word-perfect for OS/2)
7. Delete the OpenDoc environment by using 'selective-uninstall', as OpenDoc is deplorably death.
8. Use as FEW partitions as possible. OS/2 checks all partitions during bootup, so having fewer partitions speeds boot-time.
BTW. when you compare Windows and OS/2 on the same system, remember that Windows can only boot from the first partition, the one which is on most drives also the fastest! Using removable media together with OS/2 and newer Fixpaks slows OS/2 bootup significantly (but the Drivers by Daniela Eggert: DANIS506.ADD and DANIATAPI.FLT boost the speed for EIDE drives). As a trade off (compared to Windows, all versions) you get dynamically assigned drive letters, a feature that saves you from the drive-letter chaos in Windows whenever you change a partition, drive etc.
9. try and avoid program hopping, that is jumping from one application to the next, as this will avoid swapper activity (unless you have lots of RAM)
PARTITION TYPES
The partition type number (hex id) are as follows:
00 Empty 01 FAT12 (supported by OS/2) 02 XENIX_1 root 03 XENIX_2 usr 04 FAT16 <32MB (supported by OS/2) 05 EXTENDED, Supports at most 8 GB disks: with type 05 DOS/Windows will not use the extended BIOS call, even if it is available. See type 0F below. 06 FAT16 >32MB (supported by OS/2) Partitions, or at least the FAT16 filesystems created on them, are at most 2 GB for DOS and Windows 95/98 (at most 65536 clusters, each at most 32 kB). Windows NT can create up to 4 GB FAT16 partitions (using 64 kB clusters), but these cause problems for DOS and Windows 95/98. Note that VFAT is 16-bit FAT with long filenames; FAT32 is a different filesystem. 07 IFS, e.g. HPFS, HPFS386 (supported by OS/2) or NTFS, or Advanced Unix, or QNX2.x pre-1988 IFS = Installable File System. OS/2 will only look at partitions with ID 7 for any installed IFS. That's why the EXT2.IFS packet includes a "Linux partition filter" device driver to fool OS/2 into thinking Linux partitions have ID 07. 08 OS/2 (v1.0-1.3 only), or AIX boot partition, or SplitDrive, or Commodore DOS, or DELL partition spanning multiple drives, or QNX 1.x and 2.x ("qny") 09 AIX data partition, or Coherent filesystem, or QNX 1.x and 2.x ("qnz") 0A BOOTMANAGER (supported by OS/2), or Coherent swap partition, or OPUS (Open Parallel Unisys Server). 0B WIN95 OSR2 32-bit FAT Partitions up to 2047GB. Supported by DANIDASD.DMD 0C WIN95 OSR2 32-bit FAT, LBA-mapped Extended-INT13 equivalent of 0B. Supported by DANIDASD.DMD 0E WIN95: DOS 16-bit FAT, LBA-mapped 0F WIN95: Extended partition, LBA-mapped, also used by PQMAGIC 4.0 Windows 95 uses 0E and 0F as the extended-INT13 equivalents of 06 and 05. This causes problems and possible data loss with LBA and INT13 extensions. (Especially when going back and forth between MSDOS and Windows 95, strange things may happen with a type 0E or 0F partition.) OS/2 and even Windows NT does not recognize the four W95 types 0B, 0C, 0E, 0F, but there is a FAT32.IFS by Henk Kelder. According to the uncountable requests for help in different OS/2 newsgroups the use of 0E and 0F is not recommended at all. Supported by DANIDASD.DMD ATTENTION: using PQMAGIC 4.0 also results in heavily errors. 10 Hidden partition (bits OR'd with partition type) 11 Hidden DOS 12-bit FAT When it boots a DOS partition, OS/2 Boot Manager will hide all primary DOS partitions except the one that is booted, by changing its ID: 01,04,06 becomes 11,14,16. Also 07 becomes 17. 12 COMPAQ config partition To use a COMPAQ PC with OS/2 save the config partition on disks and then delete this partition (best is to delete all and re-partition the harddisk according to your needs). ATTENTION: Seems not to work with all COMPAQ's, my now outdated CONTURA 386/25, and also the AERO 486/33 worked fine. 14 Hidden DOS 16-bit FAT <32M 16 Hidden DOS 16-bit FAT >=32M 17 Hidden IFS (e.g., HPFS) 18 AST Windows swapfile (`Zero Volt Suspend Partition' or `SmartSleep Partition', 2MB+memory size). 1b Hidden WIN95 OSR2 32-bit FAT 1c Hidden WIN95 OSR2 32-bit FAT, LBA-mapped 1e Hidden FAT95 21 Reserved 23 Reserved 24 NEC DOS 3.x 26 Reserved 31 Reserved 33 Reserved 34 Reserved 35 JFS (supported by OS/2 Server for e-business) 36 Reserved 38 THEOS ver 3.2 2gb partition 39 THEOS ver 4 spanned partition 3a THEOS ver 4 4gb partition 3b THEOS ver 4 extended partition 3c PartitionMagic recovery partition 40 VENIX 80286 41 LINUX/MINIX (sharing disk with DRDOS), or Personal RISC Boot, or PPC PReP (Power PC Reference Platform) Boot 42 LINUX swap (sharing disk with DRDOS),or SFS (Secure Filesystem) 43 LINUX native (sharing disk with DRDOS) 4d QNX4.x 4e QNX4.x 2nd part 4f QNX4.x 3rd part, or Oberon partition 50 OnTrack Disk Manager (older versions) RO 51 OnTrack Disk Manager RW (DM6 Aux1), or NOVELL 52 CP/M, or MICROPORT SysV/AT 53 Disk Manager 6.0 Aux3 54 Disk Manager 6.0 Dynamic Drive Overlay 55 EZ-Drive 56 Golden Bow VFeature Partitioned Volume. 5c Priam EDisk 61 SPEEDSTOR 63 UNIX System V (SCO, ISC Unix, UnixWare, ...), Mach, GNU Hurd 64 PC-ARMOUR protected partition, or NOVELL Netware 2.xx 65 NOVELL Netware 3.xx or 4.xx 67 NOVELL 68 NOVELL 69 NOVELL 70 DiskSecure Multi-Boot 71 Reserved 73 Reserved 74 Reserved 75 IBM PC/IX 76 Reserved 80 MINIX until 1.4a 81 LINUX/MINIX since 1.4b, or MITAC disk Manager 82 LINUX SWAP or SOLARIS UFS, or PRIME 83 LINUX or NT Stripe and Mirror Set 84 OS/2 hidden C: drive, OS/2-renumbered type 04 partition. or Hibernation partition 85 LINUX extended partition 86 NTFS volume set 87 NTFS volume set 93 Amoeba 94 Amoeba bad block table 99 DCE376 logical drive A0 IBM Thinkpad hibernation partition, or Phoenix NoteBIOS Power Management "Save-to-Disk" partition A1 Reserved. Also used as "Save-to-Disk" on a NEC 6000H A3 Reserved A4 Reserved A5 BSD/386, 386BSD, NetBSD, FreeBSD A6 OpenBSD A7 NEXTSTEP AA Olivetti Fat 12 1.44Mb Service Partition A9 NetBSD B1 Reserved B3 Reserved B4 Reserved B6 Reserved B7 BSDI filesystem B8 BSDI swap partition C0 CTOS C1 DRDOS/secured (FAT-12) C4 DRDOS/secured (FAT-16, < 32M) C6 DRDOS/secured (FAT-16, >= 32M), or Windows NT corrupted FAT16 volume/stripe set C7 Windows NT corrupted NTFS volume/stripe set, or SYRINX boot D8 CP/M-86 DB Digital Research CP/M, Concurrent CP/M, Concurrent DOS or CTOS (Convergent Technologies OS -Unisys) E1 DOS access or SpeedStor 12-bit FAT extended partition E3 DOS R/O or SpeedStor E4 SpeedStor 16-bit FAT extended partition < 1024 cyl. E5 Reserved E6 Reserved EB BeOS Filesystem F1 SpeedStor F2 DOS 3.3+ secondary partition F3 Reserved F4 SpeedStor large partition F6 Reserved FF BBT, Xenix Bad Block Table FE PS2S PS/2 IML System Partition, or SpeedStor > 1024 cyl., or LANstep
ATTENTION: If you install different OS (e.g. Solaris and Linux, or OS/2 and NT) you can run into serious troubles whenever the id's aren't unique.
Together with a disk-tool like e.g. the FREE DFSEE by Jan van Wijk, the fdisk out of LINUX, or the Norton Diskdoctor for Dos and naturally the Gammatech and the Graham utilies (both for OS/2) there are many useful options for recovering and not so useful for DESTROYING a partition table. So be careful whenever editing a partition table. It is wise to get accommodated with these tools JUST BEFORE an accident happens, cause when something went wrong you're to much excited.
RECOVER
In OS/2 Warp, IBM provides an archive feature which can be activated whenever you need it. It will save ON THE NEXT SYSTEM BOOT, a copy of all the necessary system files to restore to a previous configuration.
To recall a saved configuration, press "ALT-F1" when you see "OS/2" in the very upper left hand corner of your boot-screen screen. On fast computers it is not visible for long, so pay attention.
A blue screen will appear with a list of choices, and instructions, at the bottom of which will be listed the various archives available. Select the appropriate archive, and the system will be restored to this configuration.
For managing your archives there is the FREE tool warco13.zip, developed by Stefan Milcke (Stefan.Milcke@t-online.de)
CREATING A SYSTEM CONFIGURATION ARCHIVE
Click on an empty area of your desktop Click on "Properties" Click on "Archive" Click on "create archive on...." Edit the location if you desire Close the properties window Perform a normal shutdown
During the boot process you should see a small status window confirming the archive is being created.
The system will create an archive on EVERY boot, which will slow the boot process down, and create new archives. I normally only create an archive when I have made changes to my system and after the boot disable archive creation. Also the total number of archives is limited to 5, then OS2 will overwrite the oldest archive.
With this feature activated, you can simply press Alt+F1 at boot and be presented with a menu which will allow you to boot with an alternate (backup) config.sys file. See your user documentation for details.
WarpCenter Backup (from: http://users.pandora.be/luc.vanbogaert/tips/system.html )
You can backup the contents and configuration of the Warp 4 WarpCenter, by keeping a backup of the following files in the :\OS2\DLL directory :
SCENTER.CFG DOCKn.CFG (where n is 0 to 15, for the 16 WarpCenter trays)
An easy way to make sure you always have a recent backup is to use the Warp 4 archive feature. Archive backs up all files that are listed in the :\OS2\ARCHIVES\OS2.KEY file. So, all you have to do is add the above listed WarpCenter configuration files in this file, as :
KEYFILE:OS2.INI KEYFILE:OS2SYS.INI KEYFILE:C:\CONFIG.SYS KEYFILE:C:\STARTUP.CMD KEYFILE:C:\AUTOEXEC.BAT KEYFILE:C:\OS2INIT.CMD KEYFILE:C:\OS2\DLL\SCENTER.CFG KEYFILE:C:\OS2\DLL\DOCK0.CFG KEYFILE:C:\OS2\DLL\DOCK1.CFG KEYFILE:C:\OS2\DLL\DOCK2.CFG ...
Finally, make sure the Archive functionality is enabled (check the Archives tab in the Desktop's Settings notebook).
Archiving your Network (from: http://www.scoug.com/os24u/1999/scoug901.2.archiving.html)
By Rollin White
Most OS/2 users are familiar with OS/2's Desktop Archiving capability. It will backup your desktop and other critical files such as CONFIG.SYS and AUTOEXEC.BAT. But these days, many of us are on a network, and most of us use the Internet. It would be nice if the Archive tool would backup settings related to these functions as well.
Good news! The design of the Desktop Archive feature is flexible enough to backup other files as well. Start by opening the drive object for your OS/2 Drive. Open the OS2 folder. Then open the Archives folder. We will be making changes to the OS2.KEY file which contains a list of files that should be backed up. As a safe-guard, OS/2 marks this file read-only, so first we must make the file writable (so we can save our changes!).
Right click on OS2.KEY and select properties. In the settings notebook, select the File Tab, then click on the plus sign to change to the second page of the File chapter. Then uncheck the Read-only checkbox and close the settings notebook. (Once you are done making changes to this file, you may want to come back and recheck this option.)
Now double click on the OS2.KEY file to open it with the System Editor. Your file will look something like this:
KEYFILE:OS2.INI KEYFILE:OS2SYS.INI KEYFILE:D:\CONFIG.SYS KEYFILE:D:\STARTUP.CMD KEYFILE:D:\AUTOEXEC.BAT KEYFILE:D:\OS2INIT.CMD
The concept should be fairly obvious; the word KEYFILE followed by a colon, followed by the name of the file to archive. So the only piece of information you are missing is which network or Internet files to archive. There is not an end-all list, but this is a good start:
File Name Description C:\IBMCOM\PROTOCOL.INI Network adapter configuration C:\IBMLAN\IBMLAN.INI File and Print Services configuration C:\MPTN\ETC\RESOLV2 or C:\TCPIP\ETC\RESOLV2 TCP/IP DNS configuration C:\TCPIP\BIN\TCPSTART.CMD TCP/IP configuration/startup C:\MPTN\ETC\TCPOS2.INI TCP/IP and Internet dialer configuration C:\MPTN\ETC\HOSTS or C:\TCPIP\ETC\HOSTS TCP/IP Host table C:\NETSCAPE\BOOKMARK.HTM Netscape bookmarks C:\MMOS2\MMPMCD.INI C:\MMOS2\SPI.INI C:\MMOS2\MIDITYPE.INI C:\MMOS2\MMPM2.INI Multimedia INI files
Of course change C: to the appropriate drive letter for your system.
The next time you enable archives, these files will be archived in addition to your desktop. If you don't have it setup already to enable archiving, open the Desktop Properties and select the Archive tab. Then check the box labelled "Create archive at each system startup." Once you've rebooted, remember to go back and turn off archiving.
Notice this concept is not limited to OS/2 related files. You can use it to backup application configuration files too. But don't go crazy, three levels of archive are maintained, and if you are archiving files that are larger than a few kilobytes, that can add up. The result may be that you don't have enough disk space to complete the archive process.
REMOVING AUTOSTARTS
There is a clean way of removing the IBM Registration program from your system (unless you admire dancing elephants).
Open folder "OS/2 SYSTEM" on your desktop Open "DRIVES" Open "Drive C" Open "OS/2" Open "Install" Open "Installed Features" Open "Installed Object - Inventory"
Click the checkbox next to "art" Click on "uninstall" Click "art" in the next box that opens Click on "uninstall"
This will totally uninstall the "art" directory and all components relating to registration. Some applications (like Staroffice, Smartsuite, Amipro) install some 'reminders' or 'speeders' in the autostart-folder remove or delete them, they are normally not needed.
SELECTIVE BOOT
The ALTF1 boot process begins by displaying a selection screen which is constructed from three files to be found in x:\OS2\BOOT
ALTF1TOP.SCR
RECOVERY CHOICES
Select the system configuration file to be used, or enter the option corresponding to the archive desired.
ESC - Continue the boot process using \CONFIG.SYS without changes F2 - Go to command line, (no files replaced, use original CONFIG.SYS) F3 - Reset primary video display to VGA and reboot F4 - Restart the system from the Maintenance Desktop (Selective Install) F5 - Enable full hardware detection F6 - Disable hardware detection
Choosing an archive from the list below replaces your current CONFIG.SYS, Desktop directory, and INI files with older versions. These older versions might be different from your current files. Your current files are saved in \OS2\ARCHIVES\CURRENT.
ALTF1MID.SCR
1) Archive created 5-6-1999 7:09:58AM 0) Original archive from INSTALL created 5-5-1999 8:03:16AM
ALTF1BOT.SCR
<<=NOTE=>> ALTF1BOT.SCR contains a blank line to overwrite any screen image occupying the last line of the screen
These files are text files, you can edit them, but remember that the text must fit within the origional number of lines. Otherwise the image will be more than the 25 line screen size and cause scrolling
STEP 1
MAKE BACKUPS OF ALL FILES TO BE MODIFIED
According to IBM the following characters are reserved and cannot be used as selections in your menu:
Warp3 C M V X 1 2 3 Warp4 C M V X 1 2 3 4 5
Decide what you need and modify ALTF1TOP.SCR (18 Lines, including 1 empty line at top) to suite your needs, as an example
next line is line 1 -------vvvvvvvv-------
ACME CORP SYSTEM RECOVERY CHOICES
Select one of the following
ESC - Continue the boot process using \CONFIG.SYS without changes F3 - Reset primary video display to VGA and reboot F5 - Enable full hardware detection F6 - Disable hardware detection D - Enable DOS/Windoze P - Pure OS/2 (no DOS/Windoze support) N - DISABLE Network
CAUTION choosing an archive from the list below reconfigures your entire system, think before you act.... or press ESC
Your current files are saved in \OS2\ARCHIVES\CURRENT.
line above is line 18 -----^^^^^^^^----------
STEP 2
When a selection is made ALTF1.CMD is called with the keystroke passed as a parameter. Edit this file to reflect your selection screen. Note x: refers to the boot drive
ALTF1.CMD
@ECHO OFF REM REM Make sure at least one parameter was passed REM IF @%1==@ goto end REM rem F3 passed a "V" REM If a V or v is passed, call SETVGA REM IF V==%1 GOTO setvga IF v==%1 GOTO setvga REM rem F4 passed an "M" REM If an M or m is passed, call SETVGA REM IF M==%1 GOTO setvga IF m==%1 GOTO setvg a REM REM Check our modified selections REM
rem new lines added here vvvvvv
IF D==%1 GOTO setd IF d==%1 GOTO setd IF P==%1 GOTO setp IF p==%1 GOTO setp IF N==%1 GOTO setn IF n==%1 GOTO setn GOTO skip
- setd
REM REM Set up DOS/WINDOZE REM copy x:\os2\boot\config.d x:\config.sys
GOTO end
- setp
REM REM Set up pure OS/2 REM copy x:\os2\boot\config.p x:\config.sys
GOTO end
- setn
REM REM Disable Network REM copy x:\os2\boot\config.n x:\config.sys
GOTO end
- skip
rem original lines begin here vvvvvvvv
arcrecov %1
GOTO end
- setvga
setvga
- end
STEP 3
Create corresponding config(x).sys files in the x:\OS2\BOOT directory for the command file to be able to copy
STAROFFICE HTML ASSOCIATION
Delete the StarWriterHtmlFile Class.
You can do this either by using the FREE VClassed by Dabiele Vistalli (dvistalli@tin.it), or by using this REXX-Script by Winifried Tilanus.
/* DELCLASS.CMD This REXXprogram destroys classes */ Call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs' Call SysLoadFuncs class = "StarWriterHtmlFile"
rc = SysDeregisterObjectClass (class) if rc = 1 then do say "Class "class" destroyed OK" end else do say "Class "class" destroy failed" end
SWAPPER.DAT
by Britton Turnbull
OS/2 is a mature environment that has improved over time. It has now reached a stage where internally the system will dynamically optimise itself.
OS/2 uses a disk file named SWAPPER.DAT to store software when the real RAM is insufficient. This is called VIRTUAL memory, as the swapper.dat file looks like ram, but is not.
So when you load an application and you have insufficient memory, OS/2 will copy memory contents to the swapper file, and then use the real ram for the new program to operate in.
You would expect OS/2 to then copy the old memory contents back into memory when you close the application, but OS/2 is intelligent enough to realise that this may not be necessary. It will load data from the swapper file, when YOU the user select an application that resides in the swapper file.
Typically software modules that are dormant are moved to the swapper file, and active modules are retained in real RAM.
This means that if you start your working day in a word process and spreadsheet environment, with little contact to the ouside world, OS/2 will adjust to this environment. Then if you start to access a Network or the Internet, OS/2 will bring necessary modules into real RAM, and religate dormant software to the swapper file.
You will always have a responsive system with few pauses as in other environments. The only noticable activity is when you activate a dormant application, then the disk will be active for a few seconds.
If you find that the way you are using your computer triggers a large amount of drive activity, consider adding more RAM, or change your ways.
SWAPPER OPTIMISATION
1) swapper size
On system boot the swapper.dat file is initialised, so a contiguous block of hard drive space will be created, but only as large as you have specified. So if your size is small you will experience swapper fragmentation as it is used
Your swap file will grow (in 1MB increments), but it also shrinks when one of two conditions are met.
a) when the amount of free space in the swap file is greater than 1.5MB, the swap file will be compressed during system idle time. (It will not shrink if there is a constant "hit" on the drive by a program such as a swap file monitor.)
b) during the compression of new entries, free space is moved to the end of the swap file. When this free space at the end of the swap file exceeds 1MB, the swap file will be shrunk.
OS/2 tries to maintain the file size the same as specified in config.sys by moving free space to the end of file, and then re-sizing. So if you specify a small file size, this mechanism will consume valuble CPU time. The usual way to determine YOUR swapper size is to simply use your computer as normal and occasionally check the size of swapper.dat. Then set this value (plus a couple of meg) as your start-up size.
2) swapper location
a) Consider dedicating a separate partition for the swap file. This helps avoid fragmentation of the swap file, because other files will not be added or deleted from the dedicated partition.
b) If you have both FAT and HPFS partitions, put the swap file on the HPFS partition to take advantage of the better performance of HPFS, and less fragmentation
c) If you have a system with two hard disk controllers, put the swap file on a disk managed by the LEAST used controller.
d) Keep your swap file on the MOST used partition of the LEAST used hard drive.
<<=Warning=>> NEVER put your swap file on a networked drive.
SYNATTACK
Here is a tip from IBM's TCP/IP document site
For TCP/IP 4.0 - apply the latest MPTS/TCP/IP update. This will give you a new program -SYNDEF.EXE.
This works as follows: SYNDEF.EXE ON (enables SYN defenses) SYNDEF.EXE OFF (disables SYN defenses) SYNDEF.EXE -? (displays SYNDEF syntax)
For TCP/IP 4.x - The ability to protect against this type of attack is built in to TCP/IP 4.x. To enable this protection:
1. To GET the current status of the SYNATTACK parameter in the INETCFG.INI file, go to an OS/2 command line and type:
INETCFG -G SYNATTACK, then press Enter.
2. By default, SYNATTACK is set to 0, which means OFF.
3. To SET the SYNATTACK parameter in the INETCFG.INI file to an ON state, (1), type the following at an OS/2 command line:
INETCFG -S SYNATTACK 1
4. This new setting in TCP/IP 4.x will now prevent the SYNATTACK from occurring.
THE DB2 FAQ
Archive-name: comp.databases.db/db2-faq Posting-Frequency: if changed Last-modified: 2002-01-30 Version: 0.11 URL: http://www.harddiskcafe.de/db2faq/index.html
xp: comp.databases.db2,news.answers,comp.answers
+--------------------------------------------------------------+ | Mostly Harmless - The Hitchikers Guide for the IBM DB2 UDB | +--------------------------------------------------------------+
The simple DB2 FAQ v0.11 30.01.02 hohmann@harddiskcafe.de
I can give only the warranty, that this document is full of spelling bugs and wastes space on your various media.
Contributions, errata, additions, bug & spelling-fixes, reports of broken links are welcome. If your contribution is not listed in the next issue w/o notice, please resend your suggestion to me.
The current and previous versions of this FAQ can be found here: http://www.harddiskcafe.de/db2faq/index.html
====================================================
Changes (+ new - removed * changed): to do -> + typical memory consumptions DB2JD, TCP/IP close connection...
- Minor errors in the description of the ResultSet fixed
- Granting execute privilege for procedures
====================================================
Chapters: 1. Preface 2. Related Links 3. Installation, starting and stopping DB2, using the tools 4. Common Problems & Questions (nearly unsorted) 5. Backup & Restore 6. Troubles with Java 7. Fixpacks 8. To Do
Appendix A. Some remarkable Numbers X. Contributions
====================================================
Chapter 1. PREFACE
Common prerequisites, settings & sites to make the life easier: I. OS/2 1) a good source for files. Try hobbes.nmsu.edu or ftp.leo.org 2) a port scanner. A good one is available from Ralf Christen at http://www.horgen.net/rem/software/ 3) Theseus 3 (a Memory Analysis Program) available at ftp.software.ibm.com/ps/products/os2/fixes/v4warp/theseus3 4) "set sckillfeatureenabled=1" in your config.sys so you can watch & kill most Processes with ctrl + left Mouse Button on the Windowlist of the Warpcenter (the 2nd Icon from the Left) II. Windows III. Linux There is a "DB2 V7.1 for Linux Installation HOWTO" at http://www.linuxdoc.org/HOWTO/DB2-HOWTO/index.html, which describes how to install DB2 on the most common distributions and tells you how to get the Control Center running. IV. OS/390
Homepage of DB2 http://www-4.ibm.com/software/data/db2/
Support On the web The DB2 Technical Library (Manuals etc...) is here: http://www-4.ibm.com/software/data/db2/library/
Other searchable help is here: http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/index.d2w/report
Fixpacks The DB2 fixpacks are here: ftp://ftp.software.ibm.com/ps/products/db2/fixes (there are also so called 'interim fixpacks' which fixes some errors in advance to the next 'big' fixpack. See 'can i mix different language versions ?')
Development The DB2 Application Development website can be found here: http://www.ibm.com/software/data/db2/udb/ad It contains updated information on appliation development issues (for example, documented the compiler settings for all supported platforms, document the JDBC methods and features that are not supported by the DB2 JDBC drivers, etc.)
Newsgroups news://comp.databases.ibm-db2 Some of the developers and supporters from IBM around the world are here.
Per voice Ask your local sales representative (never try 'hello ibm' or other efforts of IBM to centralise incoming calls).
HINT: IBM is a very, very large and very decentralised company. So it's difficult to get somebody on the phone who can really help. On the other side: DB2 is expensive so IBM is interested to sell. If you're asking very (I mean VERY) polite you'll get masses of phone numbers and email addresses in and around the IBM world. Do not misuse but cultivate your connections - so you can get a lot of help even in the pre-sales phase.
Obtaining a legal copy of DB2 Direct download of the Developer Editions http://www-4.ibm.com/software/data/db2/udb/downloads.html#download It contains a single-user, full-function UDB licensed for evaluation, demonstrating and development of application programs (but NOT for a production environment).
Ordering an evaluation copy on CD http://www-4.ibm.com/software/data/db2/udb/downloads.html#cd Order a 90 day evaluation copy of the Enterprise Edition. Hint: if you installed this evaluation copy, went to holidays, broke your legs and are now returning to your workstation again after 90 days, try to delete DB2SYSLT in \SQLLIB.
Ordering with massive developer rebates: Try to obtain a commercial membership in the developer program of IBM. Its located at http://www.developer.ibm.com You should have a good reason (e.g. a software under development which uses some of the bigger tools of IBM) before knocking on the registration door. Hint: Although not clearly pointed out on the website you can also mention planned software or future projects of your company (if you are a standalone developer, you're company and member in one person). If your request for commercial membership is denied, try again with larger projects of your company. Microsoft can produce vapourware, why not you? When you got your ID and password,try http://www.developer.ibm.com/welcome/softmall.html and be surprised. Due to the fact, that you're reading this FAQ you're fully qualified to be a developer and using the Developer Editions. Make a deal with your local sales representative Torture your IBM Sales Office. Novell & Oracle are selling a Netware 5.1 + Oracle 8i Bundle with 5 Users for about 2.500 EURO. IBM supports startup companies, ask for a very good price. Rent a bazaar proven trader If you cannot haggle, look for somebody who can :-)
Which flavour of DB2 do I need for my Business? There are basically 4 Versions of DB2 (as far as I understand): 1) Personal Edition - good for notebooks. one user, very small 2) Workgroup Edition - You pay per processor and per user. 3) Enterprise Edition - You pay per processor, can connect to mainframes, no user limitations. 4) Enterprise Extended Edition (EEE) - (Don't know what the licensing is like) The other versions are only different in licensing. For example, there is a special "Internet Edition" of the Workgroup Edition with one user but unlimited connections. Ask your local IBM sales office.
====================================================
Chapter 2. RELATED LINKS IBM Download Page (Visual Age for Java, WebSphere, Drivers...) http://www3.software.ibm.com/download/
The DB2 Magazine http://www.db2mag.com/
Latest News from the Personal Systems http://ps.software.ibm.com/pbin-usa-ps/getobj.pl?/pdocs-usa/fixnews.html
Product suggestion OS/2: http://www2.software.ibm.com/os/warp/webreqs.nsf/page1?OpenForm
DB2 UDB Cookbooks by Graeme Birchall PDF-Files with over 550 sample SQL statements, hints & tricks. http://ourworld.compuserve.com/homepages/Graeme_Birchall/HTM_COOK.HTM
====================================================
Chapter 3. INSTALLATION, STARTING AND STOPPING DB2, USING THE TOOLS
When starting the Command Centre (DB2CC) or playing around with Java I get the Error "CLI0616E Error opening socket. SQLSTATE 08S01"
1) The DB2 java demon process is not running on the server or it is running on an unexpected port. Normally DB2JD is running on port 6790 but sometimes it starts on port 6789 or somewhere.
a) make sure that DB2JD is running (if not, try DB2JSTRT in \SQLLIB\BIN b) start a port scanner and scan your server from port 6700 to 6800. c) You can either give a port number on the command line (DB2JSTRT 1234) or set an environment variable "DB2JD_PORT_NUMBER=1234" to use another port.
If your demon is not listening on port 6790 you must either kill & restart it on the right port or change the startup scripts DB2CC[.bat/.cmd] and DB2IC[.bat/.cmd] to reflect the current port.
2) Your local TCP/IP configuration is not 100% perfect. YES, you can use the WWW, news and E-Mail with a not-so-perfect TCP/IP installation but fail with DB2 because the whole communication relies on some prerequisites in your intranet (and your Workstation is an intranet). You've some virtual devices on your computer. LAN0 for example is your network card, SLIP/PPP are devices to send TCP/IP data over a modem or ISDN and LO is your local interface which is normally assigned to the IP 127.0.0.1. It's NOT enough that you can 'ping' 127.0.0.1, your LO device must be UP. You can check this with 'ifconfig lo' (at least under OS/2 and most *NIX boxes) if its up. It should be flagged "UP, LOOPBACK, MULTICAST" on address 127.0.0.1. If not, try 'ifconfig lo 127.0.0.1 up' and check, if something like this is in your \mptn\bin\startup.cmd (at least under OS/2). Your HOSTS file in %ETC% (OS/2: \MPTN\ETC) should contain a line like "127.0.0.1 localhost" (without the quotes). After this operation you should connect to your local copy of DB2 via TCP/IP.
3) Your external TCP/IP configuration is not 100% perfect. Same as above. If you have no need to give your workstation a unique name, you should set your hostname to "127.0.0.1". If you have several workstations in your network, you should setup an intranet. There are some reserved holes in the IP address space for private use. You can use 192.168.1.0 to 192.168.255.255 or 10.0.0.1 to 10.0.255.255 for your private network. It's a good idea to install a DNS in your network, but planning and installing your intranet is beyond the scope of this document.
4) Use SNIFFLE /P (/P in Uppercase) to determine problems
5) If the advanced client tools are installed, you should take a look on PCTI.EXE, PCTN.EXE & PCTT.EXE in \SQLLIB\BIN (try /? as Parameter). These tools can act as a client/server tandem to check the communication.
I'd tried all above, my Java GUI is still not running :-( Sounds like you might have a JDK/JRE above 1.1.8, which is incompatible with DB2 UDB V6.1's Java GUI tools. Your choices are to download and install at least V6.1 fixpack 4 (APAR JR144790) or to remove your JDK/JRE and reinstall UDB (which will install the java 1.1.8 level).
When DB2 starts sometimes you will receive a message that "SQL5043N one of the communications protocols failed to start but base functionality is still available". This message can be caused by the settings for the NETBIOS NCBs, SESSIONS and NETBIOS names available for DB2 to access. You can either increase the values for these resources for an adapter in MPTS or you can decrease the number of these resources used by the local LAN Requester by modifying the "NET" line in the IBMLAN.INI file.
This only applies if you have chosen NETBIOS as one of the communications protocols for DB2 to use.
After DB2 has started i find an entry like "SPM0438 DB2 Syncpoint Manager recovery log is bad" in my DB2DIAG.LOG The DB2 Syncpoint Manager recovry log is inconsistent due to indoubt transactions. To get rid of this message, find all SPM*.LOG files and remove them (AIX has a directory named 'SPMLOG' under \SQLLIB). If you do not need the Syncpoint Manager you can stop him by "DB UPDATE DBM CFG USING SPM_NAME NULL". For details search for SPM0438 in the techlib.
DB2STOP fails In most cases there are still users connected or applications running. You can verify this by "DB2 LIST APPLICATIONS". If you're sure that all remaining applications are dead or unused (very common during development) you can perform a "DB2 FORCE APPLICATIONS ALL" and then "DB2STOP" or simply "DB2STOP FORCE" which does the same thing.
But take care: DB2 FORCE APPLICATIONS ALL and DB2STOP FORCE does not free all allocated ressources in DB2JD and DB2SYSC !
I have trouble installing DB2 for NT, creating an instance, and or logging on.
DB2 Version 5 and 6 installation requires userID's of 8 characters or less with Administrator authority. The default NT userID (Administrator) has too many characters. Create an userID with administrator authority that has 8 or less characters.
How to stop DB2 when re-installing on NT ?
When running SETUP, I get a "DB2 is currently running and therefore can not be updated. Please stop all DB2 processes and/or services and try again." but I've done all of this. I've changed my system so that no DB2 services start and there are no DB2 related processes running on my system.
Remember to do a db2admin stop. If you still have this problem, the usual culprit is Tivoli (TME), or other Systemview-related products.
Look through the list of running services from the Control Panel and stop anything called TME, Tivoli, Systemview, or NetFinity.
Other potential executables that you may want to stop from the task manager:
- HTTPDL.exe (the mini-webserver for the HTML versions of the DB2 Doc's) - ntvdm.exe (NetView) - anything to do with Net.Question
I cannot enter SQL and DB2 commands from a system command prompt on NT or Windows. I get an error saying that the Command line environment is not initialised.
You must issue DB2 commands and SQL from a DB2 Command window or DB2 Command Line Processor (try entering DB2CMD from the command prompt).
Some information about this: The DB2 command line processor has a front-end process and a back-end process. On other operating systems (OS/2, Unix) matching these two processes is easy: if the parent process is killed, the child process gets terminated too. On NT, the operating system does not do this for us, so we cannot provide DB2 Command Line Processor support in an ordinary operating system command prompt.
I have installed the DB2 UDB client with tools to control remote databases, e.g, Control Center. I can connect to my a DB2 UDB server database. However, my authority to see things is curtailed. When clicking on the database name, only three items are listed: "Tables / Replication Sources / Replication Subscriptions"
When you are performing remote administration, running the Control Center on a client against a DB2 server, and both client and server are DB2 Universal Database Version, manually cataloging the database node will not allow the remote Control Center to fully manage the server: for example, you could not issue remote backup against the server, and database server objects viewed from the Control Center would be limited to Tables and Replication.
Manually cataloging the database node includes cataloging from the Command Center, the Command Line Processor, and manual configuration from the Client Configuration Assistant.
To avoid this problem, you can configure the server from the Client Configuration Assistant by searching the network, or using a directed discover (where you supply the TCP/IP host name of the server, or the NetBIOS NNAME of the Administration Server at the database server).
To get the NetBIOS NNAME of the Administration Server, issue: DB2 GET ADMIN CONFIGURATION
To find the hostname, type hostname at an operating system prompt.
If you have already cataloged the database and node manually, and your Control Center view of the database is restricted to Tables and Replication, you can catalog the Database Administration Server instance from the Control Center on the client by:
a. Right-clicking on the workstation object (one level under Systems: it might be the NNAME of the database server or the hostname if TCP/IP is used)
b. Select 'Change'. Under Protocol Parameters, enter the required connectivity information for the "DB2 Administration Server" (DAS) and click on "Retrieve". If you are using TCP/IP, the same host name used for the database server is used for the DAS at that workstation.
If you are using NetBIOS, the DAS will have its own NNAME (which you can see by issuing "DB2 GET ADMIN CONFIGURATION" at the server)
Make sure the operating system type is correct. Note, by default if the operating system type is "unknown", it will choose "Windows NT".
Click on "OK" when finished.
====================================================
Chapter 4. COMMON PROBLEMS & QUESTIONS
Create an unique Row ID (autoincrement, identity ...)
In DB2 < V7: 1) Use "GENERATE_UNIQUE()":
ResultSet res = stmt.executeQuery("VALUES(GENERATE_UNIQUE())"); res.next(); String strUID = res.getString(1);
GENERATE_UNIQUE() creates a 26char wide key, which is unique through your whole cluster and excellent to use it for an object identifier.
2) Use a Trigger (if your counter-column is your primary key it is a good idea to define it ass NOT NULL WITH DEFAULT. The trigger will always overwrite the default value, but this will allow rows to be inserted without a dummy value for the column).
3) For a trigger that handle multi-row inserts: Look in the samples section for the sample function called "db2Udf". In it you will find a method call ctr.
Load the function as follows:
CREATE FUNCTION NULLID.COUNTER() RETURNS INT EXTERNAL NAME 'DB2Udf!ctr' LANGUAGE JAVA PARAMETER STYLE DB2GENERAL NO SQL NOT DETERMINISTIC NOT FENCED SCRATCHPAD NO EXTERNAL ACTION;
Then do your insert with a trigger of (this is one for a ADDRESSES Table (adjust to fit)):
CREATE TRIGGER NULLID.ADDRESSAUTOINC NO CASCADE BEFORE INSERT ON NULLID.ADDRESSES REFERENCING NEW AS n FOR EACH ROW MODE DB2SQL BEGIN ATOMIC SET (n.ADDR_UID ) = (SELECT value(MAX(ADDR_UID),0) +NULLID.COUNTER() FROM NULLID.ADDRESSES); END
4) By using a scalar subquery expression which refers to the highest given number in the table:
INSERT INTO Foobar (key_col, ...) VALUES (COALESCE((SELECT MAX(key_col) FROM Foobar) +1, 0) ...);
In DB2 V7.1:
1) Create your table with (or change it into):
CREATE TABLE MYTABLE( MY_ID INT GENERATED ALWAYS AS IDENTITY START WITH 1 INCREMENT BY 1, ... MY_DATA VARCHAR(10), ....)
2) Insert your data as usual.
3) Grab the last created value with "VALUES(IDENTITY_VAL_LOCAL())" which should be "1" after the first insert in our example.
NOTE: If IDENTITY_VAL_LOCAL() returns NULL (-), you probably have auto commit turned on. Use the command centre options to turn it off or try the +c option in CLP. You can also create before insert for each row triggers to generate a new key in pre V7.1 versions. Use the scratchpad counter UDF in sqllib\samples for multi row inserts. You can only have ONE identity column per table.
In DB2 V7.2:
Unlike identity, which is attached to a particular table, a sequence is global throughout the database, and is created on its own:
CREATE SEQUENCE order_seq START WITH 1 INCREMENT BY 1 NOMAXVALUE NOCYCLE CACHE 24
You can then reference the sequence when changing tables, and call the same sequence multiple times:
INSERT INTO order (orderno, custno) VALUES (NEXTVAL FOR order_seq, 123456); INSERT INTO line_item (orderno, partno, quantity) VALUES (PREVVAL FOR order_seq, 987654, 1)
Retrieving only the first n-rows / Limit return from query:
SELECT ... FETCH FIRST n ROWS ONLY OPTIMIZE FOR n ROWS
-- OR --
FETCH FIRST ROWS can be also expressed like this: "SELECT FROM (SELECT , ROWNUMBER() OVER(ORDER BY ) as rn) AS ot WHERE rn <= "
-- OR --
SELECT col1, col2, col3 FROM TABLE_1 t1 WHERE 10 > (SELECT COUNT(*) from TABLE_1 t2 WHERE t1.col1 < t2.col1)
Retrieving chunks or range of rows/data: If you haven't a special counter-row to retrieve the results in blocks (eg. for displaying the results on a website) you can help yourself by fetching a block with the FETCH FIRST clause and take the result as input to your next query. This only works, when your 'key' contains no duplicates.
1) "SELECT MYNAME FROM ADDRESS WHERE MYNAME > ORDER BY MYNAME FETCH FIRST 5 ROWS ONLY OPTIMIZE FOR 5 ROWS" Result: 'aaaaaaaa' 2) "SELECT MYNAME FROM ADDRESS WHERE MYNAME > 'aaaaaaaa' ORDER BY MYNAME FETCH FIRST 5 ROWS ONLY OPTIMIZE FOR 5 ROWS" Result: 'ffffffff'
3) Go on until no more rows can be fetched
-- OR -- (DB2 v6 or later)
SELECT * FROM (SELECT name, rownumber() over (order by name) AS rn FROM address) AS tr WHERE rn between 10 and 20
(The rownumber() function is documented in OLAP functions [in the v7 SQL Reference] or in the release-notes for v6)
Eliminating duplicates from a table Imagine a table like this (some sort of article-history):
NUMBER NAME AMOUNT DATE
------------ ------ ----------
1 DB2 5 1999-06-02 2 Via Voice 10 1999-07-11 1 DB2 8 2000-04-21 3 Lotus Notes 8 2000-03-03
Lets delete duplicate article-numbers while keeping the newest entry now:
1) Create a view over the table (this is needed because DELETE cannot range over a query):
CREATE VIEW tmp(rn) AS SELECT rownumber() OVER (PARTITION BY product_number ORDER BY date DESC) FROM inventory
2) Now delete the duplicates:
DELETE FROM tmp WHERE rn > 1;
3) Check the result:
SELECT * FROM inventory ORDER BY 1
NUMBER NAME AMOUNT DATE
------------ ------ ----------
1 DB2 8 04/21/2000 2 Via Voice 10 07/11/1999 3 Lotus Notes 8 03/03/2000
3 record(s) selected.
"Order by" in subqueries: The standard does not support ORDER BY in subquery. However SQL99 supports OLAP functions. In DB2 V6 and higher: INSERT INTO T1 (SELECT c1 FROM (SELECT c1, rownumber() over (order by c2) as rn FROM T2) AS T2 WHERE rn <= 20);
Migrating from Oracle: NLV <=> COALESCE DECODE <=> simple CASE expression V7.1 supports simple SQL functions which can be used to map functions and simplify migration. CONNECT BY <=> recursive common table expression (WITH rec() AS SELECT ... FROM root UNION ALL SELECT .. FROM rec, child WHERE rec.child = child.key SELECT * FROM rec;)
Sequences can often be simulated with dedicated tables containing identity columns. Use stored procedures which insert a row and retrieve the identity for nextval. Caveat: Avoid updates and any indexes on the "sequence" tables to avoid concurrency problems.
Duplicating a Table You can use an export/import combination with ixf file format, or simply do
CREATE TABLE newTable LIKE oldTable INSERT INTO newtable SELECT FROM oldTable
Is there a replacement for Oracle's "TRUNCATE TABLE" ? How can i delete the content of a Table fast ? 1) Create an empty file and run import in replace mode on the table with it: IMPORT FROM empty.del OF DEL REPLACE INTO YourTable 2) Do a LOAD REPLACE with an empty file 3) If you had created the table with the "NOT LOGGED INITIALLY" option you can use it to 'truncate' your table as follows: ALTER TABLE mytable ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE (Please read up on the limitations for the NLI clause).
How can i change the name / type of an existing column ? If the table exists you can only add columns, change the description of a column or change the length of a varchar-field. There is now way to change the name or type of an existing column. You can't even drop columns. The only way is export the definitions of the table, rename the table, change the definition and recreate the table again.
1) db2look -d MYDATABASE -t MYTABLE -a -e -l -x -o MYTABLE.SQL
2) Now edit MYTABLE.SQL to your needs
3) Rename the table (or drop it if there wasn't any useful data in there)
4) Recreate the table with "DB2 -t -l MYTABLE.SQL"
5) INSERT into the new table by SELECTing from the old table.
Getting the output of a select without headings:
1) Use the -x flag for db2 command line processor. This is available in db2 v7.1 and greater
2) Use DB2BATCH to do similar stuff. "db2batch -q on -s off -d -f "
How can I grant execute privilege for procedures in DB2 UDB 7.2?
You grant execute on the package created for the procedure.
GRANT EXECUTE ON PACKAGE TO ;
This means that you need to know the package name created for the stored procedure. You can find this package name by executing the following query:
SELECT dep.bname as pkgname, dep.bschema as pkgschema FROM sysibm.sysdependencies dep, syscat.procedures proc WHERE proc.procname = AND proc.procschema = AND dep.dtype = 'L' AND dep.dname = proc.specificname AND dep.dschema = ucase(); (÷Serge Reliau )
====================================================
Chapter 5. BACKUP & RESTORE
Can I back up a DB2 database on one operating system, like OS/2, and restore this to DB2 on another operating system, like NT?
No. If you want to move a database from another operating system to another, you must export each table from the source database, and then import or LOAD each table into DB2 on the new location. You can capture the DDL (CREATE and ALTER statements) for the source database using the DB2LOOK tool with the -e option.
You can automate the movement of data using the DB2MOVE tool, which is shipped with UDB or can be found on: ftp://ftp.software.ibm.com/ps/products/db2/tools/
(-> see "How can i change the name / type of an existing column" for an example of DB2LOOK)
What was it with "online backup, offline backup and the logfiles" ?
Offlinebackups do not require the log files to restore the database. Online backups require that you have the log files available to restore the database and has a longer amount of recovery time..
I ran into error SQL200C "There is not enough available memory available to run this utility when trying to restore from a backup imaga
Try to increase DBHEAP size and UTIL_HEAP_SZ
Using Microsoft NT I am not able to backup to a network drive, or got an error message like "SYSTEM Does not have the authority to perform this command"
Check the DB2 services under Services in Control Panel. Create an NT account with the proper authority, you can usually use whatever the server logs on with. Change the Startup values from Log on as System account to This account and use the account name you created. Change these on all services associated with DB2. As far as we know no one has been able to modify the rights for the SYSTEM account.
====================================================
Chapter 6. TROUBLES WITH JAVA
Where can i find the drivers ? Any hints and warnings ? The java-drivers are in \SQLLIB\JAVA\DB2JAVA.ZIP. Don't extract this file, just add it into your classpath or link it with the -cp command of JRE (jre -cp \sqllib\java\db2java.zip ...) on runtime.
BIG WARNING: the fixpacklevel of DB2JAVA.ZIP used on the client and DB2JD.EXE (the java-daemon on the server) MUST match or you'll get everything from strange behaviour to broken data. So you cannot even use the control center from v6, fixpack #3 to control a database v6 with fixpack #4. When a Server or Workstation gets a fixpack, so all others should updated too to avoid trouble.
Unfortunately (in very rare situations) some files are NOT updated when applying a fixpack. If your applications shows more errors as before or you find unnormal entries in JDBCERR.LOG you should check at least that DB2JD.EXE has the same date/time as DB2JAVA.ZIP and both have the date/time of the fixpack. If not, you have to extract them by hand from the fixpack-distribution.
How to use the driver ? Some words to the technique used by java.sql.*... The classes in java.sql.* are mainly stubs and interfaces, it is the work of the driver to fill them with life. A driver can be registered to the java-drivermanager with the procedure described in the documentation to java.sql.DriverManager or by hand in the code:
try { Class.forName("COM.ibm.db2.jdbc.net.DB2Driver").newInstance(); } catch (IllegalAccessException e) { } catch (InstantiationException e) { } catch (ClassNotFoundException e) { }
With this command the driver registers itself to the DriverManager (you can register additional drivers for other databases too). How does the DriverManager know, which driver is good for which database ? The information is 'decoded' into the URL and the manager simply sends the URL to all registered drivers. If nobody feels responsible in charge of the URL, the answer will be the famous "No suitable driver" response. So if you get this, you should better look into the URL.
How to connect to DB2 from Java ? The magic URL is "jdbc:db2://hostname:port/database" // simple connector. needs try/catchblock String strHost = "192.168.2.32"; String strPort = "6790"; String strDatabase = "testdata"; String strUser = "someuser"; String strPwd = "somepassword"; String url = "jdbc:db2://" + strHost + ":" + strPort + "/" + strDatabase; con = DriverManager.getConnection(url, strUser, strPwd); // useful statements to do next Statement stmt = con.createStatement(); con.setAutoCommit(false);
WINDOWS 2000
Since Release Candidate 3 Windows 2000 destroys the OS/2 Bootmanager everytime it is booted.
One solution could be to toggle with an diskeditor (e.g. from the Gammatech Utilities) a byte in the first sector of the Bootmanager Partition OFFSET 0Eh (decimal 14), from 0x01 to 0x2d. This reserves an greater amount of reserved Sectors, so Windows 2000 changes only unassigned Sectors not needed by the Bootmanager. DFSee 3.32 available at http://www.fsys.demon.nl can do this for your without the need to poke around with an diskeditor.
Or call the Microsoft Support and ask for the Hotfix Q265003, it will be included in Servicepak 2 for Windows 2000.
Or use this tip from - Daniela Engert from VOICE 8/2000
"Maybe you are interested in patching FP13 FDISK so that it writes out a modified BootManager which will not be affected by Win2K":
For FP13 FDISK use this script file (the Bootmanager sector image is at file offset 13404h)
--- FDISK.PAT ------ FILE FDISK.COM VER 13411 04 CHA 13411 00 VER 13412 01 CHA 13412 20 VER 13414 02 CHA 13414 00 VER 13416 02 CHA 13416 00 VER 1341A 0C CHA 1341A 00 VER 1343A 46415420202020 CHA 1343A 424F4F544D4752
--- FDISK.PAT ------
and run "PATCH FDISK.PAT /A" from the x:\OS2 directory. Then run FDISK and recreate the Bootmanager. Other FDISK versions may have the sector image at another offset.
ServicePak 4 adds those fixes:
- 309344 File Appears to Be Deleted Although You Do Not Have Permissions on the OS/2 Warp4-Based Server
- 323582 Net3101 Error on OS/2 Server Because of SessionSetup SMB
WINDOWS NT4.0
<<=NOTE=>> OS/2 recognizes NTFS formatted drives falsly as HPFS, as NT recognizes EXT2FS falsly when the fault-tolerance options are used, as Linux recognizes the Solaris UFS falsly as swap partition ...
Using the FREE EXT2FS necassary for Linux the NTFS partition can be hidden by inserting BASEDEV=EXT2FLT.FLT
E.g. if you have one disk, the OS/2 Bootmanager installed and NT is on the first partition the correct options are BASEDEV=EXT2FLT.FLT /A /W /M 1
<<=TIP=>> Windows NT 4.0 can use HPFS-Partitions if you have the pinball.sys out of NT 3.51 and the utility hpfs_nt4.zip by Chris Behnken, available at http://www.htc.net/~nbehnken. ATTENTION pinball.sys can only operate with disks or partitions up to 4GByte.
<<=TIP=>> There is also an ALPHA NTFS.IFS by Daniel Steiner, available at http://npw.cgnet.de/dsteiner and a newer vfat.ifs with NTFS read-support. But as some users reported problems be very careful when using it. The best would be to make a complete backup of your installation.
WINDOWS XP
A workaround for XP clients suddenly being unable to delete files on OS/2 server shares after installing SP1.
Replace mrxsmb.sys in %systemroot%\system32\drivers with the one from the initial release. You will have to place it in %systemroot%\system32\dllcache as well to keep it from being overwritten by system restore. Roaming profiles still do not work.
On workstations with Microsoft Windows XP Service Pack 1 the following problems (see below) can occur in conjunction with file resources on OS/2 servers.
These problems are known to Microsoft and will be fixed with Windows XP Service Pack 2. In the meantime the necessary patches can be requested from Microsoft directly.
Problem:
Files created on OS/2 servers cannot be deleted.
Solution: 1. Install patch (MS Hotfix) Q325929
2. This registry parameter needs to be set: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters\ "EnableDownLevelLogOff"=dword:00000001
3. Install patch (MS Hotfix) Q813586
Problem: Roaming Profiles stored on OS/2 servers can no longer be loaded successfully.
Solution: 1. 1. Activate this Group Policy: Computer Configuration\Administrative Templates\System\User Profiles\ "Do not check for user ownership of Roaming Profile folders"