Linux: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Zur Verwendung des OrgaMon im Netzwerk, (also mit mehreren Arbeitsplätzen) sollte ein Linux-Server mit OpenSuSE eingesetzt werden.  
Zur Verwendung des OrgaMon im Netzwerk, (also mit mehreren Arbeitsplätzen) sollte ein Linux-Server mit OpenSuSE eingesetzt werden.  


* OpenSuSE Download: http://download.opensuse.org/distribution/
* openSUSE Download: http://download.opensuse.org/distribution/
* OpenSuSE Factory-News: http://de.opensuse.org/Factory/Neuigkeiten
* openSUSE Factory-News: http://de.opensuse.org/Factory/Neuigkeiten
* openSUSE Fahrplan: http://en.opensuse.org/Roadmap


Diese Dokumentation beschreibt viele Apsekte dieses mächtigen Serverbestriebssystems im Zusammenspiel mit dem OrgaMon. Der Server stellt dann Dateiablage-Platz (via Samba) und einen Datenbankserver-Dienst (via Firebird) zur Verfügung, des weiteren sorgt er sich um eine zuverlässige, dauerhafte InterNet-Verbindung und Namensauflösung. Der Linux-Server betreibt den WebShop und sorgt für die korrekte Zeit im ganzen Netz.<br>
Diese Dokumentation beschreibt viele Apsekte dieses mächtigen Serverbestriebssystems im Zusammenspiel mit dem OrgaMon. Der Server stellt dann Dateiablage-Platz (via Samba) und einen Datenbankserver-Dienst (via Firebird) zur Verfügung, des weiteren sorgt er sich um eine zuverlässige, dauerhafte InterNet-Verbindung und Namensauflösung. Der Linux-Server betreibt den WebShop und sorgt für die korrekte Zeit im ganzen Netz.<br>

Version vom 22. Juni 2009, 08:41 Uhr

Zur Verwendung des OrgaMon im Netzwerk, (also mit mehreren Arbeitsplätzen) sollte ein Linux-Server mit OpenSuSE eingesetzt werden.

Diese Dokumentation beschreibt viele Apsekte dieses mächtigen Serverbestriebssystems im Zusammenspiel mit dem OrgaMon. Der Server stellt dann Dateiablage-Platz (via Samba) und einen Datenbankserver-Dienst (via Firebird) zur Verfügung, des weiteren sorgt er sich um eine zuverlässige, dauerhafte InterNet-Verbindung und Namensauflösung. Der Linux-Server betreibt den WebShop und sorgt für die korrekte Zeit im ganzen Netz.

Der Umgang mit einem Linux System

(bash) die wichtigsten Befehle

Die wichtigsten Linux Dienstleister:

(ntp) immer genaue Uhrzeit
(lm_sensors) Hardware überwachen
(named) Namensauflösung
(Samba) Festplatte im Netz mit samba
(USB) Festplatte via usb anbinden
(DHCP) Boot- Installations- DHCP- Server
(iptables) Router für alle
(PPPoE) über ein (A)DSL-Modem ins Internet
(tc) Alle Bandbreiten sind gleich, einige sind gleicher
(snort) Wissen was so läuft
(secure remote shell) In einen entfernten Server einloggen
Das Log aus verschiedenen Quellen befüllen
(firebird) - Datenbank
(php) - Scriptsprache
(ruby) - Scriptsprache
(AJax) - Betriebssystem für Browseranwendungen


Linux besondere Leistungen:

(rsync) als Backuplösung
(xinetd) Port Redirector
(postfix) Mailserver
(vsftp) FTP Server
(mysql) - Datenbank
(Wiki) Server Installation
(WOL) Wake On LAN(tm)


Erster (Kalt-)Start

Rechner an, gleich ins System-Bios gehen, dazu <Entf> drücken wenn die "Drives"-Erkennung läuft. Im BIOS nun

->Advanced?!->Boot Device 0->

von "HDD-0" auf "CDROM" umstellen, damit der Rechner von der DVD bootet. (das geht bei jedem BIOS anders)

  ->Suse 7.3 DVD rein
   (oder 8.0, sorry dann alles bissel anders: aber besser!!)
  ->Save and exit
  ...Rechner bootet neu, und macht den ersten (Warm-)Start

Suse DVD bootet ...

"Manual Installation" bestätigen. Bei den Softwarepaketen, bitte folgendes ändern:

"+Server", "+Entwicklung", "+erfahrener Benutzer". 
System->System->Boot->SPLASH->no

das OS nur in den Textmodus (Console) booten lassen. Und den grafischen Login-Schirm unterdrücken

a)

 joe /etc/inittab 
 aus
 id:5:initdefault
 macht man
 id:3:initdefault

b) in den Bootoptionen soll er einfach im Textmodus bleiben:

vga=normal splash=0


Mist: jetzt steht er zwar im Text Login aber per VNC kann man sich nicht mehr einloggen. Ich muss erst mit "init 5" in den Run-Level 5 wechseln. Warum?

Festplatte einrichten

   Also wir machen 3 Partitionen:
   "boot"  kleine Mini-Partition: damit das booten immer klappt (ext2 oder ext3-Dateisystem)

   "swap"  mittlere Partition: da werden RAM Speicherbereiche rausgeschrieben,
           um Platz zu machen für wichtigere Daten.
           Größe= RAM * 2 oder mehr, aber immer größer als das RAM!
   "linux" eigentlicher Betriebssystem Bereich und Anwender und
           Benutzerbereich
   Bei "Festplatte vor ..."
   den
   [X] Benutzerdefiniert wählen!
   3 Partitionen anlegen:
   0..2      Linux native  (ext2 oder ext3)       mounting-point "/boot"
   3..84     Linux swap    -----        ----------------------
   85..5004  Linux native  (!reiserfs!) mounting-point "/"

2. Platte mal noch offen lassen

"Standard mit Office" installieren

  "Benutzername usw." (sorry weis nicht mehr genau wann das kommt).
  Rechnername: linus
  pwd für root (=Administrator im win32 Dialekt) erst mal auch so eingeben
  pwd: linus
  "Monitor Ändern"
  EIZO-F56 aber beachten dass die vorgeschlagene Wiederholfrequenz
  herunterkorrigiert wird. etwa 70 Hz-72 Hz, was der jeweilige Monitor
  verträgt.
  "Hardware konfigurieren" wählen!
  ->Netzwerk,
    erste Netzwerkkarte
    100 MBit-Karte: KarteIP fest, zb. 192.168.100.72, Maske so ok
    "Rechnername und Nameserver" wählen!
     ->name:    linus
     ->domäne:  pcworld
       NameServer: 194.25.2.132 (T-online)
    zweite Netzwerkkarte
    10 MBit-Karte: KarteIP fest, zb. 192.168.99.72, Maske so ok
                                     (anderes logisches Netzwerk!)
    "Rechnername und Nameserver" diesmal nicht notwendig!
  ->ISDN
    Euro-ISDN,Deutsch,t-online usw.
    Zugangsdaten f? flat bereithalten
  ->Sound
    normales Setup->meist auf 100% Lautstärke anpassen, da wir sonst
    später nix mehr hören.

vor dem ersten Start(Logout,beenden,neustarten)

  ins bios gehen (Taste <Entf>), Bootlaufwerk
  von "CDROM" auf "HDD-0" umstellen! Damit der Rechner niemals versehentlich
  von CD-bootet.
  immer als root einloggen

Pakete nachinstallieren

  (als (Benutzernamen=)root eingelogged?!)
  [suse->]system->configuration->yast 2->Software deinstallieren/installieren
                                         (Software install/remove)
  ->ev. Pakete "suchen" knopf, names des Paketes angeben
    doppelklick auf das paket
  X samba	serie: n
  X netatalk	serie: n
  X vnc	serie: xap
  Folgende Pakete müssen deinstalliert werden:
  7.3
  ===

  D Personal-Firewall
  D SuSE-Firewall
  D ipchains

T-DSL, leider muss geschraubt werden.

Bei einer festen IP von T-Com (leider nur im Business Tarif der t-com möglich) muss der Zugangsname von Hand verändert werden:

 joe /etc/sysconfig/network/providers/tonline-dsl-business

 USERNAME='feste-ip/78HSJHJ736AL@t-online-com.de'


(nicht mehr ab SuSE 9.0)

  Details auf http://sdb.suse.de/en/sdb/html/cg_pmtu2.html.

a) editiere folgende Datei, (hier z.B. mit KWrite)

    kwrite /etc/ppp/options

suche und setze die beiden werte wie angegeben, Ist diese Option durch ein "#" auskommentiert, den "#" weglöschen und dadurch die Option aktiv machen.

    mtu 1492
    mru 1492

b) editiere folgende Datei, (hier z.B. mit KWrite)

   kwrite /etc/ppp/peers/pppoe

suche und setze die beiden werte wie angegeben, Ist diese Option durch ein "#" auskommentiert, den "#" weglöschen und dadurch die Option aktiv machen.

    mtu 1492
    mru 1492

Netzwerk Verbindung prüfen

Ein erfolgreicher PING ist Grundlage aller weiteren Forschungen bei Netzwerkproblemen.

  auf einem win32 Rechner jetzt den Linux Server anpingen (per IP, nicht den )
  mehr Details siehe 22)
  ping 192.168.115.90

Steht die Verbindung, so stellt sich die Frage der Zuverlässigkeit und Geschwindigkeit. Ruhige Momente im Netzwerk sollten genutzt werden, um mit "iperf" die Up/Down Geschwindigkeiten zu ermitteln.

// auf dem Server
iperf -s
// auf dem Client
iperf -c <ServerHostName> -d

Das Programm gibts es hier: http://dast.nlanr.net/projects/Iperf/

Beispielhaft habe ich 2 TDSL Verträge ausgemessen. Man sieht ganz deutlich, dass bei gleichzeitiger Nutzung von up und down Stream die Bandbreite zum Teil dramatisch einbricht. Hier scheint besonders die Leitungsqualität eine Rolle zu spielen.

TDSL 1500 - 84.163.90.168 (raib181)

[ ID]  Interval       Transfer     Bandwidth (einzeln)
[Down]  0.0-10.4 sec  1.80 MBytes  1.45 Mbits/sec (189 Kbits/sec UP)
[ ID]  Interval       Transfer     Bandwidth (zeitgleich)
[Down]  0.0-13.7 sec   392 KBytes   234 Kbits/sec
[ Up]   0.0-13.5 sec   296 KBytes   179 Kbits/sec 

TDSL 2000 - 84.163.236.231 (raib92)

[ ID]  Interval       Transfer     Bandwidth (einzeln)
[Down]  0.0-10.4 sec  2.41 MBytes  1.95 Mbits/sec (379 Kbits/sec UP)
[ ID]  Interval       Transfer     Bandwidth (zeitgleich)
[Down]  0.0-10.6 sec  2.06 MBytes  1.63 Mbits/sec
[ Up]   0.0-11.1 sec   408 KBytes   302 Kbits/sec

Netatalk-konfiguration (zugriff auf einen Linux Share via MAC)

wenn alle MAC - Clients OSX haben, ist dies nicht mehr notwendig. 
Dann sollten auch die MACs wia SMB-Protokoll verbinden.
  (als (Benutzernamen=)root eingelogged?!)
  Adv.Edit (notepad üblich) starten (im "StarT"-Menü autoren->Advanced Editor)
  a) /etc/rc.config:
     START_ATALK="no" auf START_ATALK="yes"
     Eintrag wirksam machen mit SuSEconfig
  b) /etc/atalk/atalkd.conf
     eth0  auf    eth1
     # nur ändern, wennn 100 Mbit-Karte eth1 ist (Network/Basic -> Network card configuration)
  c) /etc/atalk/AppleVolumes.default
     Zeile ganz unten mit nur der Tilde
     ~
     rauslöschen!
     neue Zeile (auch ganz unten)
     /freigabe/mac "user" options:noadouble
  d) terminal fenster starten (muschel)
     cd /freigabe
     mkdir mac
     chmod 0777 -R /mac
     rcatalk start
     -> nach ca. 1 minute müsste "linus" sichtbar sein, ev. als
     linus/linus verbinden!
  e) Diagnose
     nbplkup

Fernwartung einiger Rechner im Netz von aussen via InterNet via VNC

   (beide Systeme (Zielsystem & Remotesystem) müsste eigentlich nur im InterNet
   sein! Der eine z.B. via ISDN, der andere z.B. via DSL, super natürlich: beide via DSL)
   auf jedem Win32-Ziel-Rechner installiert man den VNC-Server:
   (freier download unter www.tightvnc.com) Das myfirewall-Script muss
   für einen Rechner um eine Script-Zeile erweitert werden.
   Es gibt auch einen Viewer(Client) für MAC
   http://sourceforge.net/projects/cotvnc/
   # VNC für Brutus, Displaynummer=0 oder nix angeben
   $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5900 -j DNAT --to 192.168.115.1:5900
   # VNC für Fred, Displaynummer=1
   $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5901 -j DNAT --to 192.168.115.3:5900
   # VNC für Host 8
   $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5902 -j DNAT --to 192.168.115.8:5900
   # usw. ...
   die aktuelle IP (die man "daheim" angeben muss) ermittelt man aus der gepachten IP-
   Adresse im InterNet (Rechter Mausklick auf die HomePage, Quelltext anzeigen, IP-Adresse
   rauskopieren). Beim einloggen gibt man neben der (aktuellen) IP die Displaynummer an, also
   217.217.20.118:1 (für. fred) und das passwort wie immer. ACHTUNG: immer auf beiden
   Seiten 16 bit farben (= High-Color) verwenden! Den Rechner, den man fernwarten will:
   sollte ganz ganz schnell sein (ich meine das ernst), und ne super schnelle 2D Grafikkarte
   haben (z.B. Matrox G450). Der Rechner mit dem man fernwarten will: Der dreht 
   leider eigentlich
   (fast) immer Däumchen, der kann ruhig alt und schwach sein!!! Hier sollte 
   nur eine gute Anbindung ans Internet sichergestellt werden! Hilfreich:
   etwas größere Auflösung wie das Ziel-System, aber
   auch High-Color! Wichtig: Passwörter möglichst >8 Zeichen.
   VNC - Remote Control des Servers mit Hilfe von z.B. einer Windows-Maschine.
   Für geräte, die nicht in den Serverraum laufen müssen, oder kein Geld mehr
   für einen Monitor am Linux-Rechner haben, weil das Betriebssystem so teuer war ;-)
   vnc-paket installieren (mit Yast 2)
   Terminal Session starten
   vncserver eingeben, pwd vergeben
   von irgendeiner anderen Maschine einloggen:
   192.168.115.72:1
   -pwd eingeben
   Es muss ein Terminal-Fenster erscheinen, dort kan man nun
   kde
   eingeben wenn man eine kde-session starten will...
   Suse 7.x
   ========
   Damit der VNC- Server beim booten allein gestartet wird, genügen Eintrag in /etc/rc.d/rc.
   Die Zeile, die ganz unten (Suse 8.0: vor "exit 0") ergänzt werden muss lautet:
                 su -l root -c "vncserver -cc 3 :1 -alwaysshared"
   Suse 8.0
   ========
   Suse 8.1
   ========
   ** Obige Methode läuft nicht mehr unter Suse 8.1.
   Bemerkung: Es war mal bei 8.0 notwendig an einer Maschine, die den vncserver nicht
   mehr allein startet, wieder keyboard und monitor anzuschliesen, um sich "echt"
   (in kde) einzuloggen, danach lief wieder alles super.
   Suse 8.2
   ========
   YaST2 / System / Editor f?c/sysconfig-Dateien / Desktop / Display Manager:
   Die Variable DisplayManager_Remote_Access auf yes setzen.
   Auf der Konsole rcxdm restart eingeben.
   YaST2 / Netzwerkdienste / Netzwerkdienste (inetd) aufmachen und die 4
   Einträge mit "VNC" im Namen aktivieren.
   Andere Computer (auch Windows-Maschinen) können nun über den Browser den
   VNC-Server ansprechen. Dazu benötigt er Java.
   Die URL lautet: http://Vncserver-Rechner:5810.
   Wer auf der Client-Seite nicht im Webbrowser arbeiten will, benutzt den VNCViewer.
   F?se Anwendung lautet nun der angefragte Hostname "Vncserver-Rechner:10"
   oder "Vncserver-Rechner:11", auch wieder mit IP-Adresse des Zielsystems möglich,
   z.B. 192.168.115.93:10.

Eine andere Linux-Maschine will ins Internet

     1) YAST2 ->network ->routing ->Standart-Gateway=IP des Servers
     2) YAST2 ->advanced network ->DNS ->IP des Servers

Kernel Updates

(es soll niemand mehr sagen das sei schwierig!)

   nur für release 7.2 notwendig, (HISTORISCH - NICHT NOTWENDIG AB 7.3):
   Einspielen des Kernels 2.4.7
   Dies ist notwendig, da masquerading irgend einen Bug hat. Auch hat sich das
   einspielen als sehr heilsam für ganze System herausgestellt. (Auch TDSL!)
   downloaden des Kernels (als rpm) von
   ftp.suse.com/pub/suse/i386/update/7.2/kernel/2.4.7/k_deflt-2.4.7-25.i386.rmp
   Terminal-Fenster starten, eingeben
   YaST <ENTER>
   "paketverwaltung (update,install,auf..)"
   Paket einspielen
   Quelle (nun den obigen rpm lokalisieren)
   markieren mit Leertaste, damit installiert wird
   <F10> zum Installieren drücken    YaST beenden, ein cleanup wird durchgeführt   
   
   mk_initrd <ENTER>
   lilo <ENTER>

   -> system neu booten!!!

root passwort verloren

  • baue die Platte aus, oder starte mit knoppix
  • mounte die Platte
  • editiere /etc/shadow und löschen in der Zeile root:xxx:... alles zwischen den ersten beiden Doppelpunkten
  • Platte wieder rein
  • Als root ohne pwd einloggen, danach ein passwort setzen!

keepcon, RouteIP.exe, ein kleiner Einstieg

   Dieses linux / win32 program ermittelt die aktuelle IP Adresse wie unser Server im
   Moment im Internet sichtbar ist, und patched die html-Seiten drausen
   im InterNet, um die aktuelle IP Adresse den surfern draussen unterzujubeln.
   Mehr Infos über routeIP im InterNet www.cargobay.de**
   Mehr Infos ber keepcon im InterNet www.cargobay.de
   ** RouteIP wird langfristig durch keepcon ersetzt.
   keepcon siehe "http://www.cargobay.de/keepcon.html"

USB Devices (Memory, Flash, MP3 Player) unter Linux

Nach reinstecken des SONY Microfault 32 MByte Sticks ging erst mal nix. Ich sah zwar, 
dass die LED des Memory Sticks vertraut blinkte. Doch bekam ich keinen Zugriff. Ich musste
md /root/usb
mount -t vfat /dev/sda /root/usb
eingeben. Sofort waren die Dateien in /root/usb/ sichtbar. Ich speicherte was drauf mit 
"cp". Zog den Stick raus: Wieder eine Enttäuschung: auf dem Win XP war die Datei nicht
sichtbar. Also wurde die Datei nicht wirklich geschrieben (HEUL!)? Also versuchte
ich vor dem Rausziehen beim nächsten mal unzumounten.
umount /dev/sda
(soviel zu Thema hotplug!) OK, das ging dann. Mein Wunsch war, beim Einsetzen des
USB-Sticks das Lied darauf (.mp3) abzuspielen. In meiner Naivität plazierte ich einfach
ein Script Namens /etc/hotplug/usb/usbfs. Es passierte natürlich nichts. grmpf!
In fstab habe ich aber eine Zeile eingetragen, die mir das USB-Device auf den Desktop
gezaubert hat (was mir nix bringt!). Mein Spieltrieb animierte mich durch umount das
device auszuhängen. Das Desktop Symbol blieb - es lies sich auch fehlerfrei anklicken,
was einen Mount verursachte!
Also ein Script via hotplug zu starten wenn der usb reingeteckt wird gebe ich
hiermit auf!


ATX-Netzteile

Das beschriebene Linux-System wird überwiegend als Server benutzt. Es muss
sichergestellt sein, dass nach einem Stromausfall das System selbst wieder
hochfährt.
* In der Regel kann man bei modernen ATX - Boards im BIOS einstellen was
  im "Power Fail" Fall, gemacht werden soll. "Always ON" würde hier die
  richtige Einstellung lauten.
* Bei machen Boards ist diese Einstellung nicht vorhanden (K7SOM) oder
  sie funktioniert nicht (div. Soltek Boards). In diesem Fall ist durch
  einen einfachen Eingriff diese Funktion sichergestellt.
  1) Das ATX-Netzteil besitzt einen breiten Spannungsstecker, der im Main-
     board steckt. Hier ist das !grüne kabel! (von dem es nur eines gibt) ca.
     1 cm oberhalb des Steckers abzuschneiden (1cm deshalb, damit man ggf.
     die alte Funktion wieder herstellen kan).
  2) Von einem unbenutzen Stromstecker ist eines der mittleren schwarzen
     Kabel nahe am Stecker abzuscheiden.
  3) Beide Kabel nun durch alle Kabelbinder hindurch zurückziehen damit sie
     ab dem Netzteilaustritt freiliegen. Nun beide abisolieren, und die
     blanken Ende "verzwirblen". Mit Isolierband die blanke Stelle isolieren
     und das neue Kabelpaar mit den schon vorhandenen Kabelsträngen mit Kabelbinder
     fixieren.
  Effekt: Das ATX-Netzteil startet IMMER in den "Full Power" Modus egal, ob
          dies durch das Board signalisiert wird oder nicht.