RANCID on Cygwin
Lee
ler762@gmail.com
Fri Oct 11 20:51:00 GMT 2013
On 10/8/13, David Stacey <drstacey@tiscali.co.uk> wrote:
> On 08/10/2013 14:53, Jakub Horbacewicz wrote:
>> I have to use Windows server for making backups of network devices. To
>> accomplish that I have to run Rancid, so I need to install Cygwin. Can
>> you help me with compiling Rancid through Cygwin? I cannot find any
>> tutorial or tips in google.
>
> If you download and unpack the RANCID sources, there is a 'README' file
> in there with some quick installation instructions. Simply follow the 12
> steps listed in that document.
>
> I don't know much about RANCID, but this might get you started: It
> appears that RANCID is mostly written in script languages (perl,
> expect), with a very small amount of C code that has to be compiled. So,
> from a Cygwin terminal:
>
> # Download and unpack the sources.
> wget ftp://ftp.shrubbery.net/pub/rancid/rancid-2.3.8.tar.gz
> tar -xf rancid-2.3.8.tar.gz
> cd rancid-2.3.8
>
> # Configure.
> ./configure --prefix=/usr
> # This gets stuck checking for 'ping'.
> # I had to open up Windows Task Manager and kill 'ping.exe'.
probably the fix for that is to set PING_PATH in configure - eg:
$ cat MYconfigure
#!/bin/sh
# rancid config
# default prefix is /usr/local/rancid -- make it ~/rancid
# default oldincludedir is /usr/include -- make it ~/rancid/old/include
# windoze only - cygwin ping does not return non-zerfo status for ping fail so
# use the windoze ping instead
./configure --prefix=${HOME}/rancid \
--oldincludedir=${HOME}/rancid/old/include \
PING_PATH=/cygdrive/c/windows/system32/ping.exe
And if you have any long device names ( > 12 characters?? I don't
remember) you might have to modify the code in clogin:
# match cisco config mode prompts too, such as router(config-if)#,
# but catalyst does not change in this fashion.
# -LR- regsub -all fails on cygwin + long device name. {1,21} works
# -LR- regsub -all {^(.{1,11}).*([#>])$} $prompt
{\1([^#>\r\n]+)?[#>](\\([^)\\r\\n]+\\))?} reprompt
regsub -all {^(.{1,21}).*([#>])$} $prompt
{\1([^#>\r\n]+)?[#>](\\([^)\\r\\n]+\\))?} reprompt
expect {
-re $reprompt {}
-re "\[\n\r]+" { exp_continue }
}
Regards,
Lee
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list