Novell Client

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search

My goal was use Novell client as silent background for old novell server in active directory environment until all services from Novell server will be moved away.

folders and files[edit]

  • create %software%\novell-client\
  • put here: change-provider-order.vbs, nastaveni.reg, psexec.exe (from sysinternals suite)
  • create subfolder %software%\novell-client\491SP5a\

Create unattend.txt[edit]

  • download 4.91 SP5a
  • in admin folder use nciman.exe - define your settings and save it to novell-client\unnatend.txt
  • my example unattend.txt:
  [Novell_Client_Install_Manager]
  Novell_Client=2000/XP
  Version=4.91.5
  [SetupNWInstallOptions]
  !DisplayInitialScreen=NO
  !Reboot_Or_Ask=Neither
  !InstallNMAS=NO
  !InstallNICI=NO
  [NovellNetWareClientParameters]
  !AcceptLicenseAgreement=YES
  !Protocol=IPNOCM
  !RemoveIPXIfPresent=YES
  !DoInstall=YES
  !RemoveMSNetWareClient=NO
  !AskUseNetWareGINA=NO
  !UseNetWareGINA=NO
  !Preferred_Server="192.168.89.240"
  !Preferred_Server_Distribute=Always
  !Preferred_Tree="TREE"
  !Preferred_Tree_Distribute=Always
  !Tree_List1=192.168.89.240
  !Tree_List2=TREE
  !Tree_List_Distribute=Replace
  !Default_Context_List1=192.168.89.240
  !Default_Context_List2=KOMP.UNO
  !Default_Context_List_Distribute=Replace
  !Show_Location_List=NO
  !Show_Location_List_Distribute=Always
  !Preferred_Network_Protocol=IP
  !Preferred_Network_Protocol_Distribute=Always
  !IP_NDS=ON
  !IP_HOSTFILE=ON
  !IP_DNS=ON
  !IP_SLP=ON
  !IP_Naming_Distribute=Always
  !Enable_Scheduler_Icon=OFF
  !Enable_Scheduler_Icon_Distribute=Always
  !ServiceInstances_Distribute=Always
  !Remember_Workstation_Only=NO
  !Remember_Workstation_Only_Distribute=Always
  !Workstation_Only_If_Disconnected=YES
  !Workstation_Only_If_Disconnected_Distribute=Always
  [NDPSParameters]
  !DoInstall=NO
  !IsOptional=NO
  !DoRemove=YES
  [NovellNetwareLocationProfiles]
  !Profile_List1=Default
  !Profile_List_Distribute=Replace
  !ProfilesListSZ0="Default","Default"
  !ProfilesCount=1
  !LoginServiceDWOn0="Default","Save On Exit"
  !LoginServiceSZ0="Default","Tab","Credentials"
  !LoginServiceSZ1="Default\Tab1","Tab","NDS"
  !LoginServiceSZ2="Default\Tab1","Server","192.168.89.240"
  !LoginServiceSZ3="Default\Tab1","Tree","192.168.89.240"
  !LoginServiceSZ4="Default\Tab2","Tab","Script"
  !LoginServiceSZ5="Default\Tab3","Tab","NT Credentials"
  !LoginServiceDWOn1="Default\Tab2","Login Script"
  !LoginServiceDWOn2="Default\Tab2","Display Results"
  !LoginServiceDWOn3="Default\Tab2","Close Results"
  !LoginServiceSZ6="Default\Tab3","DefaultUserName",""
  !LoginServiceSZ7="Default\Tab4","Tab","Dialup"
  !LoginServiceDWOff0="Default\Tab4","Enable RAS"
  !LoginServiceSZ8="Default\Tab4","Dialup Entry","<DEFAULT>"
  !LoginServiceSZ9="Default\Tab4","Dialup From","None (Direct Dial)"
  !LoginServiceSZ10="Default\Tab4","Dialup From","None (Direct Dial)"
  !LoginServiceCount=10,4,1
  []
  _Distribute=Always
  [Network_2000]
  Install2000Services=Services2000List
  [Services2000List]
  NW_NWFS=NovellNetwareClientParameters, \$OEM$\NET\NTCLIENT\I386
  NW_NDPS=NDPSParameters, \$OEM$\NET\NTCLIENT\I386
  • test your settings:
  start /w setupnw.exe /U /l:english /SL:c:\novell-client.log

novell-client.xml[edit]

    <?xml version="1.0" encoding="UTF-8"?>
    <packages>
        <package 
          id="novell-client" 
          name="Novell Client 4.91 SP5" 
          revision="5" 
          priority="0">
            <check type="uninstall" condition="exists" path="Novell Client for Windows" />
            
             
            <install cmd='"%SOFTWARE%\novell-client\psexec.exe" /accepteula -s -i %comspec% /c "%SOFTWARE%\novell-client\491SP5a\setupnw.exe" /U /l:english /SL:c:\novell-client.log'>
                <exit code="0" reboot="delayed" />        
            </install>
            <install cmd='%comspec% /c cscript "%SOFTWARE%\novell-client\change-provider-order.vbs"' />
            <install cmd='regedit /s "%SOFTWARE%\novell-client\nastaveni.reg"' />
    
            <upgrade cmd='"%SOFTWARE%\novell-client\psexec.exe" /accepteula -s -i %comspec% /c "%SOFTWARE%\novell-client\491SP5a\setupnw.exe" /U /l:english /SL:c:\novell-client.log'>
                <exit code="0" reboot="delayed" />
            </upgrade>
            <upgrade cmd='%comspec% /c cscript "%SOFTWARE%\novell-client\change-provider-order.vbs"' />
            <upgrade cmd='regedit /s "%SOFTWARE%\novell-client\nastaveni.reg"' />                 
    
            <remove cmd='%COMSPEC% /C if exist "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" /u ms_nwspx' />
            <remove cmd='%COMSPEC% /C if exist "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" /u ms_nwnb' />
            <remove cmd='%COMSPEC% /C if exist "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" /u ms_nwipx' />
            <remove cmd='%COMSPEC% /C if exist "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" /u nw_wm' />
            <remove cmd='%COMSPEC% /C if exist "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" /u nw_ndps' />
            <remove cmd='%COMSPEC% /C if exist "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" "%WINDIR%\system32\NetWare\Nwmigw2k\setupw2k.exe" /u nw_nwfs'>
                <exit code="0" reboot="delayed" />
            </remove>
        </package>
    </packages>

change-provider-order.vbs[edit]

Novell Client put self in provider order on first place http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/howto_mod_prov_order.mspx?mfr=true If you have to use active directory + novell client, login scripts and wpkg auto-installation can be very slow. This script will put Microsoft Networks on first place:

  '
  ' ChangeProviderOrder.vbs, by Anders Olsson, Kentor Teknik AB, 2006-10-31
  '
  ' Reads the "Network provider order" from the registry and reorders it putting
  ' the "Microsoft Windows Networking" provider on top.
  '
  ' Example: Before - "NCredMgr,NetwareWorkstation,RDPNP,LanmanWorkstation,WebClient"
  ' would become "LanmanWorkstation,NCredMgr,NetwareWorkstation,RDPNP,WebClient" after
  ' running this script.
  '
  
  Set WshShell = WScript.CreateObject("WScript.Shell")
  
  ' Read the reg value of the providers
  strKey = WshShell.RegRead("HKLM\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder")
  
  ' Split the strings up using comma (ASCII #44) as the delimiter
  arrProvs = Split(strKey, chr(44), -1, 1)
  
  ' If LanmanWorkstation is already first, we don't have to do anything
  If arrProvs(0) = "LanmanWorkstation" Then
  Wscript.Quit(0)
  end if
  
  ' "LanmanWorkstation" should always start the string
  strNewProvs = "LanmanWorkstation"
  
  ' Loop through the old provider strings, and add them to the new string. Don't
  ' write LanmanWorkstation, since it's already written at the start of the string.
  For Each strProv In arrProvs
  Select Case strProv
  Case "LanmanWorkstation"
  Case Else strNewProvs = strNewProvs & "," & strProv
  End Select
  Next
  
  ' Write the new string back to the registry
  WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder", strNewProvs, "REG_SZ"

nastaveni.reg[edit]

Hide initial novell login, or set some settings that don't work with unattend.txt

  Windows Registry Editor Version 5.00
  
  [HKEY_LOCAL_MACHINE\SOFTWARE\Novell\NWGINA]
  "PassiveMode"=dword:00000001      ;Set this to 1 to bypass the "Initial Novell Login"

auto-login in Novell from Active Directory[edit]

Create GPO, User Configuration - Windows Settings - Scripts - Logon - login.cmd

  • login.cmd:
  %SystemRoot%\system32\loginw32.exe /CONT 192.168.89.240/SomeGlobalUser /PWD SomePassword

http://www.novell.com/support/kb/doc.php?id=3718002