Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung...

53
Computational Physics I Laborübung “arXiv, L A T E Xund Konsorten” Bachelor Physik Modul PHY102 Termin Kurs Lehrender Mo 12 15 - 13 45 Anfänger (BP1) Martin Wendt Do 16 15 - 17 45 Fortgeschrittene * (BP2) Helge Todt Fr 12 15 - 13 45 Anfänger/Fortgeschrittene Martin Wendt * Fortgeschrittene: Erfahrungen in einer beliebigen Programmiersprache H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 1 / 53

Transcript of Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung...

Page 1: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Computational Physics I

Laborübung “arXiv, LATEXund Konsorten”Bachelor Physik Modul PHY102

Termin Kurs LehrenderMo 1215 − 1345 Anfänger (BP1) Martin WendtDo 1615 − 1745 Fortgeschrittene∗ (BP2) Helge TodtFr 1215 − 1345 Anfänger/Fortgeschrittene Martin Wendt

∗ Fortgeschrittene: Erfahrungen ineiner beliebigen Programmiersprache

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 1 / 53

Page 2: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Computational Physics II

Betriebssystem und Shell: Unix, Linux

Textsatz mit LATEX

grafische Darstellung mit gnuplot

algebraisches Rechnen und grafische Darstellung mit Mathematica

Programmiersprache: C/C++

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 2 / 53

Page 3: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Computational Physics III

Website:

http://www.astro.physik.uni-potsdam.de/~htodt/cp

Leistungsnachweis:

Kleine Abschlussarbeit (Programmieraufgabe) in einer Präsenzübung

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 3 / 53

Page 4: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Computational Physics IV

Bedeutung der verwendeten Schrifttypen (Fonts)

Darstellung Bedeutung Beispiel

xvzf wörtlich einzugebender man ls(Typewriter) Text (z.B. Befehle)

argument Platzhalter für selbst file meinedatei(kursiv) zu ersetzenden Text

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 4 / 53

Page 5: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Computerpool-Accounts

Nutzer-Accounts

für die Teilnahme am Kurs sehr praktisch: ein eigener Account(Benutzerkonto) für diesen Computerpool

Bitte lassen Sie sich ggf. einen Account von mir einrichtenZuständiger Mitarbeiter: Helge Todt, Raum 2.004

Gast-Account: siehe linkes Whiteboard

Achtung: System unterscheidet zwischen Groß- und Kleinschreibung.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 5 / 53

Page 6: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Sicherheitshinweis

Sobald Sie einen neuen Account erhalten haben:

passwd Ändern des Nutzer-Passworts(Eingabe des Befehls in ein Terminal, Xterm oder in eine Konsole, sieheAbschnitt Linux)

Ändern Sie Ihr NIS-Passwort(!) in ein sicheres Passwort, verwenden Siemindestens 9 Zeichen, bestehend aus:Groß- UND Kleinbuchstaben, aber kein einzelnes WortUND ZahlenUND Sonderzeichen (Achtung! Tastaturlayout beachten!)

z.B. $cPhT-25@comP2 oder tea4Pollen+Ahead

Das von mir vergebene, initiale Passwort verfällt nach 14 Tagen!

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 6 / 53

Page 7: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Computational Physics . . . in der Experimentalphysik

Erfassung/Auswertung von Daten

LHC: ATLAS Experiment c© 2011 CERN

Steuerung von Experimenten

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 7 / 53

Page 8: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

. . . in der Theoretischen Physik

Simulation von physikalischen Prozessen

Millenium Simulation c© 2005 Volker Springel, MPIA

numerische Berechnungen

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 8 / 53

Page 9: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Der Computerlehrpool

Die Rechner:17 NFS 1-gemountete Linux-Computer (openSuSE 42.3/15.0),mehrere Intel Core i7-2600K, i7-4770, i7-7700, i7-8700 (6 Kerne)+ 1 Xeon Gold 6152 (44 Kerne)Homeserver (∼user) im Dauerbetrieb:

bell mahler

weber

Der Raum 0.087:nur für LehrveranstaltungenEssen, Trinken tabu

1Network File SystemH. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 9 / 53

Page 10: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

NFS-Homeverzeichnisse

NFS-Server

↙ ↘

NFS-Client NFS-Client

NFS-Server: stellt (Home-) Verzeichnisse zur Verfügung

NFS-Clients: mounten NFS-(Home-)Verzeichnisse in ihr Wurzelverzeichnis

Da u.U. auch andere Nutzer ihr Home-Verzeichnis auf Ihrem Rechnerhaben (oder Rechnungen darauf laufen lassen):

Schalten Sie die Rechner niemals ab!

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 10 / 53

Page 11: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Exkurs: Client-Server-Modell im Netzwerk

Service (Dienst)Eine bestimmte Funktionalität (Aufgabe), die Rechnern im Netzwerk zur Verfügunggestellt werden soll, z.B. NIS - Network Information Service für User-Accounts, cups fürsDrucken.

ServerI.d.R. ein Programm (unter Unix meist Daemon), das einen Service (z.B. NFS, NIS,SSH) in einem Netzwerk zur Verfügung stellt.Auch: Der Rechner, auf dem das spezifische Server-Programm läuft.

ClientEin Programm (oder auch der entsprechende Rechner), der den Service nutzt. EinServer-Rechner kann gleichzeitig auch ein Client sein (z.B. NFS-Server mahler istNIS-Client).

ProtokollRegeln zur Syntax für den Datenaustausch (zwischen Server und Client), z.B. dasInternet Protocol (IP), IMAP/POP3/SMTP für E-Mails.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 11 / 53

Page 12: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Linux

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 12 / 53

Page 13: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Betriebssystem

Linux ist ein Derivat des Betriebssystems UNIX. Es ist ein Multiuser- undMultitasking - Betriebssystem.

Es wurde 1991 als UNIX für PCs geschrieben, existiert inzwischen für fastalle Plattformen, z.B. als Android oder in WLAN-Routern, und wird ständigweiter entwickelt.

Linux ist . . .frei verfügbar (kostenlos)quelloffen (Programmtext darf auch verändert werden)die Kombination aus einem monolithischen Kernel und überwiegendGNU-Softwaredominant bei Supercomputern (mehr als 90%)

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 13 / 53

Page 14: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Grafische Oberfläche

Wichtige X-Windows-Oberflächen unter Linux: GNOME und KDE,hier: Xfce

Oberfläche kann bei der lokalen Anmeldung ausgewählt werden – ambesten Xfce oder IceWM verwenden (Standard im Pool: Xfce).

Window-Oberfläche (Desktopumgebung) 6= Linux

Desktopumgebung: KDE Xfce GNOME . . .

Linux-Distributionen: Ubuntu (Debian) openSuSE . . .

Xterm: Eingabe von Linux-Befehlen

Aufgabe 1.1

Öffnen Sie ein Xterm oder ein Terminal oder eine Konsole (Menü: System).

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 14 / 53

Page 15: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Surfen im Internet

Als grafischer Browser steht im Computerpool

firefox

zur Verfügung.(lässt sich z.B. durch Eingabe von firefox & in ein Xterm starten)

Desweiteren unter Linux verfügbar: Konqueror (auch im Computerpool),Opera, Google Chrome

Aufgabe 1.2Starten Sie einen Browser. Laden Sie sich diese Präsentation herunter:http://www.astro.physik.uni-potsdam.de/~htodt/cpund starten Sie sie.Legen Sie sich bei der Gelegenheit auch ein Bookmark an.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 15 / 53

Page 16: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

pdf-Dateien betrachten

pdf-Dateien können mit evince (GNOME-Projekt) angezeigt werden.

evince & evince starten

oder

evince datei.pdf & evince starten und Datei laden

Alternativ:okular als Standardanzeigeprogramm des KDE-Projekts

Aus den Anwenderprogrammen okular und evince können pdf-Dateien aufdem Netzwerkdrucker (strauss bzw. mach oder tolan) gedruckt werden.Einfach den Menüpunkt Datei →Drucken (bzw. File →Print) anklicken.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 16 / 53

Page 17: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Shell und Shellbefehle

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 17 / 53

Page 18: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Shell und Shellbefehle I

Unix stellt in Form der Shell (Kommandozeile) ein besonders mächtigesWerkzeug zur Verfügung. In der Shell werden Unix-Befehle ausgeführt.

Unix-Befehlssyntaxbefehl [-option] [argument] <ENTER>

Achtung! Leerzeichen beachten!

Aufgabe 1.3

Öffnen Sie ein Xterm und geben Sie folgendes ein (jeweils mit <ENTER>abschließen):echo halloundecho -n halloWas ist der Unterschied?

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 18 / 53

Page 19: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Shell und Shellbefehle II

Ursprüngliche Unix-Idee: Eine Aufgabe = ein Befehl.

Ein weiteres Beispiel:

Der Befehl cal gibt einen Kalender aus.

Aufgabe 1.4 Argumente von Befehlen1 Rufen Sie cal auf. Was sehen Sie?

2 Was wird ausgegeben, wenn man cal 9 1752 eingibt?

3 Finden Sie heraus, an welchem Wochentag Sie geboren wurden.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 19 / 53

Page 20: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Shell und Shellbefehle III

Die BefehlshistoryMittels ↑ (Pfeiltaste nach oben) können die zuletzt eingegebenen Befehle inder Shell nochmals abgerufen werden.

Eine Liste der letzten Befehle zeigt der Befehl

history

Darüberhinaus kann mittels <TAB> ein Befehl oder ein Dateiname beimEintippen vervollständigt werden:

ec <TAB>wird vervollständigt zu

echo

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 20 / 53

Page 21: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Verzeichnisse

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 21 / 53

Page 22: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Der Verzeichnisbaum

/||-- /home/| || |-- /home/weber/| || |--/home/weber/htodt/|||-- /etc/|||-- /dev/

→ Wurzelverzeichnis

→ Homeverzeichnisse

→ Homes auf weber

→Helges Home

→ sonstige

→Gerätedateien

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 22 / 53

Page 23: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Durch Verzeichnisse navigieren I

pwd zeigt das aktuelle Verzeichnis (absoluter Pfad)z.B. /home/weber/htodt

cd name in das Verzeichnis name wechseln

. steht für das aktuelle Verzeichnis

.. das übergeordnete Verzeichnis, z.B. cd ..

/ das Wurzelverzeichnis

∼ das Homeverzeichnis, z.B. cd ∼ oder auch nur cd

∼user das Homeverzeichnis von user

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 23 / 53

Page 24: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Durch Verzeichnisse navigieren II

mkdir name erzeugt ein Verzeichnis name

rmdir name entfernt das Verzeichnis name

ls zeigt den Inhalt eines Verzeichnisses an

Aufgabe 1.5 Verzeichniswechsel1 Stellen Sie fest, in welchem Verzeichnis Sie sich gerade befinden.2 Wechseln Sie in Ihr Homeverzeichnis (also nicht nur /home/).3 Legen Sie dort ein neues Verzeichnis an, dessen Name Ihrem

Nachnamen entspricht.4 Wechseln Sie in dieses neue Verzeichnis und stellen Sie erneut fest, in

welchem Verzeichnis Sie sich befinden.5 Wechseln Sie zurück in Ihr Homeverzeichnis und löschen Sie das neue

Verzeichnis.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 24 / 53

Page 25: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Durch Verzeichnisse navigieren III

ls zeigt den Inhalt des aktuellen Verzeichnisses

ls -a zeigt auch versteckte Dateien an (beginnen mit .)

ls -l Anzeigen der Dateiattribute, Eigner, Änderungszeit, usw.

Dateiattributedrwxr-xr-x 2 htodt users 4096 14. Oct 13:35 Dokumente

d = directory (Verzeichnis) r = readable (lesbar)w = writeable (beschreibbar) x = executable (ausführbar)htodt = Eigner users = Gruppe4096 = Größe in Byte 14. Oct 13:35 = ÄnderungszeitDokumente = Name der Datei (hier: des Verzeichnisses)

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 25 / 53

Page 26: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Durch Verzeichnisse navigieren IV

man ls Manual Pages (Hilfe zum Befehl ls)

info ls Info Pages (alternative Hilfe zum Befehl ls)

ls −−help Hilfe zu Befehl ls

ls −−help | less bei mehreren Bildschirmseiten

man pages – auch less, more

q quit (verlassen)<SPACE> eine Seite vor b eine Seite zurück/ suchen vorwärts ? suchen rückwärtsn nächste Fundstelle N vorherige Fundstelle> ans Ende springen < an den Anfang springen

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 26 / 53

Page 27: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Durch Verzeichnisse navigieren V

Exkurs: Dateirechte ändernDie Dateiattribute für Schreib-, Lese- und Ausführungsberechtigung könnenmit dem Befehl chmod geändert werden:

chmod -R go-rwx ~/.ssh

entzieht (-) der Gruppe (g) und allen anderen Usern (o) die Zugriffsrechte(readable, writable, executable) für das Verzeichs ~/.ssh und alle Einträgedarin (rekursiv -R).

chmod u+x script.bash

macht die Datei script.bash für den Eigentümer (u) ausführbar(executable).

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 27 / 53

Page 28: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Text mit der Maus kopieren

Linux: Copy by Selection

Text mit der Maus markieren:

linke Maustaste drücken und gedrückt haltenCursor bis zum Ende des zu markierenden Bereichs bewegen→ markierter Bereich wird farblich unterlegt

markierter Text wurde in Zwischenspeicher kopiert

kopierten Text einfügen:

Cursor zur beabsichtigten Position bewegenmittlere Maustaste (ggf. Rad) drücken→ zuvor kopierter Text wurde an der Cursorposition eingefügt

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 28 / 53

Page 29: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei I

Texteditoren

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 29 / 53

Page 30: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei II

vi auf jedem (!) Unix-System verfügbar; textbasiert;etwas umständlich, da zwei verschiedene Modi:

i in den Einfügemodus wechseln (Texteingabe)

<ESC> in den Befehlsmodus wechseln:

:w write (Datei schreiben), im Befehlsmodus

:q! quit (verlassen) ohne Nachfragen, im Befehlsmodus

x ein Zeichen löschen, im Befehlsmodus

dd ganze Zeile löschen, im Befehlsmodus

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 30 / 53

Page 31: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei III

vi datei

Aufgabe 1.6 vi1 Starten Sie den vi und geben Sie dabei als Argument einen

Dateinamen an, z.B. Ihren Vornamen.

2 Wechseln Sie in den Einfügemodus und geben Sie den Text “HalloWelt!” ein.

3 Speichern Sie die Datei und verlassen Sie den vi.

4 Zusatz: Wie können Sie feststellen, ob die soeben erzeugte Dateiexistiert und nicht leer ist (Dateigröße ungleich null)?

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 31 / 53

Page 32: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei IV

emacs auf fast jedem Unix-System verfügbar,

fenster- oder textbasiert (emacs -nw)

<STRG>+ x <STRG>+ c close (verlassen)

<STRG>+ x <STRG>+ s save (schreiben)

<STRG>+ k kill (ausschneiden, ab Cursor bis Zeilenende)

<STRG>+ y yank (einfügen)

<STRG>+ <SPACE> markieren

<STRG>+ w markierten Bereich ausschneiden

<ESC> w markierten Bereich kopieren

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 32 / 53

Page 33: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei V

emacs datei &

Programme im Hintergrund starten:

Das Ampersand-Zeichen & am Ende eines Programmaufrufs bewirkt, dassdas entsprechende Programm im Hintergrund (Background, bg) der Shellausgeführt wird.

Dadurch kann die Eingabezeile der Shell weiter benutzt werden.

Falls vergessen: <STRG>+z gefolgt von bg <ENTER>.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 33 / 53

Page 34: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei VI

emacs datei &

Aufgabe 1.7 emacs1 Öffnen Sie mit dem emacs die zuvor mit dem vi angelegte Datei,

starten Sie dabei den emacs im Hintergrund.

2 Kopieren Sie die erste Textzeile mittels des Kill-Befehls undverdoppeln Sie diese.

3 Speichern Sie das Ergebnis ab und beenden Sie den emacs.

HinweisBeim Starten wird anfangs eine Startseite angezeigt:

→Box anklicken (Never show . . . ); Dismiss this . . . anklicken

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 34 / 53

Page 35: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei VII

kate auf vielen Unix-Systemen verfügbar,

fensterbasiert (KDE)

<STRG>+ c markierten Bereich kopieren

<STRG>+ v kopierten Bereich einfügen

<STRG>+ s speichern

<STRG>+ q Beenden

Edit → Block Selection Mode ermöglicht spaltenweises markieren

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 35 / 53

Page 36: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Schreiben einer Textdatei VIII

kate &

Aufgabe 1.8 kate1 Öffnen Sie ggf. ein Xterm und wechseln Sie in Ihr Homeverzeichnis.2 Erzeugen Sie mittels cal eine Kalenderansicht für den aktuellen Monat

und kopieren Sie diese mittels der Maus in den Zwischenspeicher.3 Starten Sie kate im Hintergrund und fügen Sie die Kalenderansicht

aus der Zwischenablage ein.4 Löschen Sie die Spalte mit den Montagen, indem Sie zuvor die Spalte

markieren.5 Speichern Sie das Ergebnis und beenden Sie kate.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 36 / 53

Page 37: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Dateien

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 37 / 53

Page 38: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Dateien unter Unix

Anmerkung: Unter Linux ist fast alles eine Datei (auch Verzeichnisse undGeräte, siehe z.B. ls -l /dev/ ).

mv Quelle Ziel umbenennen (verschieben) von Dateien

cp Quelle Ziel kopieren von Dateien

rm Dateiname löschen von Dateien

rm -rf Verzeichnis löschen von Verzeichnissen

Aufgabe 1.9 Kopieren und Löschen von DateienKopieren Sie mittels cp die Datei /etc/os-release in IhrHomeverzeichnis und überzeugen Sie sich vom Erfolg der Aktion. Wassteht in der Datei? Löschen Sie abschließend die Datei.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 38 / 53

Page 39: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Dateien und Verzeichnisse verpacken

tar Aktion Archiv Datei wende Aktion auf Archiv an

tar-Aktionen

c erzeuge Archiv (create) aus Datei/Verzeichnisx extrahiere Archivv zeige ausgeführte Aktionen (verbose)z Archiv ist gegzipptt zeige Inhalt von Archivf Archiv ist ein file (default: Bandlaufwerk)

Aufgabe 1.10 tarKopieren sie ∼htodt/muCommander.tar.gz in Ihr Homeverzeichnis undentpacken Sie diese mittels

tar xvzf muCommander.tar.gz

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 39 / 53

Page 40: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Datei-Manager

GNOME: nautilus

KDE: konqueror

Alle Betriebssysteme: muCommander (JAVA-basiert)

Aufgabe 1.11 Datei-Manager1 Starten Sie konqueror, gehen Sie dort in Ihr Homeverzeichnis und

weiter in das Verzeichnis muCommander.2 Starten Sie die Datei mucommander.sh per Klick bzw. Doppelklick.3 Inwiefern unterscheidet sich die Ansicht des muCommander von

konqueror bzw. nautilus?

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 40 / 53

Page 41: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Verbindung mit anderenRechnern

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 41 / 53

Page 42: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern I

hostname

dieser Befehl zeigt an, auf welchem Rechner man geradeeingeloggt ist (Rechnername)

Aufgabe 1.12 Hostnames1 Auf welchem Rechner sind Sie eingeloggt?2 In welcher DNS-Domäne befindet sich der Rechner?

Hinweis: Befragen Sie die Manual Pages zum Befehl hostname.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 42 / 53

Page 43: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern II

Verbindung zu einem anderen Rechner (Remotehost) unter Unix mit dersecure shell, innerhalb der Domäne (also innerhalb desComputerpoolclusters):

ssh rechnername

Nach erfolgreichem Login, sieht man im selben Fenster eine Shell(Kommandozeile/Prompt), die auf dem anderen Rechner läuft.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 43 / 53

Page 44: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern III

Aufgabe 1.13 ssh-Login I1 Loggen Sie sich auf der/dem Rechnerin/Rechner Ihrer/Ihres

Platznachbarin/Platznachbarn ein (fragen Sie sie/ihn nach demNamen ihres/seines Rechners).Sie werden eventuell gefragt, ob Sie fortfahren möchten und danachum die Eingabe Ihres Passworts gebeten.

2 Überzeugen Sie sich vom Erfolg (Mit welchem Befehl?).3 Die Verbindung wird mit dem Befehl exit geschlossen.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 44 / 53

Page 45: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern IV

Umgebung nach dem SSH-Login

Aufgabe 1.14 ssh-Login II1 Loggen Sie sich erneut auf einem anderen Rechner ein.2 Prüfen Sie mittels pwd , in welchem Verzeichnis Sie sich jetzt

befinden.3 Starten Sie das Programm xeyes in der Kommandozeile/Shell. Was

passiert? Versuchen Sie auch evince oder okular in dieser Shell zustarten. Was wird jeweils im Terminal (Shell) angezeigt?

4 Beenden Sie die Verbindung.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 45 / 53

Page 46: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern V

Die SecureSHell

Client-Server-System zum Aufbau einer gesicherten Verbindung(Verschlüsselung), Anmelden beim Remote-Host(entfernter Rechner = SSH-Server)

Falls SSH-Client und SSH-Server X11 unterstützen:

ssh rechnername -X

gestattet dem SSH-Server auf dem SSH-Client grafische Fenster (z.B. fürevince oder kate) zu öffnen

Hinweis:Statt der Option -X ist bei manchen Verbindungen die Option -Ynotwendig (Ausprobieren!).

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 46 / 53

Page 47: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern VI

Aufgabe 1.15 Grafischer ssh-LoginAchtung: Stellen Sie zunächst sicher, dass Sie sich mit Ihrer Shell auf demeigenen Rechner befinden.Loggen Sie sich wieder auf dem entfernten Rechner ein, diesmal aber mitder Option -X und versuchen Sie erneut xeyes zu starten. Das Progammkann mittels der Tastenkombination STRG + C (gleichzeitig drücken)beendet werden. Versuchen Sie auch, evince oder emacs zu starten.

Neben der interaktiven Nutzung der SSH gibt es auch die Möglich lediglicheinen Befehl auf dem Remotehost per ssh auszuführen:

ssh hostname "ls -l"

Die Verbindung wir nach der Ausführung automatisch geschlossen.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 47 / 53

Page 48: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Einloggen auf anderen Computern VII

Einloggen von außerhalb (z.B. von zu Hause):

ssh [email protected]

Für Windows gibt es den kostenlosen SSH-Client PuTTY, derSSH-Verbindungen zu anderen (Unix-) Rechnern aufgebauen kann. MittelsMobaXterm, Xming, X2Go (erfodert auch serverseitige Installation) oderdem Windows Subsystem for Linux (erfordert Installation einerLinux-Distribution) ist auch grafischer SSH-Login möglich.

Hinweise:Der grafische Login erlaubt Ihnen von zu Hause aus z.B. Mathematica aufden Physik-Rechnern zu nutzen.

Im Abschnitt “Shell”, Aufgabe 2.10 lernen Sie den Login ohne Eingabe desPassworts.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 48 / 53

Page 49: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Exkurs: Das Domain Name System (DNS)

Der vollständige Rechnername

born︸︷︷︸Rechner

. stud.physik︸ ︷︷ ︸Subdomain

. uni− potsdam︸ ︷︷ ︸Domain

.de︸︷︷︸Top−Level−Domain

Namensverwaltung:Top-Level-Domain registriert bei der ICANNDomain registriert bei der DENICSubdomain registriert beim ZIM+ Rechnername

= 141.89.178.91 (IP-Adresse)

Domain Name System – NameserviceAuflösung eines Namens in die dazugehörige(n) IP-Adresse(n), z.B.uni-potsdam.de →Weiterleitung der Anfrage an DNS-Server des ZIM(IPs: 141.89.nnn.nnn). Segment für stud: 141.89.178.nnn = 256 Namen

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 49 / 53

Page 50: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Kopieren von Dateien I

Mittels des SSH-Protokolls können auch Dateien zwischen Rechnernübertragen werden:

scp beispiel.txt [email protected]:secure copy zum entfernten Rechner

scp [email protected]:beispiel.txt .secure copy vom entfernten Rechner (Punkt beachten!)

Nach dem Doppelpunkt : folgt die Pfadangabe, absolut oder relativ zumHomeverzeichnis.

Aufgabe 1.161 Kopieren Sie mittels scp die Datei antwort.txt vom Host vivaldi

aus dem Home-Verzeichnis des lokalen Nutzers in Ihr Homeverzeichnis.2 Versuchen Sie auch, das Verzeichnis frage samt Inhalt per scp zu

kopieren. Welche Option wird dafür benötigt?

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 50 / 53

Page 51: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Kopieren von Dateien II

Um nur geänderte Dateien (Vergleich von Quelle und Ziel) zu übertragen:

rsync -avz [email protected]:verzeichnis/ .secure copy vom entfernten Rechner, nur geänderte Dateien

Einige Optionen:-a archive mode: entspricht -rlptgoD ; empfohlen!-r recursive: auch Verzeichnisse-t time: erhalte Zeitstempel der übertragenen Dateien-v verbose: gebe Informationen zum Transfer aus-z zip: komprimiere Datenübertragung-c checksum: verwende Checksumme (anstelle der Zeitstempel)

für Vergleiche

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 51 / 53

Page 52: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Kopieren von Dateien III

Dateien von anderen Rechnern mittels konqueror kopierenDer konqueror erlaubt mittels des Protokolls fish Verzeichnisse aufentfernten Rechner anzuzeigen. Dazu in der Adressleiste z.B.fish://[email protected]

eingeben.

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 52 / 53

Page 53: Computational Physics - Einführunghtodt/cp/cp_linux.pdf · ComputationalPhysics-Einführung HelgeTodt MartinWendt Astrophysik Institut für Physik und Astronomie Universität Potsdam

Prozesse anzeigen und beenden

ps ux zeigt die eigenen Prozesse an

top zeigt die Prozessorauslastung anhtop

kill -9 PID “killt” den Prozess mit der angegebenen Prozess-ID (PID)

Aufgabe 1.171 Öffnen Sie ein neues Xterm mittels des Befehls xterm & .2 Starten Sie top im neuen Xterm.3 Wie kann man bei top erreichen, dass die untätigen (idle) Prozesse

ausgeblendet werden?4 Ermitteln Sie im anderen Fenster die PID dieses top-Prozesses und

beenden Sie diesen dann mit kill .

H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2019/20 53 / 53