Topic
5 replies Latest Post - ‏2012-10-10T17:07:59Z by SystemAdmin
SystemAdmin
SystemAdmin
1632 Posts
ACCEPTED ANSWER

Pinned topic Is cygwin the only way to get DS or DSWC to run CLP jobs on Windows?

‏2012-09-26T22:55:20Z |
It does seem that way to me. I tried using a different, commercial ssh server; however, after successfully logging in, both DS and DSWC quit working.

DS seems to expect a *nix-like environment, as the first command it issues is "sh". I tried creating an sh.bat containing a single command to run "cmd.exe"; however, after it executes cmd.exe it quits with "SshError" and disconnects.

DSWC seems to attempt to recognize what kind of environment it connected to and first issues "uname" (which fails on Windows), then "cmd ver" (which should work just fine). However, that is the last thing it does and hangs indefinitely.
Updated on 2012-10-10T17:07:59Z at 2012-10-10T17:07:59Z by SystemAdmin
  • Sriram_Europa
    Sriram_Europa
    68 Posts
    ACCEPTED ANSWER

    Re: Is cygwin the only way to get DS or DSWC to run CLP jobs on Windows?

    ‏2012-09-27T22:00:13Z  in response to SystemAdmin
    Unfortunately thats the case today. Given that Cygwin+ssh is a bit finicky about environment and authentication mechanisms, it is not the easiest thing to adopt.
    We are currently looking to support the 'IBM SSH Server' instead which is included with the DB2/LUW v10.x distributions on windows as an alternative to cygwin.
    Each SSH server on windows behaves differently (Cygwin launches bash while I see the IBM SSH server launching cmd directly). Some of these servers return proper %errorlevel% on exit of a shell script - others do not.

    Which is the commercial server that you use here ? I wrote a sample test program (in java that works quite similar to DSWC) that I use to test out SSH servers & see how they behave with respect to just plain ssh connects, running commands such as 'ver' and 'cmd' or 'dir', copying files back-n-forth with the sftp sub-protocol. Getting return values after executing scripts and db2 commands etc. So - I can test this server out.
  • SystemAdmin
    SystemAdmin
    1632 Posts
    ACCEPTED ANSWER

    Re: Is cygwin the only way to get DS or DSWC to run CLP jobs on Windows?

    ‏2012-10-01T15:45:04Z  in response to SystemAdmin
    Thanks Sriram,

    I was attempting to use this one: http://www.bitvise.com/winsshd.

    It is kind of deceptive for the DSWC documentation to state the requirement as "ssh" while in fact it means "cygwin+ssh"...
    I am finding that DB2 LUW really should be called DB2 LUw, since the Windows OS environment seems to get the short end of the stick as far as features, support and documentation are concerned. Especially the last one - I can understand platform restrictions and shortcomings dictating some differences in versions, but for the documentation to not spell those differences out clearly is pretty inexcusable in an enterprise-class product.
  • bluey01
    bluey01
    41 Posts
    ACCEPTED ANSWER

    Re: Is cygwin the only way to get DS or DSWC to run CLP jobs on Windows?

    ‏2012-10-04T03:44:27Z  in response to SystemAdmin
    IBM really needs to take note of some of this feedback regarding DataStudio and Windows. I fully agree with the sentiments that Windows is not really being supported in a good manner.

    This need to use cygwin & ssh is clumsy and is not a workable solution on windows
  • SystemAdmin
    SystemAdmin
    1632 Posts
    ACCEPTED ANSWER

    OK, so I installed cygwin and CLP jobs still do not work...

    ‏2012-10-10T17:07:14Z  in response to SystemAdmin
    ...but at least DSWC is now attempting to run them. I was able to back up a database through DS Full Client - once, then I broke something while trying to get DSWC to run, but I am should be able to make it work again.
    DSWC logs this:
    ID: 1349879060343
    Name: DB Backup
    Commands Executed:

    BACKUP DATABASE SAMPLE ONLINE TO "F:\Backup" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 COMPRESS INCLUDE LOGS WITHOUT PROMPTING;
    Start Time: 2012-10-10 11:22:40
    End Time: 2012-10-10 11:22:53
    Errors from executing:

    cygwin warning:
    MS-DOS style path detected: c:/db2cmdRunner.bat
    Preferred POSIX equivalent is: /cygdrive/c/db2cmdRunner.bat
    CYGWIN environment variable option "nodosfilewarning" turns off this warning.
    Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
    bash: c:/db2cmdRunner.bat: Permission denied

    bash: c:/db2Runner.bat: Permission denied

    bash: c:/846c72c7d7bee98db8fe87ad88b019a1.sql: Permission denied

    bash: c:/db2cmdRunner.bat: No such file or directory

    cat: c:/846c72c7d7bee98db8fe87ad88b019a1.out: No such file or directory

    cat: c:/846c72c7d7bee98db8fe87ad88b019a1.level: No such file or directory

    rm: cannot remove `c:/db2cmdRunner.bat': No such file or directory

    rm: cannot remove `c:/db2Runner.bat': No such file or directory

    rm: cannot remove `c:/846c72c7d7bee98db8fe87ad88b019a1.sql': No such file or directory

    rm: cannot remove `c:/846c72c7d7bee98db8fe87ad88b019a1.out': No such file or directory

    rm: cannot remove `c:/846c72c7d7bee98db8fe87ad88b019a1.level': No such file or directory

    Result: The job execution failed. Execution Status code: 3

    None of the files referenced are in the root of c:, but I am guessing it attempts to copy them there and then run them as batch files. This begs the question - why the root of c? Couldn't this be configurable? Anyway, it still did not work due to permission issues, but I am not sure what credentials is it using. The user that is used to authenticate to the database is part of the local Administrators group, and just to be sure I gave cyg_server full rights to c: (even that this is not a good security practice).
    For reference, I am running CYGWIN_NT-5.2 MKEITIDB2T01 1.7.16(0.262/5/3) 2012-07-20 22:55 i686 Cygwin - the newest that was available.
  • SystemAdmin
    SystemAdmin
    1632 Posts
    ACCEPTED ANSWER

    Re: Is cygwin the only way to get DS or DSWC to run CLP jobs on Windows?

    ‏2012-10-10T17:07:59Z  in response to SystemAdmin
    Installed cygwin, but DSWC still won't run CLP jobs.