Difference between revisions of "TDC BB-TEL efterår 2009"
m (→Emner i ugen) |
m (added Category:Perl using HotCat) |
||
(16 intermediate revisions by 2 users not shown) | |||
Line 68: | Line 68: | ||
echo "Det er maaned: ${MONTHS[$MD]}" | echo "Det er maaned: ${MONTHS[$MD]}" | ||
</source> | </source> | ||
− | + | ||
− | |||
− | |||
− | |||
== Links til UNIX == | == Links til UNIX == | ||
Line 147: | Line 144: | ||
*Frokost alle dage kl 12:15 | *Frokost alle dage kl 12:15 | ||
== Emner i ugen == | == Emner i ugen == | ||
+ | === Materialer === | ||
+ | *[[media:Introduktion til SNMP.pdf|Introduktion til SNMP]] | ||
+ | *[[media:MIB filer.pdf|MIB filer]] | ||
+ | |||
=== Opgaver === | === Opgaver === | ||
− | *[[Perl check program oplæg Check program]] | + | *[[Perl check program oplæg |Check program]] |
+ | ==== Nagios på CentOS 5.2 ==== | ||
+ | |||
+ | = Install rpmforge-release = | ||
+ | Get newest [http://packages.sw.be/rpmforge-release/ rpmforge-release for your release] | ||
+ | <source lang="cli"> | ||
+ | [root@fog1 ~]# <input>cd /tmp</input> | ||
+ | [root@fog1 tmp]# <input>wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm</input> | ||
+ | [root@fog1 tmp]# <input>rpm -i rpmforge-release-0.3.6-1.el5.rf.i386.rpm</input> | ||
+ | [root@fog1 tmp]# <input>rpm -qi rpmforge-release</input> | ||
+ | Description : | ||
+ | RPMforge.net release file. This package contains apt, yum and smart | ||
+ | configuration for the RPMforge RPM Repository, as well as the public | ||
+ | GPG keys used to sign them. | ||
+ | </source> | ||
+ | |||
+ | *[http://wiki.centos.org/HowTos/Nagios#head-40b5407234af158bb3663ff160c797a4b60ad02f Nagios på CentOS] | ||
+ | |||
+ | === Links til eksempler === | ||
+ | *[[Perl module chkIPadr]] | ||
+ | *[[Net::SNMP eksempel]] | ||
+ | *[[Net::SNMP vis interface med request get]] | ||
+ | *[[Net::SNMP eksempel get_bulk_request]] | ||
+ | *[[Nagios check_weather]] | ||
+ | *[[Perl TK eksempel]] | ||
+ | |||
=== Teknologier === | === Teknologier === | ||
*SNMP | *SNMP | ||
Line 157: | Line 183: | ||
*SNMP opsamling af OID | *SNMP opsamling af OID | ||
*Ericsson telnet | *Ericsson telnet | ||
− | * | + | *[[TR-069]] afløser for SNMP DSL modemmer |
+ | |||
=== Software === | === Software === | ||
*GetIF http://mars.tekkom.dk/sw/getif-2.3.1.zip | *GetIF http://mars.tekkom.dk/sw/getif-2.3.1.zip | ||
+ | {{Source cli}} | ||
[[Category:OLC]] | [[Category:OLC]] | ||
+ | [[Category:Perl]] |
Latest revision as of 11:09, 30 May 2012
UGE 35 - 2009 UNIX
BBtel
Få fat i maskinen udefra
I putty skriv mars.tekkom.dk i hostname
Kursustider
- Tirsdag 09:15 - 15:25
- Onsdag og torsdag: 08:15 - 15:25
- Frokost alle dage 12:00
Fjernundervisning
- Tirsdag den 1. september kl. 09:00 (Varighed cirka 2 timer)
- Tirsdag den 15. september kl. 09:00 (Varighed cirka 2 timer)
Putty
Opgaver i klassen
Valgfrie opgaver
Notater
Sende mail
At sende emails er nemt i UNIX
[root@mars ~]#<input>echo "Buh" | mail -s "Vigtig" heth@mercantec.dk</input>
At sende mange mail er også nemt
LIST="bent ole hans@hudj.dk kurt@smurt.dk"
for i in $LIST
do
echo "Buy stuff for free" | mail -s "Important" $i
done
Ping og /dev/null
I eksemplet nedenunder sendes 1 pingpakke (-c 1) til IP adressen 192.168.22.22 og der ventes maksimalt 1 sekund på svaret (-t 1). STDOUT fra ping er omdirigeret til /dev/null som er skraldespanden. STDERR er omdirigeret til samme sted som STDOUT altså /dev/null
if ping -t 1 -c 1 192.168.22.22 > /dev/null 2>&1
then echo "OK"
else echo "Fejl"
fi
Ting der har drillet
Kommandoen date +%m returner månedsnummeret feks 08 for august. imidlertidigt var tallet markeret som tekst og vi kunne ikke bruge det ved beregninger. Derfor skal tallet konverteres til Integer(heltal) og sortere det foranstillede 0 væk.
Perl løsning
En one-liner perl kan løse problemet
#!/usr/bin/bash
MONTHS=(Januar Februar Marts April Maj juni Juli August September Oktober November December)
let MD=`date +%m | perl -ne '/0?(.*)/;print $1'`-1
echo "Det er maaned: ${MONTHS[$MD]}"
sed løsning
En one liner sed (Serial Editor). En editor næsten som vi, bare beregnet til at bruge i scripts.
#!/usr/bin/bash
MONTHS=(Januar Februar Marts April Maj juni Juli August September Oktober November December)
let MD=`date +%m | sed 's/0*//'`-1
echo "Det er maaned: ${MONTHS[$MD]}"
Links til UNIX
- Grundlæggende UNIX kommandoer
- bash kommandofortolker
- Mit første bash shellscript
- vi editor oversigt skema
- software
- En masse gode Linuxbøger på dansk
- FreeBSD's hjemmeside og FreeBSD håndbogen (Engelsk PDF)
- FreeBSD WIKI
- Linux distributionen CentOS
- Bash examples
- The WEB server is down
Virtualisering
- Download Sun VirtualBox (Anbefalet for begyndere)
- WMware Server
Distributioner
- CentOS 5.3 Server installation (Anbefalet for begýndere)
- Se artiklen Sun VirtualBox installation af CentOS
- Ubuntu Linux download klient installation (Anbefalet for begýndere)
- FreeBSD 7.2 Download (FreeBSD er sværere at installere end Ubuntu]
UGE 40 - 2009 Perl
- Undervisningen er blandt andet baseret på bogen Learning perl, og det er netop formålet med kurset - at lære Perl. Bogen udleveres på kurset. Eksemplerne under kurset vil dreje sig om netværk og netværksovervågning.
- Udvikling på UNIX og Windows. På Windows anvendes ActivePerl med Perl Express som IDE.
- Hent ActivePerl her.
- Hent Perl Express her
Kursustider
- Tirsdag den 29. september kl 09:15 - 15:25
- Onsdag den 30. september kl 08:15 - 15:25
- Torsdag den 1. oktober kl 08:15 - 15:25
Fjernundervisning
- Tirsdag den 6. oktober kl 09:00 - 11:00 (Uge 41)
- Fredag den 23. oktober kl 09:00 - 11:00 (Uge 43)
Links
- Opkobling til Cisco udstyr med Telnet med modulet Net::Telnet::Cisco
PI program
#!/usr/bin/perl
######################
# Program name: pi
#
# Abstract....: Beregen PI med en million udregninger
# Anvender formlen: pi/4 = 1 - 1/3 + 1/5 - 1/7 + 1/9....
#
# Auther......: Henrik Thomsen/Mercantec
# Email.......: heth@mercantec.dk
######################
use strict;
use warnings;
my $pi4=1;
for (my $count=3; $count < 2*1000_000+3; $count+=4) {
$pi4=$pi4-1/$count;
$pi4=$pi4+1/($count+2);
}
print "PI = ",$pi4*4;
Løsninger på Perlprogrammer
UGE 46 - Network Management
- Projektorienteret kursus hvor målet er at opnå erfaring med programmering af automatiseret netværksovervågning. Kurset er blandt andet baseret blandt andet på bogen Essential SNMP som udleveres.
- Mandag den 9. november kl 09:15 - 15:25
- Tirsdag den 10. november kl 08:15 - 15:25
- Onsdag den 11. november kl 08:15 - 15:25
- Torsdag den 12. november kl 08:15 - 15:25
- Fredag den 13. november kl 08:15 - 12:00
- Frokost alle dage kl 12:15
Emner i ugen
Materialer
Opgaver
Nagios på CentOS 5.2
Install rpmforge-release
Get newest rpmforge-release for your release
[root@fog1 ~]# <input>cd /tmp</input>
[root@fog1 tmp]# <input>wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm</input>
[root@fog1 tmp]# <input>rpm -i rpmforge-release-0.3.6-1.el5.rf.i386.rpm</input>
[root@fog1 tmp]# <input>rpm -qi rpmforge-release</input>
Description :
RPMforge.net release file. This package contains apt, yum and smart
configuration for the RPMforge RPM Repository, as well as the public
GPG keys used to sign them.
Links til eksempler
- Perl module chkIPadr
- Net::SNMP eksempel
- Net::SNMP vis interface med request get
- Net::SNMP eksempel get_bulk_request
- Nagios check_weather
- Perl TK eksempel
Teknologier
- SNMP
- RMON
- NetFlow
- Nagios teori opsætning http://mars.tekkom.dk/nagios/index.html
- Perl plugins
- SNMP opsamling af OID
- Ericsson telnet
- TR-069 afløser for SNMP DSL modemmer