You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
(26) |
Nov
(60) |
Dec
(1) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(12) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Jason B. <br...@us...> - 2005-02-07 21:51:42
|
Update of /cvsroot/openxcat/openxcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24163 Modified Files: VERSION Log Message: New version # Index: VERSION =================================================================== RCS file: /cvsroot/openxcat/openxcat/VERSION,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- VERSION 24 Jan 2005 16:44:26 -0000 1.1 +++ VERSION 7 Feb 2005 21:51:29 -0000 1.2 @@ -4,5 +4,5 @@ # $Id$ # -0.1 +0.2 |
|
From: Jason B. <br...@us...> - 2005-02-07 21:50:21
|
Update of /cvsroot/openxcat/openxcat/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23624 Modified Files: openXcat.pm Log Message: New version # Index: openXcat.pm =================================================================== RCS file: /cvsroot/openxcat/openxcat/lib/openXcat.pm,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- openXcat.pm 4 Oct 2004 18:28:41 -0000 1.2 +++ openXcat.pm 7 Feb 2005 21:50:10 -0000 1.3 @@ -8,7 +8,7 @@ use strict; use vars qw( $VERSION @ISA @EXPORT ); -$VERSION = '0.1'; +$VERSION = '0.2'; @ISA = qw(Exporter); |
|
From: Brian E. F. <bri...@us...> - 2005-01-24 16:52:07
|
Update of /cvsroot/openxcat/openxcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11703 Added Files: CREDITS Log Message: --- NEW FILE: CREDITS --- # # "openXcat" # # $Id: CREDITS,v 1.1 2005/01/24 16:51:58 brianfinley Exp $ # ################################################################################ # # This is at least a partial credits-file of people that have contributed # to the openXcat project. It is sorted by name and formatted to allow # easy grepping and beautification by scripts. The fields are: name (N), # email (E), web-address (W), PGP key ID and fingerprint (P), description (D), # and snail-mail address (S). # # If you are not listed here, but should be, please send a patch with an # entry for yourself to <ope...@li...>. # # Thanks! # N: Jason Brechin D: Lead developer N: Brian Finley D: Project Founder |
|
From: Brian E. F. <bri...@us...> - 2005-01-24 16:44:38
|
Update of /cvsroot/openxcat/openxcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9416 Added Files: VERSION Log Message: add a version file. --- NEW FILE: VERSION --- # # Official VERSION number actually stored in: lib/openXcat.pm # # $Id: VERSION,v 1.1 2005/01/24 16:44:26 brianfinley Exp $ # 0.1 |
|
From: Jason B. <br...@us...> - 2005-01-06 21:53:45
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24927 Added Files: rcad Log Message: Initial rcad (untested) --- NEW FILE: rcad --- #!/usr/bin/perl # rcad - Remote Ctrl-Alt-Delete # # Written by Jason Brechin <br...@nc...> # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id: rcad,v 1.1 2005/01/06 21:53:35 brechin Exp $ use FindBin qw($Bin); use lib "$Bin/../lib"; use openXcat::Base; use Carp; use Switch; if ( scalar(@ARGV) < 1 || $ARGV[0] =~ /help/ ) { usage(); } my @nodes = noderange(@ARGV); $noderange = join(',', @nodes); my $nmref = phm('cad', $noderange); my @nanodes = grep { $$nmref{$_} eq 'NA' } @nodes; foreach my $hm (values %{$nmref} ) { if ( $hm eq 'NA' ) { next; } else { my @hmnodes = grep { $$nmref{$_} eq $hm } @nodes; if ( -e "$Bin/../util/rcad.$hm" ) { system("$Bin/../util/rcad.$hm $noderange"); } else { push( @nanodes, @hmnodes ); carp "cad using $hm is not supported"; } } } print "cad function not supported on: " . join(',', @nanodes) . "\n"; sub usage { print "$0 - Remote Ctrl-Alt-Delete\n"; print version; print "Usage: $0 noderange\n"; exit; } =head1 NAME rcad - Remote Ctrl-Alt-Delete =head1 SYNOPSIS rcad noderange =head1 DESCRIPTION rcad will attempt to use the method defined in nodehm.tab to perform a Ctrl-Alt-Delete action on the noderange given. =head1 REVISION Revision $Revision: 1.1 $ =head1 AUTHOR Jason Brechin <br...@nc...> =head1 COPYRIGHT This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
Update of /cvsroot/openxcat/openxcat/man/man1 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7703 Added Files: addattr.1 addclusteruser.1 delattr.1 genpasswd.1 genrhosts.1 gensshkeys.1 h2n.pl.1 hexip.1 iphex.1 lsgroup.1 makedns.1 nr.1 nrcmd.1 osver.1 pbsjobnodes.1 pbsusernodes.1 pping.1 psh.1 pushuser.1 rpower.1 rreset.1 updatepassgroup.1 Log Message: Add initial binary man pages --- NEW FILE: pushuser.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PUSHUSER 1" .TH PUSHUSER 1 "2004-11-10" "perl v5.8.0" "User Contributed Perl Documentation" --- NEW FILE: osver.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "OSVER 1" .TH OSVER 1 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" osver \- Get OS version .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& osver .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The osver utility will return a string specifying the \s-1OS\s0 version of the current machine. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: rreset.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RRESET 1" .TH RRESET 1 "2005-01-06" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" rreset \- Remote Reset .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& rreset noderange .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" rreset will attempt to use the method defined in nodehm.tab to perform a reset on the noderange given. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: pbsjobnodes.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PBSJOBNODES 1" .TH PBSJOBNODES 1 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" pbsjobnodes \- Get nodes assigned to a PBS job ID .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& pbsjobnodes jobID .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The pbsjobnodes utility will return a list of the nodes assigned to a given \&\s-1PBS\s0 job \s-1ID\s0. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: genpasswd.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "GENPASSWD 1" .TH GENPASSWD 1 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" genpasswd \- Generate random password .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& genpasswd (length) .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The genpasswd utility will generate a random password of a given length (default: 8 characters). .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: iphex.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "IPHEX 1" .TH IPHEX 1 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" hexip \- Convert hex IP to dotted decimal .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& iphex (ip) .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The iphex utility will convert a dotted decimal \s-1IP\s0 to a packed hexadecimal \s-1IP\s0. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: h2n.pl.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "H2N 1" .TH H2N 1 "2004-11-05" "perl v5.8.0" "User Contributed Perl Documentation" --- NEW FILE: hexip.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "HEXIP 1" .TH HEXIP 1 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" hexip \- Convert hex IP to dotted decimal .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& hexip (hexip) .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The hexip utility will convert a packed hexadecimal \s-1IP\s0 to a dotted decimal. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: updatepassgroup.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "UPDATEPASSGROUP 1" .TH UPDATEPASSGROUP 1 "2004-11-10" "perl v5.8.0" "User Contributed Perl Documentation" --- NEW FILE: addattr.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "ADDATTR 1" .TH ADDATTR 1 "2004-11-15" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" addattr \- Add attribute(s) to a noderange .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& addattr noderange attribute .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" addattr will add attributes in the nodelist.tab file to the nodes specified. It will avoid duplication. To remove attributes, use delattr. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: makedns.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "MAKEDNS 1" .TH MAKEDNS 1 "2004-11-08" "perl v5.8.0" "User Contributed Perl Documentation" --- NEW FILE: pbsusernodes.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PBSUSERNODES 1" .TH PBSUSERNODES 1 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" pbsusernodes \- Get nodes assigned to a PBS job ID .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& pbsusernodes jobID .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The pbsusernodes utility will return a list of the nodes assigned to a given \&\s-1PBS\s0 user. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \&\s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA\s0 --- NEW FILE: psh.1 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PSH 1" .TH PSH 1 "2004-11-30" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" psh \- Parallel Shell .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& psh (-s) (-i interface) noderange command .Ve .PP .Vb 5 \& Options: \& --help Display this helpful information \& --serial Run command serially in order \& --interface <if> Use interface \& --fork Use forking instead of threads .Ve .PP .Vb 3 \& noderange may be 'me' to specify all the nodes running your pbs \& job(s). You may also specify a PBS job ID to run on the nodes assigned \& to that job ID. .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The psh utility will run a given command across all nodes in the noderange given. If no command is given, psh offers an \*(L"interactive\*(R" mode. For speed, psh uses threads to connect to multiple nodes in parallel, but a serial option is available as well. .SH "REVISION" .IX Header "REVISION" Revision \f(CW$Revision: 1.1 $ .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT" .IX Header "COPYRIGHT" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 ... [truncated message content] |
|
From: Jason B. <br...@us...> - 2005-01-06 20:50:08
|
Update of /cvsroot/openxcat/openxcat/man/man3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7541 Added Files: Base.pm.3 Config.pm.3 Netboot.pm.3 Log Message: Add initial library man pages --- NEW FILE: Netboot.pm.3 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "openXcat::Netboot 3" .TH openXcat::Netboot 3 "2004-11-05" "perl v5.8.0" "User Contributed Perl Documentation" --- NEW FILE: Config.pm.3 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "openXcat::Config 3" .TH openXcat::Config 3 "2004-11-16" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" openXcat::Config \- Parses and returns configuration information from oXc config files .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 3 \& use openXcat::Base; \& use openXcat::Config; \& my %configinfo = getconfigfile( $configfile ) .Ve .PP .Vb 1 \& my @option1opts = @{ $configinfo{'option1'} }; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module reads a given config file that has been written in the format that other oXc config files are written. For example: .PP .Vb 2 \& option value \& option2 val1,val2,val3 .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" Look within each config file for more information on how to format the data See openXcat::Base for more information on how to deal with config values .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright 2004, The Board of Trustees of the University of Illinois .PP Free software bound by \s-1GPL\s0 license --- NEW FILE: Base.pm.3 --- .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "openXcat::Base 3" .TH openXcat::Base 3 "2004-12-01" "perl v5.8.0" "User Contributed Perl Documentation" .SH "NAME" openXcat::Base \- Provides basic information for oXc Perl programs .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& use openXcat::Base; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module provides variables and functions that many oXc programs may need. .Sh "Variables" .IX Subsection "Variables" .ie n .IP "$RSHC" 8 .el .IP "\f(CW$RSHC\fR" 8 .IX Item "$RSHC" Contains path to remote shell command, usually \f(CW\*(C`/usr/bin/ssh\*(C'\fR .ie n .IP "$ROOT" 8 .el .IP "\f(CW$ROOT\fR" 8 .IX Item "$ROOT" Contains path to openXcat root, usually \f(CW\*(C`/opt/openxcat\*(C'\fR or something similar .ie n .IP "$ARCH" 8 .el .IP "\f(CW$ARCH\fR" 8 .IX Item "$ARCH" Contains architecture, as obtained from uname .ie n .IP "%TABS" 8 .el .IP "\f(CW%TABS\fR" 8 .IX Item "%TABS" Hash containing the locations of the .tab files. To access the information, you reference them as follows: .Sp \&\f(CW\*(C`my $nodelistloc = $TABS{'NODELIST'};\*(C'\fR .ie n .IP "%sitetabconf" 8 .el .IP "\f(CW%sitetabconf\fR" 8 .IX Item "%sitetabconf" Hash containing values in site.tab. Useful for gathering various pieces of information using getvalue .ie n .IP "@uname" 8 .el .IP "\f(CW@uname\fR" 8 .IX Item "@uname" Array of values returned from uname. See uname for more information. .ie n .IP "$hostname" 8 .el .IP "\f(CW$hostname\fR" 8 .IX Item "$hostname" Contains name of current host. .Sh "Methods" .IX Subsection "Methods" .ie n .IP """singlenodeeg""" 8 .el .IP "\f(CWsinglenodeeg\fR" 8 .IX Item "singlenodeeg" Gives a single example node .ie n .IP """version""" 8 .el .IP "\f(CWversion\fR" 8 .IX Item "version" Returns the openXcat version .ie n .IP """osver""" 8 .el .IP "\f(CWosver\fR" 8 .IX Item "osver" Returns the \s-1OS\s0 version as a string .ie n .IP """interface2ip""" 8 .el .IP "\f(CWinterface2ip\fR" 8 .IX Item "interface2ip" Gives the \s-1IP\s0 for a given interface. It returns the ip addr, broadcast, and netmask of an interface. .Sp This function was originally written by Sean Dague, distributed as part of \s-1OSCAR\s0 in OSCAR::Network under the \s-1GPL\s0 license. .ie n .IP """host2ip""" 8 .el .IP "\f(CWhost2ip\fR" 8 .IX Item "host2ip" Resolves a hostname to an \s-1IP\s0 .ie n .IP """getinterfaces""" 8 .el .IP "\f(CWgetinterfaces\fR" 8 .IX Item "getinterfaces" Finds all network interfaces .ie n .IP """noderange""" 8 .el .IP "\f(CWnoderange\fR" 8 .IX Item "noderange" Resolves a given noderange, returns an array of node names .ie n .IP """iptohex""" 8 .el .IP "\f(CWiptohex\fR" 8 .IX Item "iptohex" Transforms a dotted decimal \s-1IP\s0 to a packed hexadecimal .ie n .IP """hextoip""" 8 .el .IP "\f(CWhextoip\fR" 8 .IX Item "hextoip" Transforms a packed hexadecimal \s-1IP\s0 to dotted decimal .ie n .IP """intersection""" 8 .el .IP "\f(CWintersection\fR" 8 .IX Item "intersection" Really a sort of \f(CW\*(C`uniq\*(C'\fR function, gets rid of duplicate entries .ie n .IP """genpasswd""" 8 .el .IP "\f(CWgenpasswd\fR" 8 .IX Item "genpasswd" Generates a random password of any length (default: 8) .ie n .IP """getvalue""" 8 .el .IP "\f(CWgetvalue\fR" 8 .IX Item "getvalue" Useful in getting values from %sitetabconf or other hashes .ie n .IP """pbsusernodes""" 8 .el .IP "\f(CWpbsusernodes\fR" 8 .IX Item "pbsusernodes" Returns all nodes assigned to a particular user in \s-1PBS\s0 .ie n .IP """pbsjobnodes""" 8 .el .IP "\f(CWpbsjobnodes\fR" 8 .IX Item "pbsjobnodes" Returns all nodes assigned to a particular job \s-1ID\s0 in \s-1PBS\s0 .ie n .IP """ping""" 8 .el .IP "\f(CWping\fR" 8 .IX Item "ping" Pings a list of nodes .ie n .IP """nodehash""" 8 .el .IP "\f(CWnodehash\fR" 8 .IX Item "nodehash" Returns two references to hashes, one with node keys, one with group keys .ie n .IP """phm""" 8 .el .IP "\f(CWphm\fR" 8 .IX Item "phm" Pass in a function name and a noderange, it returns an array with the method by which that node supports that function (e.g. node1 uses ipmi for power) .SH "SEE ALSO" .IX Header "SEE ALSO" See http://www.sourceforge.net/projects/openxcat for more information .SH "AUTHOR" .IX Header "AUTHOR" Jason Brechin <br...@nc...> .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright 2004, The Board of Trustees of the University of Illinois .PP Free software bound by \s-1GPL\s0 license |
|
From: Jason B. <br...@us...> - 2005-01-06 20:49:19
|
Update of /cvsroot/openxcat/openxcat/man/man5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7347/man5 Log Message: Directory /cvsroot/openxcat/openxcat/man/man5 added to the repository |
|
From: Jason B. <br...@us...> - 2005-01-06 20:49:08
|
Update of /cvsroot/openxcat/openxcat/man/man3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7253/man3 Log Message: Directory /cvsroot/openxcat/openxcat/man/man3 added to the repository |
|
From: Jason B. <br...@us...> - 2005-01-06 20:48:56
|
Update of /cvsroot/openxcat/openxcat/man/man1 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7197/man1 Log Message: Directory /cvsroot/openxcat/openxcat/man/man1 added to the repository |
|
From: Jason B. <br...@us...> - 2005-01-06 20:48:41
|
Update of /cvsroot/openxcat/openxcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7143 Modified Files: .cvsignore Log Message: Simplify cvsignore Index: .cvsignore =================================================================== RCS file: /cvsroot/openxcat/openxcat/.cvsignore,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- .cvsignore 6 Oct 2004 15:45:03 -0000 1.2 +++ .cvsignore 6 Jan 2005 20:48:31 -0000 1.3 @@ -1,3 +1 @@ -README~ -setupoXcat~ -COPYING~ +*~ |
|
From: Jason B. <br...@us...> - 2005-01-06 20:47:58
|
Update of /cvsroot/openxcat/openxcat/man In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6934/man Log Message: Directory /cvsroot/openxcat/openxcat/man added to the repository |
|
From: Jason B. <br...@us...> - 2005-01-06 20:47:36
|
Update of /cvsroot/openxcat/openxcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6873 Added Files: gendocs Log Message: Simple utility to generate man pages for oXc --- NEW FILE: gendocs --- #!/usr/bin/perl # # Jason Brechin <br...@nc...> # Copyright 2005 The Board of Trustees of the University of Illinois. opendir(BIN, 'bin'); push( @bin, grep { ! /^\./ && -f "bin/$_" } readdir(BIN) ); closedir BIN; foreach my $f (@bin) { $f = "bin/$f"; } opendir(SBIN, 'sbin'); push( @sbin, grep { ! /^\./ && -f "sbin/$_" } readdir(SBIN) ); closedir SBIN; foreach my $f (@sbin) { $f = "sbin/$f"; } @files = (@bin, @sbin); push( @files, qw( lib/openXcat/Base.pm lib/openXcat/Config.pm lib/openXcat/Netboot.pm) ); if ( ! -d 'man/man1' || ! -d 'man/man3' || ! -d 'man/man5' ) { system("mkdir -p man/man1 man/man3 man/man5"); } foreach my $file (@files) { if ( $file =~ /~$/ ) { next; } $file =~ /(?:\S*\/)?(\S+)/; my $page = $1; if ( $file =~ /^.?bin/ ) { #Sec. 1 system("pod2man -v --section=1 $file > man/man1/$page.1"); } elsif ( $file =~ /^lib/ ) { #Sec. 3 system("pod2man -v --section=3 $file > man/man3/$page.3"); } else { #Sec. 5 system("pod2man -v --section=5 $file > man/man5/$page.5"); } } |
|
From: Jason B. <br...@us...> - 2005-01-06 20:23:08
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1095 Added Files: rreset Log Message: Initial checkin (untested) --- NEW FILE: rreset --- #!/usr/bin/perl # rreset - Remote Reset # # Written by Jason Brechin <br...@nc...> # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id: rreset,v 1.1 2005/01/06 20:22:51 brechin Exp $ use FindBin qw($Bin); use lib "$Bin/../lib"; use openXcat::Base; use Carp; use Switch; if ( scalar(@ARGV) < 1 or $ARGV[0] =~ /help/ ) { usage(); } my @nodes = noderange(@ARGV); $noderange = join(',', @nodes); my $nmref = phm('reset', $noderange); my @nanodes = grep { $$nmref{$_} eq 'NA' } @nodes; foreach my $hm (values %{$nmref} ) { if ( $hm eq 'NA' ) { next; } else { my @hmnodes = grep { $$nmref{$_} eq $hm } @nodes; if ( -e "$Bin/../util/rreset.$hm" ) { system("$Bin/../util/rreset.$hm $noderange"); } else { push( @nanodes, @hmnodes ); carp "reset using $hm is not supported"; } } } print "Reset function not supported on: " . join(',', @nanodes) . "\n"; sub usage { print "$0 - Remote Reset\n"; print version; print "Usage: $0 noderange\n"; exit; } =head1 NAME rreset - Remote Reset =head1 SYNOPSIS rreset noderange =head1 DESCRIPTION rreset will attempt to use the method defined in nodehm.tab to perform a reset on the noderange given. =head1 REVISION Revision $Revision: 1.1 $ =head1 AUTHOR Jason Brechin <br...@nc...> =head1 COPYRIGHT This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
From: Jason B. <br...@us...> - 2004-12-01 15:23:51
|
Update of /cvsroot/openxcat/openxcat/lib/openXcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11271 Modified Files: Base.pm Log Message: Fix file line range specifying a single line number Index: Base.pm =================================================================== RCS file: /cvsroot/openxcat/openxcat/lib/openXcat/Base.pm,v retrieving revision 1.25 retrieving revision 1.26 diff -u -d -r1.25 -r1.26 --- Base.pm 30 Nov 2004 19:50:16 -0000 1.25 +++ Base.pm 1 Dec 2004 15:23:41 -0000 1.26 @@ -407,7 +407,7 @@ if ( defined($range) && $range ) { $range =~ /(\d+)(-)?(\d*)/; my $beg = $1 - 1; - my $end = $1; + my $end = $beg; if ( $2 ) { if ( $3 ) { $end = $3 - 1; |
|
From: Jason B. <br...@us...> - 2004-11-30 21:41:41
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10667 Modified Files: psh Log Message: Fix some forking stuff, add quiet option, make forking default (not threading) Index: psh =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/psh,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- psh 16 Nov 2004 21:29:00 -0000 1.10 +++ psh 30 Nov 2004 21:41:25 -0000 1.11 @@ -20,18 +20,20 @@ my $killed : shared = 0; my $node; +#select STDOUT; +#$| = 1; + my $maxjobs; my $forkjobs = 500; my $serial = 0; my $interface; my $flags; my $p = 1; -my $fork = 0; - -$SIG{INT} = \&killed; -$SIG{HUP} = \&killed; -$SIG{QUIT}= \&killed; -$SIG{TERM}= \&killed; +my $q = 0; +my $fork = 1; +my $parent; +my @children; +my @nodes; if ( $ENV{'XCAT_PSHMAXJOBS'} ) { $maxjobs = $ENV{'XCAT_PSHMAXJOBS'}; @@ -55,11 +57,31 @@ getconfig(); +if ( $q ) { + $q = '>/dev/null'; +} else { + $q = ''; +} + +if ( ! $fork ) { + $SIG{INT} = \&killed; + $SIG{HUP} = \&killed; + $SIG{QUIT}= \&killed; + $SIG{TERM}= \&killed; +} else { + $parent = $$; + $SIG{INT} = \&killedfork; + $SIG{HUP} = \&killedfork; + $SIG{QUIT}= \&killedfork; + $SIG{TERM}= \&killedfork; +} + if ( scalar(@ARGV) < 1 ) { usage(); } -my ($noderange, $command) = @ARGV; +my $noderange = shift; +my $command = join(' ', @ARGV); my $qstat = `which qstat 2>/dev/null`; @@ -86,16 +108,18 @@ exit; } else { docommand(); +# select STDOUT; +# $| = 0; +# $| = 1; } sub docommand { my $nr = shift || $noderange; - my @nodes = noderange($nr); + @nodes = noderange($nr); if ( $serial ) { foreach my $node (sort(@nodes)) { if ( ! $p || ping($node) ) { - #print "Running '$RSHC $flags $node$interface '$command' 2>&1 | sed 's/^/$node: /'\n"; - my @results = split("\n", `$RSHC $flags $node$interface '$command' 2>&1 | sed 's/^/$node: /'`); + my @results = split("\n", `$RSHC $flags $node$interface '$command' $q 2>&1 | sed 's/^/$node: /'`); @results = grep { $_ !~ /.Xauthority$/ } @results; print join("\n", @results); print "\n"; @@ -112,36 +136,29 @@ } my $jobs = 0; if ( $fork ) { - my @children; - my $pid; - $maxjobs = $forkjobs; - my $jobs = 0; - if ( scalar(@nodes) < $maxjobs ) { - $maxjobs = scalar(@nodes); - } - - #print "Forking up to $maxjobs times for " . scalar(@nodes) . " nodes\n"; - - my $nc = scalar(@nodes); - while ( my $tnode = pop(@nodes) ) { - if ( $jobs >= $maxjobs ) { - my $donepid = wait(); - @children = grep { $_ != $donepid } @children; - $jobs--; - } - if ( $pid = fork ) { - $jobs++; - push(@children, $pid); + use IO::Handle; + my %pids; + my %output; + foreach my $n (@nodes) { + $output{$n} = new IO::Handle; + if ( $pids{$n} = open($output{$n}, "-|") ) { + + } elsif ( defined( $pids{$n} ) ) { + exec("$RSHC $flags $n$interface '$command' $q 2>&1 | sed 's/^/$n: /'") + or die "Couldn't connect to $n: $!\n"; } else { - croak "Can't fork: $!" unless defined $pid; - commandfork($tnode); - exit; + carp "Can't fork to connect to $n"; } } - foreach my $child (@children) { - waitpid($child, 0); + + foreach my $node (@nodes) { + my $OUTPUT = $output{$node}; + $OUTPUT->autoflush(1); + while ( <$OUTPUT> ) { + print $_; + } + close $OUTPUT; } - exit; } else { if ( scalar(@nodes) > $maxjobs ) { foreach ( 1..$maxjobs) { @@ -177,38 +194,51 @@ die "Got killed with SIG$signame\n"; } +sub killedfork { + my $signame = shift; + if ( $$ == $parent ) { + if ( scalar(@children) ) { + my $donepid = wait(); + @children = grep { $_ != $donepid } @children; + } + print "Have not processed " . scalar(@nodes) . " nodes: " . join(', ', sort(@nodes)) . "\n"; + die "Got killed with SIG$signame\n"; + } else { + die "Child dying\n"; + } +} + sub commandthread { +# select STDOUT; +# $| = 1; while( $node = $nodequeue->dequeue() ) { if ( $p && ! ping($node) ) { print "$node$interface: noping\n"; next; } - my @results = split("\n", `$RSHC $flags $node$interface "$command" 2>&1 | sed "s/^/$node: /"`); + my @results = split("\n", `$RSHC $flags $node$interface "$command" $q 2>&1 | sed "s/^/$node: /"`); @results = grep { $_ !~ /.Xauthority$/ } @results; print join("\n", @results); - print "\n"; + if ( scalar(@results) ) { + print "\n"; + } } } sub commandfork { +# select STDOUT; +# $| = 1; my $node = shift; if ( $p && ! ping($node) ) { print "$node$interface: noping\n"; exit; } my @results; - exec("$RSHC $flags $node$interface '$command' 2>&1 | sed 's/^/$node: /'"); - #my @results = split("\n", `$RSHC $flags $node$interface "$command" 2>&1 | sed "s/^/$node: /"`); - #@results = grep { $_ !~ /.Xauthority$/ } @results; - #if ( scalar(@results) ) { - # print join("\n", @results); - # print "\n"; - #} + exec("$RSHC $flags $node$interface '$command' $q 2>&1 | sed 's/^/$node: /'"); exit; } sub interactive { - my @nodes; if ( $p ) { @nodes = ping(noderange($noderange)); } else { @@ -266,8 +296,14 @@ if ($cwd) { $command = "cd $cwd; $command"; docommand(join(',', @nodes)); + select STDOUT; + $| = 0; + $| = 1; } else { docommand(join(',', @nodes)); + select STDOUT; + $| = 0; + $| = 1; } } } @@ -297,6 +333,7 @@ 'interface=s' => sub { $interface = "-$_"; }, 'ping!' => \$p, 'fork!' => \$fork, + 'quiet!' => \$q, 'help|?' => sub { usage(); }, 'version' => sub { version; }, ); |
|
From: Jason B. <br...@us...> - 2004-11-30 19:51:15
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15742 Added Files: rpower Log Message: Initial checkin of rpower --- NEW FILE: rpower --- #!/usr/bin/perl # rpower - Remote Power Management # # Written by Jason Brechin <br...@nc...> # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id: rpower,v 1.1 2004/11/30 19:51:06 brechin Exp $ use FindBin qw($Bin); use lib "$Bin/../lib"; use openXcat::Base; use Carp; use Switch; my $powercmds = '(on|off|stat|boot|cycle)'; if ( scalar(@ARGV) < 2 ) { usage(); } my $command = shift; my $noderange = join( ',', @ARGV ); my @nodes = noderange($noderange); $noderange = join(',', @nodes); if ( $command eq 'state' ) { $command = 'stat'; } switch( $command ) { case 'help' { usage(); } case /$powercmds/ { my $nmref = phm('power', $noderange); my @nanodes = grep { $$nmref{$_} eq 'NA' } @nodes; foreach my $hm (values %{$nmref} ) { if ( $hm eq 'NA' ) { next; } else { my @hmnodes = grep { $$nmref{$_} eq $hm } @nodes; if ( -e "$Bin/../util/rpower.$hm" ) { system("$Bin/../util/rpower.$hm $command $noderange"); } else { push( @nanodes, @hmnodes ); carp "power using $hm is not supported"; } } } print "Power function not supported on: " . join(',', @nanodes) . "\n"; } case 'reset' { my $nmref = phm('reset', $noderange); my @nanodes = grep { $$nmref{$_} eq 'NA' } @nodes; foreach my $hm (values %{$nmref} ) { if ( $hm eq 'NA' ) { next; } else { my @hmnodes = grep { $$nmref{$_} eq $hm } @nodes; if ( -e "$Bin/../util/rreset.$hm" ) { system("$Bin/../util/rreset.$hm $noderange"); } else { push( @nanodes, @hmnodes ); carp "reset using $hm is not supported"; } } } print "Reset function not supported on: " . join(',', @nanodes) . "\n"; } case 'cad' { my $nmref = phm('cad', $noderange); my @nanodes = grep { $$nmref{$_} eq 'NA' } @nodes; foreach my $hm (values %{$nmref} ) { if ( $hm eq 'NA' ) { next; } else { my @hmnodes = grep { $$nmref{$_} eq $hm } @nodes; if ( -e "$Bin/../util/rcad.$hm" ) { system("$Bin/../util/rcad.$hm $noderange"); } else { push( @nanodes, @hmnodes ); carp "cad using $hm is not supported"; } } } print "cad function not supported on: " . join(',', @nanodes) . "\n"; } else { print "Command $command not supported\n"; } } sub usage { print "$0 - Remote Power Management\n"; print version; print "Usage: $0 (on|off|stat|state|reset|cad|boot|cycle) noderange\n"; exit; } =head1 NAME rpower - Remote Power Management =head1 SYNOPSIS rpower (on|off|stat|state|reset|cad|boot|cycle) noderange =head1 DESCRIPTION rpower will attempt to use the method defined in nodehm.tab to perform the specified action on the noderange given. =head1 REVISION Revision $Revision: 1.1 $ =head1 AUTHOR Jason Brechin <br...@nc...> =head1 COPYRIGHT This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
From: Jason B. <br...@us...> - 2004-11-30 19:50:26
|
Update of /cvsroot/openxcat/openxcat/lib/openXcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15511 Modified Files: Base.pm Log Message: Add phm function Index: Base.pm =================================================================== RCS file: /cvsroot/openxcat/openxcat/lib/openXcat/Base.pm,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- Base.pm 16 Nov 2004 19:02:05 -0000 1.24 +++ Base.pm 30 Nov 2004 19:50:16 -0000 1.25 @@ -46,6 +46,7 @@ pbsjobnodes ping nodehash + phm ); my $D = 0; @@ -336,21 +337,21 @@ if ( $beg =~ /(\S*\D)(\d+)/ ) { if ($D) { print "Numeric range\n"; } my $pre = $1; - print "pre=$pre\n"; + #print "pre=$pre\n"; my $bnum = $2; - print "bnum=$bnum\n"; + #print "bnum=$bnum\n"; my $padding; if ( $bnum =~ /^(0+)/ ) { $padding = length($bnum); } - print "pad=$padding\n"; + #print "pad=$padding\n"; my $enum; if ( $end =~ /$pre(\d+)/ ) { $enum = $1; } else { carp "Cannot find end of range in $end (prefix $pre)"; } - print "enum=$enum\n"; + #print "enum=$enum\n"; my @nums; for ( $bnum .. $enum ) { push @nums, sprintf("%0*d", $padding, $_); @@ -390,17 +391,16 @@ if ( $file =~ /^(\/.*?):(\d.*)$/ ) { $file = $1; $range = $2; + print "Getting $range from $file\n"; } - print "Getting $range from $file\n"; if ( ! -r "$file" ) { - return undef; + carp "File $file doesn't exist"; } else { open( NRFILE, "<$file" ) or carp "Couldn't open $file: $!"; my @nrs = <NRFILE>; foreach my $nr (@nrs) { chomp $nr; - $nr =~ /(\S*?)/; - $nr = $1; + $nr =~ /^(\S*?)/; } close NRFILE; my @ranges; @@ -409,27 +409,28 @@ my $beg = $1 - 1; my $end = $1; if ( $2 ) { - if ( $3 ) { - $end = $3 - 1; - } else { - $end = $#nrs; - } + if ( $3 ) { + $end = $3 - 1; + } else { + $end = $#nrs; + } } foreach my $line ( $beg .. $end ) { - push( @ranges, $nrs[$line] ); + push( @ranges, $nrs[$line] ); } } else { @ranges = @nrs; } my @retranges; + foreach my $range (@ranges) { if ( $range !~ /^#/ && $range ne '' ) { - push( @retranges, $range ); + push( @retranges, $range ); } } - print "Returning @retranges\n"; + #print "Returning @retranges\n"; return @retranges; } } @@ -626,6 +627,53 @@ $pinger->close(); return @reachable; } + +sub phm { + unless ( scalar(@_) > 1 ) { + return undef; + } + my $function = shift; + my @nodes = noderange(@_); + if ( ! scalar(@nodes) ) { + return undef; + } + + my %funcs = ( 'power' => 0, + 'reset' => 1, + 'cad' => 2, + 'vitals' => 3, + 'inv' => 4, + 'cons' => 5, + 'bioscons' => 6, + 'eventlogs' => 7, + 'getmacs' => 8, + 'netboot' => 9, + 'eth0' => 10, + 'gcons' => 11, + 'sb' => 12, + 'beacon' => 13, + 'bootseq' => 14, + 'serialbps' => 15, + ); + + unless( defined($funcs{$function}) ) { + return undef; + } + + my %hmtab = openXcat::Config::getconfigfile($TABS{'NODEHM'}); + + my %nodemethod; + + foreach my $node (@nodes) { + if ( ! defined($hmtab{$node}) ) { + $nodemethod{$node} = 'NA'; + } else { + $nodemethod{$node} = (@{$hmtab{$node}})[$funcs{$function}]; + } + } + + return \%nodemethod; +} 1; @@ -752,6 +800,11 @@ Returns two references to hashes, one with node keys, one with group keys +=item C<phm> + +Pass in a function name and a noderange, it returns an array with the method +by which that node supports that function (e.g. node1 uses ipmi for power) + =back =head1 SEE ALSO |
|
From: Jason B. <br...@us...> - 2004-11-30 19:30:56
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10132 Modified Files: .cvsignore Log Message: Simplify cvsignore Index: .cvsignore =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/.cvsignore,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- .cvsignore 16 Nov 2004 19:00:11 -0000 1.9 +++ .cvsignore 30 Nov 2004 19:30:47 -0000 1.10 @@ -1,14 +1 @@ -addattr~ -delattr~ -hexip~ -osver~ -iphex~ -genpasswd~ -genrhosts~ -pbsusernodes~ -pbsjobnodes~ -psh~ -pping~ -nrcmd~ -nr~ -lsgroup~ +*~ |
|
From: Jason B. <br...@us...> - 2004-11-16 22:04:24
|
Update of /cvsroot/openxcat/openxcat/sbin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15342 Removed Files: noderangetest Log Message: No need for it now that nr and lsgroup are around --- noderangetest DELETED --- |
|
From: Jason B. <br...@us...> - 2004-11-16 21:29:10
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7285 Modified Files: psh Log Message: Make fork even faster by using exec instead of backticks Index: psh =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/psh,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- psh 16 Nov 2004 20:53:03 -0000 1.9 +++ psh 16 Nov 2004 21:29:00 -0000 1.10 @@ -196,12 +196,14 @@ print "$node$interface: noping\n"; exit; } - my @results = split("\n", `$RSHC $flags $node$interface "$command" 2>&1 | sed "s/^/$node: /"`); - @results = grep { $_ !~ /.Xauthority$/ } @results; - if ( scalar(@results) ) { - print join("\n", @results); - print "\n"; - } + my @results; + exec("$RSHC $flags $node$interface '$command' 2>&1 | sed 's/^/$node: /'"); + #my @results = split("\n", `$RSHC $flags $node$interface "$command" 2>&1 | sed "s/^/$node: /"`); + #@results = grep { $_ !~ /.Xauthority$/ } @results; + #if ( scalar(@results) ) { + # print join("\n", @results); + # print "\n"; + #} exit; } @@ -314,6 +316,7 @@ --serial Run command serially in order --interface <if> Use interface --fork Use forking instead of threads + noderange may be 'me' to specify all the nodes running your pbs job(s). You may also specify a PBS job ID to run on the nodes assigned to that job ID. |
|
From: Jason B. <br...@us...> - 2004-11-16 21:06:34
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2167 Modified Files: genpasswd genrhosts hexip iphex nrcmd osver pbsjobnodes pbsusernodes Log Message: Add POD documentation Index: genrhosts =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/genrhosts,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- genrhosts 8 Nov 2004 20:40:04 -0000 1.1 +++ genrhosts 16 Nov 2004 21:06:19 -0000 1.2 @@ -6,20 +6,6 @@ # # $Id$ -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - use strict; use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -102,3 +88,40 @@ exit; } +=head1 NAME + +genrhosts - Generate rhosts file for a noderange + +=head1 SYNOPSIS + + genrhosts noderange (username) + +=head1 DESCRIPTION + +The genrhosts utility will generate an rhosts file for a given noderange. If +a user is specified (and it is run by root), then the file can be generated +for a given user. + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Index: osver =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/osver,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- osver 5 Nov 2004 17:53:25 -0000 1.1 +++ osver 16 Nov 2004 21:06:19 -0000 1.2 @@ -5,20 +5,6 @@ # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id$ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -38,3 +24,39 @@ exit; } +=head1 NAME + +osver - Get OS version + +=head1 SYNOPSIS + + osver + +=head1 DESCRIPTION + +The osver utility will return a string specifying the OS version of the current +machine. + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Index: nrcmd =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/nrcmd,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- nrcmd 16 Nov 2004 17:28:44 -0000 1.1 +++ nrcmd 16 Nov 2004 21:06:19 -0000 1.2 @@ -92,15 +92,15 @@ =head1 SYNOPSIS - nr (-l) noderange + nrcmd noderange NODEcommand Options: --help Display this helpful information --verbose Print more information NODEcommand should be a command with the word NODE where each - node in the node range should be substituted, - + node in the node range should be substituted. + noderange may be 'me' to specify all the nodes running your pbs job(s). You may also specify a PBS job ID to run on the nodes assigned to that job ID. Index: iphex =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/iphex,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- iphex 5 Nov 2004 17:53:25 -0000 1.1 +++ iphex 16 Nov 2004 21:06:19 -0000 1.2 @@ -5,20 +5,6 @@ # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id$ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -43,3 +29,38 @@ exit; } +=head1 NAME + +hexip - Convert hex IP to dotted decimal + +=head1 SYNOPSIS + + iphex (ip) + +=head1 DESCRIPTION + +The iphex utility will convert a dotted decimal IP to a packed hexadecimal IP. + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Index: hexip =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/hexip,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- hexip 5 Nov 2004 17:53:25 -0000 1.1 +++ hexip 16 Nov 2004 21:06:19 -0000 1.2 @@ -5,20 +5,6 @@ # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id$ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -44,3 +30,38 @@ exit; } +=head1 NAME + +hexip - Convert hex IP to dotted decimal + +=head1 SYNOPSIS + + hexip (hexip) + +=head1 DESCRIPTION + +The hexip utility will convert a packed hexadecimal IP to a dotted decimal. + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Index: pbsjobnodes =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/pbsjobnodes,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- pbsjobnodes 10 Nov 2004 22:22:32 -0000 1.2 +++ pbsjobnodes 16 Nov 2004 21:06:19 -0000 1.3 @@ -6,20 +6,6 @@ # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id$ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -40,3 +26,39 @@ exit; } +=head1 NAME + +pbsjobnodes - Get nodes assigned to a PBS job ID + +=head1 SYNOPSIS + + pbsjobnodes jobID + +=head1 DESCRIPTION + +The pbsjobnodes utility will return a list of the nodes assigned to a given +PBS job ID. + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Index: pbsusernodes =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/pbsusernodes,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- pbsusernodes 10 Nov 2004 22:22:32 -0000 1.2 +++ pbsusernodes 16 Nov 2004 21:06:19 -0000 1.3 @@ -6,20 +6,6 @@ # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id$ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -40,3 +26,39 @@ exit; } +=head1 NAME + +pbsusernodes - Get nodes assigned to a PBS job ID + +=head1 SYNOPSIS + + pbsusernodes jobID + +=head1 DESCRIPTION + +The pbsusernodes utility will return a list of the nodes assigned to a given +PBS user. + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Index: genpasswd =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/genpasswd,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- genpasswd 5 Nov 2004 21:55:57 -0000 1.1 +++ genpasswd 16 Nov 2004 21:06:10 -0000 1.2 @@ -5,20 +5,6 @@ # Copyright 2004 The Board of Trustees of the University of Illinois. # # $Id$ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA use FindBin qw($Bin); use lib "$Bin/../lib"; @@ -38,3 +24,39 @@ exit; } +=head1 NAME + +genpasswd - Generate random password + +=head1 SYNOPSIS + + genpasswd (length) + +=head1 DESCRIPTION + +The genpasswd utility will generate a random password of a given length +(default: 8 characters). + +=head1 REVISION + +Revision $Revision$ + +=head1 AUTHOR + +Jason Brechin <br...@nc...> + +=head1 COPYRIGHT + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
From: Jason B. <br...@us...> - 2004-11-16 20:53:15
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31179 Modified Files: psh Log Message: Add forking option for psh... speed increases dramatically on multiprocessor machines Index: psh =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/psh,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- psh 16 Nov 2004 19:22:15 -0000 1.8 +++ psh 16 Nov 2004 20:53:03 -0000 1.9 @@ -21,10 +21,12 @@ my $node; my $maxjobs; +my $forkjobs = 500; my $serial = 0; my $interface; my $flags; my $p = 1; +my $fork = 0; $SIG{INT} = \&killed; $SIG{HUP} = \&killed; @@ -102,25 +104,59 @@ } } } else { - my $jobs = 0; - foreach ( @nodes ) { $nodequeue->enqueue( $_ ); } - if ( scalar(@nodes) > $maxjobs ) { - foreach ( 1..$maxjobs) { - $nodequeue->enqueue(undef); - push( @comthreads, threads->new(\&commandthread) ); + foreach ( @nodes ) { + $nodequeue->enqueue( undef ); + } + my $jobs = 0; + if ( $fork ) { + my @children; + my $pid; + $maxjobs = $forkjobs; + my $jobs = 0; + if ( scalar(@nodes) < $maxjobs ) { + $maxjobs = scalar(@nodes); + } + + #print "Forking up to $maxjobs times for " . scalar(@nodes) . " nodes\n"; + + my $nc = scalar(@nodes); + while ( my $tnode = pop(@nodes) ) { + if ( $jobs >= $maxjobs ) { + my $donepid = wait(); + @children = grep { $_ != $donepid } @children; + $jobs--; + } + if ( $pid = fork ) { + $jobs++; + push(@children, $pid); + } else { + croak "Can't fork: $!" unless defined $pid; + commandfork($tnode); + exit; + } } + foreach my $child (@children) { + waitpid($child, 0); + } + exit; } else { - my $thr = int(scalar(@nodes) / 4) || 1; - foreach ( 1 .. $thr ) { - push( @comthreads, threads->new(\&commandthread) ); - $nodequeue->enqueue(undef); + if ( scalar(@nodes) > $maxjobs ) { + foreach ( 1..$maxjobs) { + push( @comthreads, threads->new(\&commandthread) ); + } + } else { + my $thr = int(scalar(@nodes) / 4) || 1; + foreach ( 1 .. $thr ) { + push( @comthreads, threads->new(\&commandthread) ); + $nodequeue->enqueue(undef); + } + } + while ( my $thread = pop(@comthreads) ) { + $thread->join; } - } - while ( my $thread = pop(@comthreads) ) { - $thread->join; } } } @@ -154,6 +190,21 @@ } } +sub commandfork { + my $node = shift; + if ( $p && ! ping($node) ) { + print "$node$interface: noping\n"; + exit; + } + my @results = split("\n", `$RSHC $flags $node$interface "$command" 2>&1 | sed "s/^/$node: /"`); + @results = grep { $_ !~ /.Xauthority$/ } @results; + if ( scalar(@results) ) { + print join("\n", @results); + print "\n"; + } + exit; +} + sub interactive { my @nodes; if ( $p ) { @@ -224,9 +275,10 @@ print "$0 - Parallel Shell\n"; print version; print "Usage: $0 (-s) (-i interface) noderange command\n"; - print "--help Display this helpful information\n"; - print "--serial Run command serially in order\n"; - print "--interface <if> Use interface\n"; + print "--help Display this helpful information\n"; + print "--serial Run command serially in order\n"; + print "--interface <if> Use interface\n"; + print "--fork Use forking instead of threads\n"; print "\n"; print "noderange may be 'me' to specify all the nodes running your pbs\n"; print "job(s). You may also specify a PBS job ID to run on the nodes assigned\n"; @@ -239,11 +291,12 @@ Getopt::Long::Configure ("permute", "auto_abbrev", "pass_through"); GetOptions( - 'serial!' => \$serial, - 'interface=s' => sub { $interface = "-$_"; }, - 'ping!' => \$p, - 'help|?' => sub { usage(); }, - 'version' => sub { version; }, + 'serial!' => \$serial, + 'interface=s' => sub { $interface = "-$_"; }, + 'ping!' => \$p, + 'fork!' => \$fork, + 'help|?' => sub { usage(); }, + 'version' => sub { version; }, ); no Getopt::Long; } @@ -259,8 +312,8 @@ Options: --help Display this helpful information --serial Run command serially in order - --interface <if> Use interface\n"; - + --interface <if> Use interface + --fork Use forking instead of threads noderange may be 'me' to specify all the nodes running your pbs job(s). You may also specify a PBS job ID to run on the nodes assigned to that job ID. |
|
From: Jason B. <br...@us...> - 2004-11-16 19:22:25
|
Update of /cvsroot/openxcat/openxcat/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6678 Modified Files: psh Log Message: Useful error if you use one arg that isn't a valid noderange Index: psh =================================================================== RCS file: /cvsroot/openxcat/openxcat/bin/psh,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- psh 16 Nov 2004 17:29:18 -0000 1.7 +++ psh 16 Nov 2004 19:22:15 -0000 1.8 @@ -161,6 +161,10 @@ } else { @nodes = noderange($noderange); } + if ( ! scalar(@nodes) ) { + croak "No nodes available in range $noderange"; + } + print "Executing on: @nodes \n"; use Cwd; my $cwd = cwd(); @@ -191,6 +195,9 @@ } else { @nodes = noderange($noderange); } + if ( ! scalar(@nodes) ) { + croak "No nodes available in range $noderange"; + } print "Executing on: @nodes\n"; } if ( $command =~ /^cd (.*)$/ ) { |
|
From: Jason B. <br...@us...> - 2004-11-16 19:02:16
|
Update of /cvsroot/openxcat/openxcat/lib/openXcat In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1586 Modified Files: Base.pm Log Message: Add more POD docs Index: Base.pm =================================================================== RCS file: /cvsroot/openxcat/openxcat/lib/openXcat/Base.pm,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- Base.pm 16 Nov 2004 17:30:35 -0000 1.23 +++ Base.pm 16 Nov 2004 19:02:05 -0000 1.24 @@ -45,6 +45,7 @@ pbsusernodes pbsjobnodes ping + nodehash ); my $D = 0; @@ -506,12 +507,6 @@ return $password; } - -# interface2ip - returns the ip addr, broadcast, and netmask of an interface -# -# This function was originally written by Sean Dague, distributed as -# part of OSCAR in OSCAR::Network under the GPL license. - sub interface2ip { my $ipregex = '\d+\.\d+\.\d+\.\d+'; my $interface = shift; @@ -643,18 +638,122 @@ =head1 SYNOPSIS use openXcat::Base; - yadda - yadda - yadda - -=head1 ABSTRACT - -This is the openXcat::Base abstract =head1 DESCRIPTION This module provides variables and functions that many oXc programs may need. +=head2 Variables + +=over 8 + +=item C<$RSHC> + +Contains path to remote shell command, usually C</usr/bin/ssh> + +=item C<$ROOT> + +Contains path to openXcat root, usually C</opt/openxcat> or something similar + +=item C<$ARCH> + +Contains architecture, as obtained from uname + +=item C<%TABS> + +Hash containing the locations of the .tab files. To access the information, +you reference them as follows: + +C<my $nodelistloc = $TABS{'NODELIST'};> + +=item C<%sitetabconf> + +Hash containing values in site.tab. Useful for gathering various pieces of +information using L<getvalue|"getvalue"> + +=item C<@uname> + +Array of values returned from uname. See L<uname> for more information. + +=item C<$hostname> + +Contains name of current host. + +=back + +=head2 Methods + +=over 8 + +=item C<singlenodeeg> + +Gives a single example node + +=item C<version> + +Returns the openXcat version + +=item C<osver> + +Returns the OS version as a string + +=item C<interface2ip> + +Gives the IP for a given interface. It returns the ip addr, broadcast, and netmask of an interface. + +This function was originally written by Sean Dague, distributed as +part of OSCAR in OSCAR::Network under the GPL license. + +=item C<host2ip> + +Resolves a hostname to an IP + +=item C<getinterfaces> + +Finds all network interfaces + +=item C<noderange> + +Resolves a given noderange, returns an array of node names + +=item C<iptohex> + +Transforms a dotted decimal IP to a packed hexadecimal + +=item C<hextoip> + +Transforms a packed hexadecimal IP to dotted decimal + +=item C<intersection> + +Really a sort of C<uniq> function, gets rid of duplicate entries + +=item C<genpasswd> + +Generates a random password of any length (default: 8) + +=item C<getvalue> + +Useful in getting values from L<%sitetabconf|"%sitetabconf"> or other hashes + +=item C<pbsusernodes> + +Returns all nodes assigned to a particular user in PBS + +=item C<pbsjobnodes> + +Returns all nodes assigned to a particular job ID in PBS + +=item C<ping> + +Pings a list of nodes + +=item C<nodehash> + +Returns two references to hashes, one with node keys, one with group keys + +=back + =head1 SEE ALSO See http://www.sourceforge.net/projects/openxcat for more information |