Arbeiten in Linux mit der Shell Part 2

Februar 20th, 2011 No Comments   Posted in Unix/Linux

Wie bereits im ersten Teil gelernt können wir manpages lesen, schauen wo wir uns in der Shell befinden, anzeigen lassen was in einem Verzeichnis ist und Verzeichnisse wechseln. Im zweiten Teil werden wir lernen wie man Verzeichnisse erstellt, Dateien kopiert und verschiebt / umbenennt.

Verzeichnisse mithilfe der Shell erstellen:

Als erstes wechseln wir in das Verzeichnis in dem wir den Ordner erstellen wollen mit “cd” und danach tippen wir ganz banal “mkdir [Ordnername]” (make directory) ein. Dann können wir in das Verzeichnis wechseln und eine Datei mit “vi” erstellen. Um ein Verzeichnis zu löschen können wir “rmdir [Verzeichnis]” eingeben.

Files kopieren in der Shell:

Wollen wir z.B. eine Datei an zwei Orten haben oder als Backup können wir den Befehl “cp” benutzen.

Hier ein Anwendungsbeispiel:

andy@ubuntu:~$ pwd
/home/andy
andy@ubuntu:~$ mkdir backup
andy@ubuntu:~$ ls
backup  Desktop    Downloads         Musik       Videos
Bilder  Dokumente  examples.desktop  Öffentlich  Vorlagen
andy@ubuntu:~$ vi testfile
andy@ubuntu:~$ cp testfile backup/
andy@ubuntu:~$ ls backup/
testfile
andy@ubuntu:~$ ls
backup  Desktop    Downloads         Musik       testfile  Vorlagen
Bilder  Dokumente  examples.desktop  Öffentlich  Videos
andy@ubuntu:~$

Files in der Shell verschieben und umbenennen:

So dann müssen wir nur noch Datein in der Shell verschieben und umbennen. Dazu gibt es den Befehl “mv” (move). Wenn wir “mv [/Pfad/Dateiname] [/neuer/Pfad]” (wenn wir uns nicht im selben Verzeichnis befinden muss man den Pfad mit angeben). Wenn wir die Datei gleich mit umbennen wollen geben wir bei dem neuen Pfad gleich am Ende den Namen mit an also: “mv [/Pfad/Dateiname] [/neuer/Pfad/neuerDateiname]“. Um eine Datei nun umzubenennen in der Shell nehmen wir beim “mv” Befehl einfach den selben Pfad wo sich die Datei schon befindet “mv /Pfad/Dateiname /Pfad/neuerDateiname“.

Arbeiten mit dem Shell Befehl vi unter Linux

Februar 20th, 2011 No Comments   Posted in Unix/Linux

Und gleich der nächste Artikel über den Befehl “vi”. Dies ist ein mächtiges Werkzeug wenn es um Editoren in der Shell geht. Man kann damit so schnell Texteformatieren, suchen und schreiben wenn man damit eine weile arbeitet.

Grundlagen Shell Befehl vi:

Als erstes eine kleine Liste mit grundsätzlichen Dingen die man wissen muss. Dazu rufen wir zuerst in der Shell den Editor auf und geben gleich einen Dateinamen an mit “vi [Dateiname]“.

Speichern & Schließen:
:q vi beenden
:q! vi beenden, nicht gespeicherte Änderungen gehen verloren
:w Datei speichern
:w! Speichern der Datei erzwingen
:wq (oder) ZZ Datei speichern und vi beenden
<Strg> + z Shell starten; vi wird in Hintergrund geschoben; Rückkehr durch Eingabe von “fg”
Navigation:
G an das Ende des Dokuments springen
1G in die erste Zeile des Dokuments springen
0 (null) an den Anfang der Zeile springen
^ an den Anfang der Zeile springen
$ an das Ende der Zeile springen
b an den Anfang des letzten Wortes springen
w an den Anfang des nächsten Wortes springen
e an das Ende des nächsten Wortes springen
h ein Zeichen nach links
j ein Zeile nach unten
k eine Zeile nach oben
l ein Zeichen nach rechts
<Strg> + u nach oben blättern
<Strg> + d nach unten blättern
L in die letzte Zeile der Bildschirmausgabe springen
Löschen:
x Zeichen unter Cursor-Position löschen
r Zeichen unter Cursor-Position ersetzen
s Zeichen unter Cursor-Position ersetzen und in den Bearbeitungsmodus wechseln
dd aktuelle Zeile ausschneiden (in Zwischenablage kopieren & löschen)
[ZAHL]dd die nächsten [ZAHL] Zeilen ausschneiden
C Zeile ab aktueller Cursor-Position löschen
V Zeile markieren
v Zeichen markieren
d markierte Textstellen löschen
cw aktuelles Wort ersetzen
dw aktuelles Wort löschen (incl. angehängtem Leerzeichen)
de aktuelles Wort löschen (über Zeile hinaus)
dl Zeichen unter Cursor-Position löschen
dj zwei Zeilen löschen (Cursor-Position ist 1. Zeile)
dk zwei Zeilen löschen (Cursor-Position ist 2. Zeile)
:5,10d Zeilen 5 bis 10 löschen
:.,$d alle Zeilen löschen (“.” = Anfang der Datei, “$” = Ende der Datei)
Einfügen:
p Zwischenablage nach aktueller Zeile einfügen
P Zwischenablage vor aktueller Zeile einfügen
R Text ab Cursor-Position überschreiben
J aktuelle Zeile an das Ende der vorhergehenden Zeile anhängen
o eine Zeile nach der aktuellen einfügen und in den Bearbeitungsmodus wechseln
O eine Zeile vor der aktuellen einfügen und in den Bearbeitungsmodus wechseln
a ein Leerzeichen einfügen und in den Bearbeitungsmodus wechseln
A zum Ende der Zeile springen und in den Bearbeitungsmodus wechseln
i in den Bearbeitungsmodus wechseln
I an den Anfang der Zeile springen und in den Bearbeitungsmodus wechseln
Suchen & Ersetzen:
/Linux nach “Linux” suchen
/ letzte Suche wiederholen
n letzte Suche wiederholen
:s/Suchen_nach/Ersetzen_durch/ in aktueller Zeile suchen & ersetzen
:1,7s/Suchen_nach/Ersetzen_durch/ in Zeile 1 bis 7 suchen & ersetzen
:%s/Suchen_nach/Ersetzen_durch/ in allen Zeilen suchen & ersetzen
Sonstiges:
u UNDO der letzten Befehle
U alle Änderungen der aktuellen Zeile rückgängig machen

Quelle: Hier

Die Befehle muss man sich antürlich nicht sofort merken aber solch eine Liste benötigt man wenn man schnell etwas tun will.

Arbeiten mit dem Shell Befehl vi:

Am besten schreibt man einfach einen Text in der Shell und probiert die Befehle ein wenig aus. Die Erfahrung damit kommt dann nach einer Weile und man kann das ganze im Schlaf.

Arbeiten in Linux mit der Shell Part 1

Februar 20th, 2011 No Comments   Posted in Unix/Linux

Hier werde ich euch zeigen wie man sich relativ einfach in der Shell von Linux fortbewegen kann. Als erstes solltet ihr eine Shell aufrufen und euch daran gewöhnen das ihr keine grafische Oberfläche (GUI) mehr haben werdet. Dies ist nur zum Anfang etwas ungewohnt und später braucht man die GUI auch gar nicht mehr.

Fangen wir aber an uns mit der Shell zu bewegen:

Als erstes müssen wir ja wissen wo wir uns befinden und dazu geben wir “pwd” ein und bestätigen mit “Enter”. Nun müsste etwas kommen wie “/home/[Benuthername]” ([Benutzername] steht für euren Benutzernamen den ihr bei der Installation angegeben habt). Gut somit wissen wir schonmal wo wir uns befinden und haben unseren ersten Shell Befehl gelernt.

Nun werden wir wir lernen wie wir Verzeichnisse wechseln. Dafür gibt es den Befehl “cd” (change directory). Wenn wir nun “cd ..” eingeben und danach ein “pwd” werden wir sehen das wir ein Verzeichnis höher gesprungen sind (“/home”). Wollen wir wieder in unser home Verzeichnis geben wir “cd [Benutzername]” ein. Wir können in der Shell auch den kompletten Pfad angeben wie z.B. “cd /home/[Benutzername]” und somit wären wir dann auch in unserem Benutzerverzeichnis.

Verzeichnisse in der Shell anzeigen:

Da wir nun wissen wie wir uns in der Shell fortbewegen können müssen wir jetzt lernen wie wir uns auch etwas anzeigen lassen können. Dafür gibt es den Befehl “ls” (listing).

Wenn wir in unserem home Verzeichnis ein “ls” ausführen erhalten wir soetwas:

benutzer@ubuntu:~$ ls
Bilder   Dokumente  examples.desktop          Musik       Videos
Desktop  Downloads  Öffentlich  Vorlagen

Somit können wir sehen was sich in dem Verzeichnis in dem wir uns befinden aufhält. Mit einem “ll” bekommen wir noch mehr Informationen:

andy@ubuntu:~$ ll
insgesamt 160
drwxr-xr-x 26 andy andy 4096 2011-02-20 05:59 ./
drwxr-xr-x  3 root root 4096 2010-10-15 14:29 ../
-rw——-  1 andy andy  475 2010-11-14 08:56 .bash_history
-rw-r–r–  1 andy andy  220 2010-10-15 14:29 .bash_logout
-rw-r–r–  1 andy andy 3353 2010-10-15 14:29 .bashrc
drwxr-xr-x  2 andy andy 4096 2010-10-15 15:05 Bilder/
drwx——  5 andy andy 4096 2011-02-20 05:59 .cache/
drwxr-xr-x  8 andy andy 4096 2010-10-15 15:24 .config/
drwx——  3 andy andy 4096 2010-10-15 14:36 .dbus/
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:36 Desktop/
-rw-r–r–  1 andy andy   41 2011-02-20 05:59 .dmrc
drwxr-xr-x  4 andy andy 4096 2010-10-15 15:24 Dokumente/
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:36 Downloads/
-rw——-  1 andy andy   16 2010-10-15 14:36 .esd_auth
-rw-r–r–  1 andy andy  179 2010-10-15 14:29 examples.desktop
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:36 .fontconfig/
drwx——  4 andy andy 4096 2011-02-20 05:59 .gconf/
drwx——  2 andy andy 4096 2011-02-20 06:07 .gconfd/
-rw-r—–  1 andy andy    0 2010-10-15 15:16 .gksu.lock
drwx——  7 andy andy 4096 2010-10-15 15:14 .gnome2/
drwx——  2 andy andy 4096 2010-10-15 14:38 .gnome2_private/
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:57 .gstreamer-0.10/
-rw-r–r–  1 andy andy  130 2011-02-20 05:59 .gtk-bookmarks
dr-x——  2 andy andy    0 2011-02-20 05:59 .gvfs/
-rw——-  1 andy andy 3184 2011-02-20 05:59 .ICEauthority
drwxr-xr-x  3 andy andy 4096 2010-10-15 14:36 .local/
drwx——  4 andy andy 4096 2010-10-15 15:26 .mozilla/
drwxr-xr-x  2 andy andy 4096 2010-10-15 15:05 Musik/
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:36 .nautilus/
drwxr-xr-x  2 andy andy 4096 2010-10-15 15:05 Öffentlich/
-rw-r–r–  1 andy andy  730 2010-10-15 14:39 .profile
drwx——  2 andy andy 4096 2011-02-20 05:59 .pulse/
-rw——-  1 andy andy  256 2010-10-15 14:36 .pulse-cookie
-rw——-  1 andy andy 1657 2010-11-14 08:56 .recently-used.xbel
-rw-r–r–  1 andy andy    0 2010-10-15 15:05 .sudo_as_admin_successful
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:36 Videos/
drwxr-xr-x  2 andy andy 4096 2010-10-15 15:05 Vorlagen/
drwxr-xr-x  2 andy andy 4096 2010-10-15 14:39 .xinput.d/
-rw——-  1 andy andy 3346 2011-02-20 06:00 .xsession-errors
-rw——-  1 andy andy 8553 2010-11-14 08:56 .xsession-errors.old

Manuals mit der Shell lesen:

Am besten schaut man sich auch mal die manpage zu “ls” an. Dies macht man mit “man ls“. Da findet man auch Optionen die man mit dranhägen kann um auch versteckte Dateien zu sehen. Verlassen kann man die manpage in dem man “:q” eingibt. Die Manuals sind auch ein wichtiger Punkt wenn man mit der Shell arbeitet da man dort meistens alles nachlesen kann was man zu einem Befehl wissen muss.

linux shell beispiel

linux shell beispiel

So das war es dann mit dem Anfang der Shell und zum zweiten Part geht es HIER. Ich werde damnächst auch Tutorials zu “vi” und fortgeschrittener Shell Benutzung herausbingen.

Konfiguration BGP

Februar 11th, 2011 No Comments   Posted in Cisco, IOS

Was ist BGP?

BGP ist ein Routing-Protokoll was von ISPs (Internet Service Providern) verwendet wird und von allen großen Firmen die mehrere Anbindungen an das Netz haben. BGP wird verwendet weil es ein sehr stabiles Protokoll ist welches einem auch viele einstell Möglichkeiten offenbart.

Unterscheiden müssen wir zwischen externem BGP und internem BGP.

Beim internen BGP haben die Teilnehmer die selbe AS (autonomous system) Nummer. Dies ist eine erkennung welche wie die IP-Adressen von der IANA vergeben werden. Diese kann momentan maximal 16 Bit (65.000 irgendwas) lang sein aber wird auf 32 Bit erhöt. “Autonomous” kann man auch mit “independet” -unabhängig in diesem Fall gleichsetzen.

Externes BGP konfigurieren:

Wir gehen wieder davon aus das Interfaces IP Adressen haben…

en
conf t
router bgp 100
neighbor 192.168.12.2 remote-as 200
neighbor 192.168.13.3 remote-as 200
network 192.168.12.0 mask 255.255.255.0

Die Aufmerksamen unter euch werden sicherlich gemerkt haben das gleich zwei “neighbor” (Nachbarn) konfiguriert wurden. Das bedeutet also wir haben 3 Router. Auf dem wir gerade sind da haben wir die AS-Nummer 100 vergeben und danach zwei Nachbarn eingefügt die die AS-Nummer 200 haben. Nun haben wir noch konfiguriert was verteilt werden soll. Ziemlich einfach oder? Jetzt kommen wir aber zum internen BGP…

Internes BGP konfigurieren:

Hierzu muss noch gesagt werden das die Konfiguration auf zwei Routern durchgeführt wird auf denen jeweils ein Loopback-Interface konfiguriert wurde (in meinem Fall mit der IP 192.168.100.2 und 4. Oktett mit .3). Wieso das so gemacht wird ist ganz einfach. Aber dazu komme ich später vorher muss ich noch etwas anderes erklären. Als erstes benötigen wir nämlich noch auf den beiden Routern die “intern” sind (im sinne von internem BGP) OSPF. Also konfigurieren wir schnell noch OSPF und fügen jeweils die Loopback Adresse ein das diese verteilt werden soll. ABER NUR AN DEN ANDEREN ROUTER DER DIE SELBE AS-NUMMER HAT!!! Da das nur ein Testlab ist aber wir auch an die realität denken müssen ergibt sich der Sinn dahinter. Wir können nicht davon ausgehen das alle Verbindungen immer vorhanden sind und wenn wir mehrere Router haben und dort läuft OSPF welches auf die Loopback-Interfaces zeigt gehen wir sicher das kein Ausfall auftritt. So nun aber weiter mit BGP.

en
conf t
router bgp 200
neighbor 192.168.100.2 update-source loopback 0
neighbor 192.168.100.2  next-hop-self

Hier ist der Anfang genauso. Wir sagen das die AS-Nummer 200 ist und definieren unseren ersten Nachbarn dabei nehmen wir die Loopback-Adresse welche wir mit OSPF verteilt haben und definieren dies auch gleich. Die letzte Zeile bedeutet das wir dem Nachbarn sagen das der Hop den er sehen würde von dem externen BGP (falls wir das schon konfiguriert hätten) wir sind. BGP ist so konstruiert das es einfach immer alles weiter gibt wie es ist und nur immer die AS-Nummern aktualisiert. Bedeutet also das der Next-Hop angezeigt wird als ob es der erste Router wäre.

Im nächsten Artikel werde ich euch zeigen wie man BGP manipulieren kann.

OSPF Routen manipulieren

Februar 11th, 2011 No Comments   Posted in Cisco, IOS

Bei OSPF kann man auch wie bei anderen Routing-Protokollen alles einwenig “tunen” um z.B. Load-Balancing hinzubekommen. Wie das bei OSPF geht zeige ich euch jetzt…

Wir gehen davon aus das du einen funktionierenden Aufbau von OSPF hast. Wenn dies nicht der Fall ist schaust du dir am besten den Artikel den Artikel für die Konfiguration von OSPFv2 an oder für OSPFv3. Sollte es der Fall sein das ihr ein Funktionierendes OSPF habt dann wechselt in das Konfigurationsmenü von einem Interface.

Dort gebt ihr dann folgendes ein:

ip ospf cost 5

Wobei die 5 varriert. Um so höher der Wert ist umso geringer die Wahrscheinlichkeit das diese Route genommen wird.

Diese Veränderung kann in einem Netzwerk mit mehreren Routern große Veränderungen hervorrufen, also bedenkt wirklich genau welches Kosten ihr welchem Interface gebt.

Das wär es mit der Routen manipulation mit OSPF gewesen.

Troubleshooting OSPF

Februar 8th, 2011 No Comments   Posted in CCNA, Cisco, IOS, Networking

Troubleshooting oder Fehlerbehebung ist auch ein Thema vom CCNA und damit sollte jeder vertraut sein um mögliche Problemquellen die einen lange aufhalten können zu umgehen.

Die wichtigsten Befehle im Überblick:

sh ip ospf

sh ip ospf int

sh ip ospf int brief

sh ip prot

sh ip ospf database

sh ip ospf neighbor

Wenn ein Router eine Route mal nicht hat sollte man diese Befehle ausprobieren wenn man sich schon sicher ist das es NICHT am Interface liegt. Damit kann man sehen ob man den benachbarten Router sieht welchen Typen vom LSA (Link-State Advertisment) diese haben, welche Area auf welchem Interface mit welchen Kosten ist und ob diese dort Kommunizieren können.

Desweiteren sind auch die “debug” Kommandos sehr gut geeignet um Fehler ausfindig zu machen.

debug ip ospf hello

debug is ospf events

Bei diesen Befehlen kann man entweder nur sehen ob ein Fehler beim Hello schon passiert (ungleiches Hello/Dead Intervall) oder man bekommt alle “events” in die Kommandozeile vom IOS.

OSPFv2 und OSPFv3 Areas

Februar 8th, 2011 No Comments   Posted in CCNA, Cisco

Dies ist nur eine temporäre Bekanntmachung um euch wissen zu lassen das ich gerade an dem Artikel und an den anderen OSPF Artikeln schreibe. Mir ist aufgefallen das ich die Theorie zu schlampig erklärt habe und diese werde ich genauer ausführen. Desweiteren habe ich in den letzten Tagen viel mit den Areas rumgespielt und da gibt es so viele Möglichkeiten wie man etwas realisieren kann, dass das ganze schon wieder Unfug ist weil ich in den Testlabs Dinge ausprobiert habe wo sich jeder beim Netzwerkdesign die Haare ausrupfen würde.

Ihr könnt aufjedenfall gespannt sein was noch kommt!

Bisherige Erfahrungen zum CCNA

Februar 8th, 2011 No Comments   Posted in CCNA, Cisco

Ja ich habe mir gedacht das ich meine Erfahrung die ich bisher beim CCNA gemacht habe teilen will. Dazu muss ich sagen das der CCNA Teil meiner Ausbildung ist und wir grad mal mit Modul 1 fertig sind… Naja nichts destotrotz muss ich mich ja auch darauf vorbereiten und vielleicht hilft es ja dem einen oder anderen wie ich das ganze mache.

Also wir bearbeiten die Chapter online auf der Cisco Seite so wie viele andere denke ich mal auch. Dort muss ich sagen muss man sich Zeit für nehmen. Man kann so ein Chapter nicht einfach in 2 Stunden lesen denn für den CCNA muss man vieles wieder wissen. Deswegen nehme ich mir für ein Chapter schön viel Zeit, kläre alle Begriffe für mich die ich nicht verstanden habe und mache danach sofort den Chapter Test um zu sehen ob ich auch alles so weit verstanden habe. Da ich bald meinen ersten Final schreibe lese ich grad auch in den Büchern von Cisco. Also sozusagen das ganze doppelt aber doch anders ;) . Dabei verstehe kommt einiges nochmal hoch und es sind auch mehrere Dinge anders erklärt was länger im Gedächtnis dann bleibt.

Ich kann also nur jedem empfehlen sich die Bücher für den CCNA zu kaufen und die Chapter / Chaptertests auch alle zu machen und sich dafür die Zeit zu nehmen.


Tags: ,

ACL Wildcardmask berechnen

Februar 8th, 2011 No Comments   Posted in Cisco, IOS

Das ist ein spannendes Thema… naja oder auch nicht, aufjedenfall ist es für mich zum Anfang sehr schwierig gewesen das ganze zu verstehen.

Im gleichem Atemzug möchte ich auch auf einen Blog aufmerksam machen durch den ich sehr viel lernen konnte und auch immer noch lerne. http://blog.ine.com/2008/09/16/binary-math-part-i-answers/

Dort wird auch das berechnen der Wildcardmask erklärt…

Extended Access-Control List

Februar 8th, 2011 No Comments   Posted in Cisco, IOS