Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cygwin Training Seminar January 27, 2005 MDL AWIPS (Room 10246)

Similar presentations


Presentation on theme: "Cygwin Training Seminar January 27, 2005 MDL AWIPS (Room 10246)"— Presentation transcript:

1 Cygwin Training Seminar January 27, 2005 MDL AWIPS (Room 10246)

2 Presenters Steve Olson Jon Shum

3 Agenda 1. Installation Guidelines 2. Highlights of Cygwin features (Basic and Advanced) 3. Reference Guide

4 1. Installation Guidelines MDL has standardized it's X11 and ssh (replacing telnet and ftp), interface software for PC's. The major goal is to allow secure access from desktops PC's to the various Unix servers that MDL and other divisions support. Three software packages have been chosen. Cygwin, WINscp, and Putty terminal software. There are different situations under which each package will serve a user best. Consequently, the following recommendations have been made:

5 Use case recommendations Cygwin allows X11 servers to be displayed on your windows desktop. Use Putty terminal in secure mode when terminal access is needed but X11 display functions are not. Use WINscp for secure, ftp-like, file transfers between PC's and Unix hosts. See page 9 for a graphic depiction of all available options.

6 Download areas The Cygwin software and localized installation directions can be found at: http://www.mdl.nws.noaa.gov/pub/Cygwin Putty terminal software can be found at http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html WINscp software can be found at: http://winscp.vse.cz/eng/ Please address any questions to

7 2. “Advanced” unsupported cygwin features

8 Advanced Cygwin Overview Cygwin offers a UNIX like environment on top of MS- Windows. Gives the ability to use familiar UNIX tools without losing access to “typical” MS-Windows programs Does not require a UNIX administrator’s level of expertise to setup and maintain. As with anything in MS-Windows, you are responsible for your system. There are no “automatic” backups (except on the shared drives) and you need to “think about what you are doing”. Most security issues can be left to MS-Windows administrators, since it is not a new operating system, but rather a set of programs in the MS-Windows operating system

9 Cygwin, not necessarily a “catch all” TaskPuttyWinSCPCygwinCygwin-XExceed Remote SSH sessionYesNoYesExcessivePatch SCP sessionPscpYes ExcessivePatch? Fast install / uninstall on a “borrowed” machine YesNo Remote GUI Desktop (and tools) (hogs communication lines) No Yes Local GUI Desktop (and tools)No YesNo Local UNIX like command line tools (compiler, scripting, editors, file utils) No Yes No GemPakNo Yes Cost (usage at home / telecommuting) Free Costly

10 Cygwin: Features beyond the basic Command line tools: Compiler (gcc, g77, g++, make) Network tools (ssh, scp, rsync) Programming tools (splint, indent) Version control system (cvs, rcs) File tools (diff / patch, head / tail / cut, od) Shell scripting (bash, tcsh, zsh) Archive (tar, gzip, bzip) Man Pages Interpreters (expect, Tcl/Tk, perl, python) Editors (vi, pico (see pine), emacs) Easy copy / paste between cygwin and MS-Windows programs (rxvt) Scheduled task capability (cron) ImageMagick (convert) {Extension: CD Images (mkisofs)} GUI based tools: Xemacs “xv” Ghostscript {Extension: GrADS}

11 Command line tools: compilers Example hello.c: #include int main (int argc, char **argv) { printf (“Hello world\n”); return 0; } > gcc hello.c –mno-cygwin –o hello >./hello Hello World > ls hello.exe Example hello.f PROGRAM HELLO WRITE (*,*) “Hello World” END > g77 hello.f –mno-cygwin -o hello >./hello Hello World > ls hello.exe Note: -mno-cygwin flag compiles the code so that it is not dependent on /bin/cygwin1.dll. This means hello.exe can be run on any MS-Windows operating system.

12 Command line tools: Network Network tools “ssh”: Secure connection “scp”: Secure file transfer “ftp”: File transfer protocol (Primarily for anonymous ftp connections) “rsync”: Syncronize file trees (Doesn’t always work for large file trees).

13 Command line: Programming tools / Utils Programming tools: Indent: Useful for making C code indent properly. Splint: Similar to “lint”, is available in cygwin, but has not (yet) been used by MDL. Version control systems: “cvs/rcs”, are available but have not (yet) been used by MDL. File utils: “diff / patch”, “head / tail / cut” behave as they normally do. “od” does an octal dump as usual, but has some minor endian issues in its output.

14 Command line: Shells / Archives / Man Page Cygwin comes with bash and tcsh. Evaluation branch has done several cygwin bash scripts, primarily for NDFD verification. Note: It is useful to know that in order to mimic UNIX, cygwin mounts the MS-Windows drives “c:\”, “a:\”... to “/cygdrive/c/”, “/cygdrive/a/”... Thus “c:/windows” = “c:\windows” = “/cygdrive/c/windows”. Archive tools tar / gzip / bzip all behave similarly to the standard UNIX tools (no need for winzip) Man Pages

15 Command line tools: Interpreters “expect”: This is an extension to Tcl/Tk that assists with automating tasks that require user input. Evaluation branch uses it primarily for automating anonymous ftp sessions. Also used for multiple scp sessions where the password is the same and we want to enter it once. “tclsh”: Used when dealing with a complicated script that can not be done easily in “bash”. Examples: Need to manipulate time. Need to use a C extension to Tcl. Testing CGI scripts “perl”: Testing CGI scripts “python”

16 Command line tools: Editors / Copy / Cron Editors: “vim” “pico” (if you install pine) “emacs” Easy copy / paste (rxvt): The standard cygwin interface uses “cygwin.bat” which uses an MS-DOS command prompt. That command prompt causes difficulties with copy / paste. The “rxvt” terminal uses its own MS-Windows interface, which allows it to enable highlight copying, and middle button pasting using the MS-Windows clipboard. Cron jobs Evaluation branch uses this for updating the extra-tropical storm surge web site (www.nws.noaa.gov/mdl/etsurge) every 2 hours. Advantage over scheduled tasks is that uses a crontab, so it is easier to control.www.nws.noaa.gov/mdl/etsurge

17 GUI tools Cygwin comes with fvwm / twm I tend to avoid the GUI aspects of Cygwin as it takes time to bring up. However I have found both “xv” and “ghostscript” useful from time to time. Xemacs is available, but I have not used it ImageMagick

18 Extending Cygwin KDE A very good desktop environment that works with cygwin GrADS Cygwin does not come with GrADS, but I have managed to install GrADS, and use it in Cygwin. Mkisofs Creates CD images without reliance on “Joliet” (MS- Windows) standard (so it can be read by HP systems) NetCDF viewers

19 3. Reference Guide The Cygwin software and localized installation directions can be found at: http://www.mdl.nws.noaa.gov/pub/Cygwin Putty terminal software can be found at http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html WINscp software can be found at: http://winscp.vse.cz/eng/ This presentation will be available on the following website: http://www.mdl.nws.noaa.gov


Download ppt "Cygwin Training Seminar January 27, 2005 MDL AWIPS (Room 10246)"

Similar presentations


Ads by Google