Entwicklungsumgebung/Werkzeugkiste: Unterschied zwischen den Versionen

Aus Delixs
Zur Navigation springen Zur Suche springen
(Link)
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
__NOTOC__
__NOTOC__
{{fertig}}
{{EditStatus|1|Schoffer}}  




Zeile 66: Zeile 66:


Siehe auch: [[Entwicklungsumgebung/Dateiliste/update-alternatives]]
Siehe auch: [[Entwicklungsumgebung/Dateiliste/update-alternatives]]
=== Standardeditor auf vim ändern ===
Falls Ihnen mcedit nicht zusagt. können Sie vim statt mc-edit als Standardeditor setzen:
  aptitude install vim
  update-alternatives --set editor /usr/bin/vim.basic




Zeile 74: Zeile 83:
Installieren Sie die wichtigsten Packprogramme mit:
Installieren Sie die wichtigsten Packprogramme mit:


   aptitude install zip unzip bzip2
   aptitude install zip unzip bzip2 bsdtar p7zip p7zip-full
 
'''Anmerkung:''' Das Paket "bsdtar" wurde ausgewählt, weil es im Gegensatz zum einfachen "tar" in der Lage ist, ACLs und auch EAs zu verarbeiten.
 
 
=== UID von nicht-LDAP-Nutzern verschieben ===
 
Damit sich später lokale Nutzer des Servers und Nutzer im LDAP unterscheiden lassen, werden die UID-Bereiche voneinander getrennt:
 
system-UID  100 -  999
LDAP-UID  1000 -  9999
UID      10000 - 29999
 
Dafür verändern Sie in der Datei [[Entwicklungsumgebung/Dateiliste/adduser.conf|/etc/adduser.conf]] folgende Zeilen:
 
<source highlight="1-5" lang="text">
  GROUPHOMES=yes
  FIRST_UID=10000
  FIRST_GID=10000
  USERGROUPS=no
  USERS_GID=1002
</source>
 
Weitere Änderungen in dieser Konfigurationsdatei werden später noch folgen.
 
Jetzt wird noch der während der Grundinstallation angelegte Benutzer "sysadm" gelöscht und mit den veränderten Vorgaben anschließend neu erzeugt.
 
  userdel -r sysadm                (löscht den user "sysadm")
  addgroup --gid 10000 service      (erstellt die neue Gruppe "service" mit GID=10000)
  mkdir /home/service              (erstellt das Verzeichnis für alle Gruppenmitglieder)
  adduser --ingroup service sysadm  (erstellt "sysadm" neu mit den veränderten Vorgaben)
 
Jetzt werden Sie nach dem vollständigen Namen befragt. Geben Sie hier "Systemverwaltung" ein. Als Passwort wird für den Entwicklungsserver "schule" eingetragen. Alle anderen Fragen werden nur mit "ENTER" bestätigt.
 
 
=== Developer-Werkzeuge ===
 
Das Paket "dpkg-dev" liefert die Entwicklungswerkzeuge zum Entpacken, Erstellen und Hochladen von Debian-Quellpaketen.
 
  aptitude install dpkg-dev
 
 
Um eine eigene Installations-CD/DVD erstellen zu können, sind weitere Pakete nötig. Zuerst wird das Paket "subversion" benötigt, damit die Mitarbeit im SVN von delixs erfolgen kann:
 
  aptitude install subversion
 
 
Mit diesem Paket können nun die delixs-spezifischen Pakete bearbeitet werden.
 
Da die Erstellung von CD/DVD-Images nicht als "root" vorgenommen wird, ist ein weiterer Nutzer in das System einzutragen.
 
  adduser --ingroup service devel
 
 
Jetzt werden Sie nach dem vollständigen Namen befragt. Geben Sie hier "CD Erstellung" ein. Als Passwort wird für den Entwicklungsserver "schule" eingetragen. Alle anderen Fragen werden nur mit "ENTER" bestätigt.
 
Mit diesem Befehl haben Sie einen Nutzer mit dem Namen "devel" erstellt. Er erhält aber kein gültiges Passwort, weil er nicht als normaler Nutzer im System arbeiten soll. Setzen Sie also statt des verschlüsselten Passwortes in der Datei "/etc/shadow" in der Zeile "devel" hinter dem ersten Doppelpunkt den Wert "*" ein. Den Rest der Zeile nach dem 2. Doppelpunkt lassen Sie unverändert:
 
  devel:*:....
 
 
Die grundsätzliche Arbeitsweise als Benutzer "root" ist:
 
<pre>
<nowiki>
  # der Nutzer devel muss vorab eingerichtet werden
  su devel
  cd ~
  # fuer den ersten export einmalig
  svn export http://dev.delixs.de/wsvn/delixs/installer
  # fuer weitere Aktualisierungen checkout (kurz: co)
  svn co http://dev.delixs.de/wsvn/delixs/installer
  # zum Hochladen der eigenen Aktualisierungen checkin (kurz: ci)
  svn ci http://dev.delixs.de/wsvn/delixs/installer
  # Sitzung als devel verlassen
  exit
</nowiki>
</pre>
 
Weitere Hinweise zur Arbeit mit SVN finden Sie im Kapitel [[Entwicklerhandbuch/SVN-Anleitung]].
 
Das zweite Paket ist für die reine CD-Erstellung notwendig. Installieren Sie es mittels:
 
  aptitude install simple-cdd
 
Wie Sie mit dem Programm "simple-cdd" arbeiten können, wird in einem gesonderten [[Entwicklerhandbuch/Simple-CDD|Kapitel:simple-cdd]] beschrieben.
 
'''Hinweis:''' Falls Sie nicht selber eine Installations-CD/DVD erstellen wollen, können Sie auf diese beiden Pakete verzichten. Sie werden für den täglichen Betrieb eines Schulservers nicht gebraucht.
 
Das dritte Paket enthält perl, die Perl-Handbuchseiten, die POD-Dokumentation und natürlich das Programm perldoc selbst.
 
  aptitude install perl perl-doc
 
Es wird benötigt, damit die Entwickler Perl-Programme selbst schreiben können. Auch man-pages sind damit sehr einfach zu realisieren.




Zeile 102: Zeile 204:
werden nur Verzeichnisse aufgelistet, die Dateien werden ignoriert.
werden nur Verzeichnisse aufgelistet, die Dateien werden ignoriert.


=== Automatische Generierung von Passwörtern ===
Das Programm pwgen generiert zufällige, aber aussprechbare Passwörter.
  aptitude install pwgen
'''Beispiel:''' Mit folgendem Befehl erzeugen Sie nun Passwörter, die nur aus Kleinbuchstaben bestehen und 5 Zeichen lang sind:
  pwgen -0 -A 5
Ausführliche Information zu allen Optionen erhalten Sie mittels "man pwgen".




Zeile 157: Zeile 272:


'''Hinweis:''' Dienste mittels service neu zu starten ist eine kann-Option. Natürlich ist auch der Aufruf des Initscripts nach wie vor möglich.
'''Hinweis:''' Dienste mittels service neu zu starten ist eine kann-Option. Natürlich ist auch der Aufruf des Initscripts nach wie vor möglich.
=== Weitere wichtige Pakete installieren ===
  aptitude install lsof htop bash-completion less
Damit der service Befehl auch die Dienste vervollständigt:
  echo "source /etc/bash_completion" >> ~/.bashrc
Damit die history Suche über die Pfeil hoch/runter Tasten funktioniert:
  echo '"\e[A": history-search-backward' >> /etc/inputrc
  echo '"\e[B": history-search-forward' >> /etc/inputrc
Danach einmal ab und wieder anmelden.




Zeile 244: Zeile 375:
----
----
<div align="right">[[Installation:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div>
<div align="right">[[Installation:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div>
Uwe Schoffer, Hans-Dietrich Kirmse 2009
[[Kategorie:DebianSqueeze]]

Aktuelle Version vom 28. März 2011, 19:46 Uhr


Diese Seite ist momentan eine Baustelle im Zustand: 1

Wird bearbeitet von: Schoffer
Hilfe zum Bearbeitungsstatus: Hilfe:Status eines Artikels


Nützliche Zusatztools

Webbrowser lynx

Lynx ist ein textbasierter Webbrowser. Er eignet sich vor Allem für den Einsatz an Systemen ohne grafische Oberfläche. Starten Sie die Installation mit


aptitude install lynx

und am Bildschirm sollte folgende Ausgabe erscheinen:


aptitude install lynx
Abbildung: aptitude install lynx


Die Frage, ob die Installation fortgesetzt werden soll, beantworten Sie mit "Y" für Yes.

Nun fehlt noch der Support für verschiedene MIME-Typen. Diesen installieren Sie mittels

aptitude install mime-support


und das war's schon.


Dateimanager mc(midnight commander)

Der mc gilt als gelungener Clone des damaligen Norton Commanders. Alle Admins aus der alten Schule arbeiten erfahrungsgemäß sehr gern damit. Deswegen soll er nun installiert werden

aptitude install mc

Nach der obligatorischen Frage, ob alle für mc notwendigen Pakete installiert werden dürfen, sollte die Installation problemlos verlaufen. Testen Sie zum Abschluß den Erfolg der Installation, indem Sie "mc" starten.


mc(midnight commander)
Abbildung: mc(midnight commander)


Beenden können Sie den mc mit der Taste "F10".

Zusatz: Wenn Sie sich im "mc" durch verschiedene Verzeichnisse bewegen und dann den "mc" verlassen, dann sind Sie auf der Konsole nicht im letzten Verzeichnis des "mc", sondern in dem Verzeichnis aus dem Sie den "mc" aufgerufen hatten. Wenn Sie das abändern wollen, dann fügen Sie in der Datei "/root/.bashrc" folgende Zeile ein.

 alias mc='. /usr/share/mc/bin/mc-wrapper.sh'


Standardeditor auf mcedit ändern

Falls Sie auf "vi" und "vim" schwören und keinen anderen Editor benutzen würden, dann überlesen Sie bitte diesen Menüpunkt. Eine Änderung des Standardeditors kommt also nur für Admins in Frage, die auf den Charme von "vi" gerne verzichten können.

Listen Sie vorab zur Kontrolle alle derzeitig verfügbaren Editoren auf:

 update-alternatives --list editor

Dort ist sollte auch der mcedit aufgeführt sein. Mit dem dort angegebenen Pfad wird er nun mit dem folgenden Befehl als Standardeditor gesetzt:

 update-alternatives --set editor /usr/bin/mcedit-debian


mcedit als Standardeditor
Abbildung: mcedit als Standardeditor

Siehe auch: Entwicklungsumgebung/Dateiliste/update-alternatives


Standardeditor auf vim ändern

Falls Ihnen mcedit nicht zusagt. können Sie vim statt mc-edit als Standardeditor setzen:

 aptitude install vim
 update-alternatives --set editor /usr/bin/vim.basic


Packer und Entpacker

Zum Öffnen von heruntergeladenen Paketen, zum Packen von Paketen für den Versand und für viele andere Aufgaben werden Packer immer benötigt.

Installieren Sie die wichtigsten Packprogramme mit:

 aptitude install zip unzip bzip2 bsdtar p7zip p7zip-full

Anmerkung: Das Paket "bsdtar" wurde ausgewählt, weil es im Gegensatz zum einfachen "tar" in der Lage ist, ACLs und auch EAs zu verarbeiten.


UID von nicht-LDAP-Nutzern verschieben

Damit sich später lokale Nutzer des Servers und Nutzer im LDAP unterscheiden lassen, werden die UID-Bereiche voneinander getrennt:

system-UID  100 -   999
LDAP-UID   1000 -  9999
UID       10000 - 29999

Dafür verändern Sie in der Datei /etc/adduser.conf folgende Zeilen:

<source highlight="1-5" lang="text">

 GROUPHOMES=yes
 FIRST_UID=10000
 FIRST_GID=10000
 USERGROUPS=no
 USERS_GID=1002

</source>

Weitere Änderungen in dieser Konfigurationsdatei werden später noch folgen.

Jetzt wird noch der während der Grundinstallation angelegte Benutzer "sysadm" gelöscht und mit den veränderten Vorgaben anschließend neu erzeugt.

 userdel -r sysadm                 (löscht den user "sysadm")
 addgroup --gid 10000 service      (erstellt die neue Gruppe "service" mit GID=10000)
 mkdir /home/service               (erstellt das Verzeichnis für alle Gruppenmitglieder)
 adduser --ingroup service sysadm  (erstellt "sysadm" neu mit den veränderten Vorgaben)

Jetzt werden Sie nach dem vollständigen Namen befragt. Geben Sie hier "Systemverwaltung" ein. Als Passwort wird für den Entwicklungsserver "schule" eingetragen. Alle anderen Fragen werden nur mit "ENTER" bestätigt.


Developer-Werkzeuge

Das Paket "dpkg-dev" liefert die Entwicklungswerkzeuge zum Entpacken, Erstellen und Hochladen von Debian-Quellpaketen.

  aptitude install dpkg-dev


Um eine eigene Installations-CD/DVD erstellen zu können, sind weitere Pakete nötig. Zuerst wird das Paket "subversion" benötigt, damit die Mitarbeit im SVN von delixs erfolgen kann:

 aptitude install subversion


Mit diesem Paket können nun die delixs-spezifischen Pakete bearbeitet werden.

Da die Erstellung von CD/DVD-Images nicht als "root" vorgenommen wird, ist ein weiterer Nutzer in das System einzutragen.

 adduser --ingroup service devel


Jetzt werden Sie nach dem vollständigen Namen befragt. Geben Sie hier "CD Erstellung" ein. Als Passwort wird für den Entwicklungsserver "schule" eingetragen. Alle anderen Fragen werden nur mit "ENTER" bestätigt.

Mit diesem Befehl haben Sie einen Nutzer mit dem Namen "devel" erstellt. Er erhält aber kein gültiges Passwort, weil er nicht als normaler Nutzer im System arbeiten soll. Setzen Sie also statt des verschlüsselten Passwortes in der Datei "/etc/shadow" in der Zeile "devel" hinter dem ersten Doppelpunkt den Wert "*" ein. Den Rest der Zeile nach dem 2. Doppelpunkt lassen Sie unverändert:

 devel:*:....


Die grundsätzliche Arbeitsweise als Benutzer "root" ist:


  # der Nutzer devel muss vorab eingerichtet werden
  su devel
  cd ~
  # fuer den ersten export einmalig
  svn export http://dev.delixs.de/wsvn/delixs/installer
  # fuer weitere Aktualisierungen checkout (kurz: co)
  svn co http://dev.delixs.de/wsvn/delixs/installer
  # zum Hochladen der eigenen Aktualisierungen checkin (kurz: ci)
  svn ci http://dev.delixs.de/wsvn/delixs/installer
  # Sitzung als devel verlassen
  exit

Weitere Hinweise zur Arbeit mit SVN finden Sie im Kapitel Entwicklerhandbuch/SVN-Anleitung.

Das zweite Paket ist für die reine CD-Erstellung notwendig. Installieren Sie es mittels:

 aptitude install simple-cdd

Wie Sie mit dem Programm "simple-cdd" arbeiten können, wird in einem gesonderten Kapitel:simple-cdd beschrieben.

Hinweis: Falls Sie nicht selber eine Installations-CD/DVD erstellen wollen, können Sie auf diese beiden Pakete verzichten. Sie werden für den täglichen Betrieb eines Schulservers nicht gebraucht.

Das dritte Paket enthält perl, die Perl-Handbuchseiten, die POD-Dokumentation und natürlich das Programm perldoc selbst.

 aptitude install perl perl-doc

Es wird benötigt, damit die Entwickler Perl-Programme selbst schreiben können. Auch man-pages sind damit sehr einfach zu realisieren.


Image Optimierung

Zerofree stellt nicht zugeordnete, aber nicht mit Nullen gefüllte Blöcke in einem ext2-oder ext3-Dateisystem fest und füllt sie mit Nullen. Dies ist nützlich, wenn das Datei-System als Disk-Image weiter gegeben werden soll. Vor der Nutzung von Zerofree muss das Datei-System deaktiviert oder read-only gemountet werden.

 aptitude install zerofree

Die Nutzung von Zerofree wird im Kapitel Entwicklungsumgebung/Bereitgestellte_Virtuelle_Maschine_nutzen beschrieben.


Verzeichnisbaum

Ein sinnvolles Werkzeug zum grafischen Auflisten von Verzeichnisbäumen in der Textkonsole.

 aptitude install tree

Jetzt kann mit dem Befehl

 tree /boot

der gesamte Verzeichnisbaum unterhalb von /boot gelistet werden. Mit dem Befehl

 tree -d /boot

werden nur Verzeichnisse aufgelistet, die Dateien werden ignoriert.


Automatische Generierung von Passwörtern

Das Programm pwgen generiert zufällige, aber aussprechbare Passwörter.

 aptitude install pwgen


Beispiel: Mit folgendem Befehl erzeugen Sie nun Passwörter, die nur aus Kleinbuchstaben bestehen und 5 Zeichen lang sind:

 pwgen -0 -A 5

Ausführliche Information zu allen Optionen erhalten Sie mittels "man pwgen".


Netzwerkkartenmanager ethtool

Mit "ethtool" können Sie problemlos Einstellungen von Netzkarten ermitteln und auch verändern.


 aptitude install ethtool


Beispiel: Folgender Befehl lässt die Netzwerkkarte zur Identifikation 10 mal periodisch blinken:

 ethtool -p eth0 10

So können Sie künftig ganz einfach herausfinden, welche von mehreren Netzwerkkarten zu einem bestimmten Interface (hier eth0) gehört.


Anzeige von NAT-Verbindungen

Das Programm netstat-nat zeigt NAT-Verbindungen an, die von netfilter/iptables verwaltet werden. Es liest seine Informationen aus '/proc/net/ip_conntrack'.


 aptitude install netstat-nat

Dieses kleine Programm wird später vom Nutzermenü benötigt. Eine spezielle Einrichtung ist nicht notwendig.


Debconf-Werkzeuge

Das Paket "debconf-utils" enthält einige Werkzeuge für debconf-Entwickler.

 aptitude install debconf-utils

Weiter ist vorerst nichts mit diesem Paket zu tun. Es wird erst später zur Vorbereitung der CD-Erstellung benötigt.


Werkzeug zur Konfiguration der Initskriptlinks

Das Paket "sysvconfig" ist ein Werkzeug zur Konfiguration der Initskriptlinks, womit Sie Services aktivieren oder deaktivieren und init-Verknüpfungen editieren können sowie alle laufenden Services mit dem jeweiligem Status und einer Beschreibung anzeigen lassen können.

 aptitude install sysvconfig


Ab sofort können Sie

 service apache2 restart

statt dem bisherigen

 /etc/init.d/apache2 restart


benutzen.

Hinweis: Dienste mittels service neu zu starten ist eine kann-Option. Natürlich ist auch der Aufruf des Initscripts nach wie vor möglich.


Weitere wichtige Pakete installieren

 aptitude install lsof htop bash-completion less

Damit der service Befehl auch die Dienste vervollständigt:

 echo "source /etc/bash_completion" >> ~/.bashrc

Damit die history Suche über die Pfeil hoch/runter Tasten funktioniert:

 echo '"\e[A": history-search-backward' >> /etc/inputrc
 echo '"\e[B": history-search-forward' >> /etc/inputrc

Danach einmal ab und wieder anmelden.


sudo

Sudo erlaubt es, normalen Benutzern bestimmte Privilegien zu gewähren. Der Sinn von Sudo ist, möglichst wenige Privilegien zu vergeben, aber dennoch die Durchführung von bestimmten Arbeiten zu ermöglichen. Installieren Sie mittels

 aptitude install sudo-ldap

Die notwendigen Anpassungen in der Datei "/etc/sudoers" werden später im Kapitel Entwicklungsumgebung/Usermenue genau beschrieben.

Weitere allgemeine Anleitungen zur Arbeit mit Sudo finden Sie unter: Entwicklerhandbuch/Sudo


Farbige Ausgabe auf der Kommandozeile

Für "root" kann es ein großer Vorteil sein, wenn auf der Kommandozeile die Dateien und Verzeichnisse farbig angezeigt werden. Die notwendigen Einstellungen können Sie in der Datei "/root/.bashrc" vornehmen.

Vor der Veränderung einer Datei sollte immer eine Sicherheitskopie angelegt werden

 cp /root/.bashrc /root/.bashrc.org

damit eventuell später der originale Zustand wieder hergestellt werden kann.


Kommandozeile ohne Farben
Abbildung: Kommandozeile ohne Farben


Mit dem mc geht das ganz einfach, indem Sie auf die Datei mit dem Auswahlbalken gehen und dann die Taste "F4" drücken.


In den Zeilen 7 bis 11 müssen nun die Kommentarzeichen "#" am Anfang entfernt werden:


 # You may uncomment the following lines if you want `ls' to be colorized:
 export LS_OPTIONS='--color=auto'
 eval "`dircolors`"
 alias ls='ls $LS_OPTIONS'
 alias ll='ls $LS_OPTIONS -l'
 alias l='ls $LS_OPTIONS -lA'
 

Eine weitere mögliche Einstellung ist der farbige Systemprompt für root, den Sie mit folgender Änderung erreichen:


 export PS1='[\[\033[1;31m\]\u\[\033[0m\]@\h \W]\$ '


Kommandozeile mit Farben
Abbildung: Kommandozeile mit Farben


Hinweis: Die Änderungen werden erst dann wirken, wenn Sie sich als root abgemeldet und wieder neu angemeldet haben.


System anhalten

In der Datei "/etc/inittab" finden Sie die Einstellungen, wie das System auf die Tastenkombination "Strg-Alt-Del" reagieren soll.

Auch hier gilt: Vor der Veränderung einer Datei sollte immer eine Sicherheitskopie angelegt werden

 cp /etc/inittab /etc/inittab.org

damit eventuell später der originale Zustand wieder hergestellt werden kann.


  # What to do when CTRL-ALT-DEL is pressed.
  ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -h now


Damit das Entwicklungssystem nach einem Soft-Reset nicht einfach wieder hochfährt, stellen wir den Schlüssel von "-r"(=Restart) auf "-h"(=Halt) um.

Hinweis: Die neue Einstellung wirkt natürlich erst nach einem Neustart des Systems. Deswegen müssen Sie aber jetzt nicht sofort neu starten.


Weblinks



zurück | Hauptseite

Uwe Schoffer, Hans-Dietrich Kirmse 2009