Debian-Tipps

Aus CodicaTipps
Zur Navigation springen Zur Suche springen

Siehe oldCt:Debian

Allgemeines

  • Debian ist eine weit verbreitete Linux-Distribution, die auch Grundlage vieler anderer Distributionen ist (z.B. Ubuntu).
  • Die aktuelle "unstable" Version heißt sid. Die "testing" jessie (Debian 8.0), die aktuell stabile Version ist Debian 7.0 Wheezy.
  • Die alte noch stabile Version von Debian, die 6.0, heißt Squeeze. Die Vorversion 5.0 heißt Lenny.
  • Die alte Version 4.0 heißt Etch und findet sich weiterhin in den Archiven.

Einzelne Versionen

Debian 8.0 Jessie

Debian Jessie hat teilweise noch Probleme mit der Tastatur. Siehe Linux-Tipps#Tastatur

Außerdem gibt es - jedenfalls im April 2014 - noch Probleme beim Erkennen des Einlegens von Wechselmedien wie Digitalkameras, USB-Sticks, CD-ROMs etc.

Installation

Mini Server Installation

Installation über PXE

  • Herunterladen von netboot.tar.gz
  • Auspacken des Archivs auf einem Windows-Server (z.B. mit Cygwin-tar):
 tar -xf netboot.tar.gz
  • Kopieren von debian-installer/i386/pxelinux.0 und debian-installer/i386/pxelinux.cfg in das Verzeichnis, in dem sich auch das Verzeichnis debian-installer befindet.
  • Einrichten der DHCP- und TFTP-Server wie bei Installation von OpenSuse über PXE
  • Starten des Zielrechners

Installation von einem anderen Linux aus

Debian lässt sich wie Ubuntu mittels debootstrap auch von einem anderen laufenden Linux (ohne Booten von CD oder Netzwerkkarte) aus installieren. Nach Installation des Pakets debootstrap findet man im Pfad /usr/share/debootstrap/scripts/ die Distributionen bzw. deren -Versionen, die debootstrap unterstützt.


Zunächst muss man eine Partition sowie eine Swap-Partition erstellen (fdisk oder parted). Dann erstellt man eine chroot-Umgebung und geht die Befehle entsprechend dieser Anleitung (oder dieser) durch (tasksel install standard hat bei mir allerdings nicht funktioniert). Nach dem Neustart (als root ohne Passwort einloggen) kommen Feinheiten:

  • Root-Passwort festlegen:
 passwd
  • Neuen Benutzer hinzufügen:
 adduser einBenutzer
 aptitude install gnome


Weitere Anleitungen:

Zusätzliche Pakete für HTPC mit Debian Stretch

Die Paketquellen von Debian Stretch sollten neben main auch contrib und non-free enthalten. Folgende Pakete mit deren Abhängigkeiten empfehlen sich für einen Heim-PC, der auch als HTPC eingesetzt werden soll:

  • syslinux-utils - für gethostip
  • ssh - damit auch von anderen Geräten auf die shell des HTPC zugegriffen werden kann
  • joe - ein WordStar-ähnlicher Editor für die shell
  • bash-completion
  • man
  • firmware-iwlwifi - fürs Wifi des NUC6i3SYH
  • cinnamon-desktop
  • fonts-tlwg-sawasdee oder besser alle fonts-tlwg-* - schöne Fonts wie Sawasdee oder Purisa
  • hplip (oder task-print-server) - aktuelle Treiber für HP-Drucker
  • docker.io - um neue Dienste auszuprobieren
  • tvheadend - für den Fernsehempfang - eigenes Tvheadend-Repository für Debian Stretch passt auch das "Release" für Debian Jessie
  • kodi - das frühere XBMC
  • [ https://wiki.debian.org/CDDVD#Video_DVD libdvdcss2 ] zum Abspielen verschlüsselter CDs

Installation einzelner Softwarepakete

  • Empfohlen wird der Einsatz von aptitude gegenüber apt-get, weil nur aptitude bei der Deinstallation auch vormals nur wegen der Abhängigkeit zum deinstallierten Paket installierte Pakete wieder deinstalliert.[1]


Sound

Mit

speaker-test 

kann festgestellt werden, ob die Lautsprecher noch funktionieren. Wenn nicht hilft vielleicht

alsactl init

oder

amixer

Sony VAIO PCG-Z600RE

Bei dem etwas älteren Laptop Sony VAIO PCG-Z600RE lässt sich auch Debian 6.0 Squeeze installieren.

Zu beachten ist dabei bei Betrieb eines ebenfalls älteren WLAN-USB-Stick von Sitecom, dass auch die dazu gehörige Firmware installiert ist. (non-free - Zweig in /etc/apt/sources.list hinzufügen und

 aptitude install zd1211-firmware


Für den integrierten Netzwerkadapter braucht man ab Kernel 2.6.29 zusätzlich das Paket linux-firmware (inkl. linux-firmware-non-free):[2]

 aptitude install linux-firmware


Wenn man die Netzwerk-Interfaces selbst verwaltet (in /etc/network/interfaces),

 # cat /etc/network/interfaces
 auto lo
 iface lo inet loopback
 auto eth0
 iface eth0 inet dhcp
 address 192.168.0.20
 netmask 255.255.255.0
 gateway 192.168.0.1


 auto wlan0
 address 192.168.2.22
 gateway 192.168.2.1
 wireless-key a1_usw
 wireless-essid SSID


dann ist es sinnvoll, den Networkmanager zu deinstallieren (denn Gnome-Anwendungen wie Evolution bleiben im Offline-Modus, wenn der Network-Manager keine eigenen Netzwerk-Verbindungen herstellt:[3]

 aptitude remove network-manager-gnome network-manager

Für den Sound findet sich hier die Anleitung für das Yamaha-Device. Unter XFCE muss man noch zusätzlich das Paket gstreamer0.10-alsa installieren.

Bei Problemen mit Linux kann auch zu BSD gewechselt werden.

Weblinks

Konfiguration

Spracheinstellungen

  • In /etc/locale.gen die Raute vor der gewünschten Sprache entfernen
  • locale-gen laufen lassen
  • Mit locale testen

Anmeldemanager

Um im Gnome-Anmeldemanager gdm einen Benutzer ohne Passworteingabe und sonstige Interaktionen anzumelden, muss unter Einstellungen->Systemverwaltung->Anmeldefenster auf dem Reiter Sicherheit sowohl

  • Automatisch anmelden
  • Zeitgesteuert anmelden

mit einem Häkchen versehen werden.

SSH-Server

Wenn der SSH-Server nicht startet, hilft evtl. folgender Befehl:[4]

 cd /sbin
 ln -s start-stop-daemon.REAL start-stop-daemon


Sudo

Sudo einrichten

Sudo bietet gegenüber dem Anmelden als Root eine Menge Sicherheitsvorteile[5].

Neben der Installation des Pakets sudo muss noch mit

 adduser user sudo

der privilegierte Nutzer user der Gruppe sudo hinzugefügt werden. Die Privilegierung erhält er nach dem nächsten Anmelden.

Sinnvollerweise gibt man der Gruppe sudo auch entsprechende Rechte in /etc/sudoers oder ggf. in /etc/sudoers.d/XYZ(Achtung: die mit einer Raute (#) versehene Include-Anweisung in /etc/sudoers darf nicht entfernt werden):

 %sudo   ALL=(ALL:ALL) ALL

Wenn die Benutzer der sudo-Gruppe nicht einmal ein Passwort eingeben müssen sollen (Sicherheitsrisiko!), heißt die Zeile:

 %sudo   ALL=(ALL:ALL) NOPASSWD: ALL

Sudo Troubleshooting

Wenn die Meldung sudo: Kein TTY vorhanden und kein »askpass«-Programm angegeben erscheint (z.B. in einer chroot-Umgebung), hilft evtl. die Option "-S" bzw "--stdin", z.B.:

 sudo -S aptitude

XFCE

Siehe XFCE

Cinnamon

Zur Installation von Cinnamon in Debian 8 Testing Jessie (nicht aber in Debian 9 Unstable Sid) ist zur Installation von Cinnamon das Einbinden des Linux Mint-Repositorys notwendig. Dazu erstellt man eine Datei /etc/apt/sources.list.d/linuxmint.list mit folgendem Inhalt:

 deb http:/packages.linuxmint.com qiana main import backport upstream


Allerdings hat dies bei mir NICHT funktioniert, da Cinnamon Abhängigkeiten hatte, die mein Jessie-System nicht erfüllen konnte (Stand: 24.8.2014).

Samba

Für die graphische Einrichtung von Samba(bzw. Windows-)Freigaben bietet sich gadmin-samba an:

 sudo aptitude install gadmin-samba menu-l10n winbind


Für den XFCE-Dateimanager Thunar kann man das Einrichten von Smaba-Freigaben händisch nachrüsten. Auch ein entsprechendes Thunar-Plugin befindet sich in der Entwicklung.

Will man darauf nicht warten, kann man unter XFCE auch den Gnome-Dateimanager Nautilus verwenden:

 sudo aptitude install nautilus nautilus-share


Zeroconf

Apples Bonjour-Dienst, um verschiedene Geräte in einem Heimnetzwerk zu erkennen, nennt sich unter Linux Zeroconf bzw. Avahi. Zu installieren ist er mit

 sudo aptitude install avahi avahi-discover

Mit dem graphischen GUI-Programm

 avahi-discover

kann man sich die verfügbaren Geräte und deren Dienste anzeigen lassen. Spätestens nach Installation von avahi-discover sollten Netzwerkdrucker im Einstellungen -> Druckeinstellungen -> Hinzufügen -> Drucker automatisch angezeigt werden.

SFTP/SSH als Bonjour-Dienst

Um einen SSH/SFTP-Dienst in Avahi zu annoncieren, erstellt man erstens eine Datei[6] /etc/avahi/services/ssh.service mit folgendem Inhalt:

 <?xml version="1.0" standalone='no'?>
 <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
 <service-group>
   <name replace-wildcards="yes">%h SSH</name>
   <service>
     <type>_ssh._tcp</type>
     <port>22</port>
   </service>
 </service-group> 

und eine Datei /etc/avahi/services/sftp.service mit folgendem Inhalt:[7]

 <?xml version="1.0" standalone='no'?>
 <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
 <service-group>
   <name replace-wildcards="yes">%h SFTP</name>
      <service>
        <type>_sftp-ssh._tcp</type>
        <port>22</port>
      </service>
 </service-group>

Dann muss man noch den zeroconf-Daemon neu starten:

 sudo service avahi-daemon restart

Auf dem Client muss man ggf. den Serverschlüssel des Rechners RECHNER.local (RECHNER muss durch den Namen des Rechners, auf dem der Dienst zur Verfügung gestellt wird, ersetzt werden) löschen, wenn der Zielrechner ein neues Betriebssystem bekommen hat (Fehlermeldung z.B. "Einhängen des Ortes nicht möglich."):

 ssh-keygen -R RECHNER.local

PDF

Im Mime-Typ-Editor (in den Einstellungen) evince oder okular als Anzeigeanwendung für Typ application/pdf auswählen.

Möglicherweise will man auch noch Adobe Reader installieren.

Als Drucker zum Drucken in PDF kann man das Paket cups-pdf installieren:

 sudo aptitude install cups-pdf

Scans

Siehe OCR

Die angeblich beste Texterkennung unter Linux bieten Tesseract und Cuneiform.

Für Cuneiform gibt es das graphische Frontend YAGF.

Java

Siehe Java

Die OpenJDK-Version von Java stellt mit IcedTea auch ein Plugin zum Ausführen von Applets im Browser zur Verfügung:

 aptitude install icedtea-plugin

Zusätzlich gibt es auch einen Player von Java Web Start-Anwendungen (mit Endung .jnlp):

 aptitude install icedtea-netx

Flash

Um Adobe Flash zu aktivieren, müssen die Paketquellen neben main auch contrib und non-free enthalten. Dann muss über den Lader Adobe Flash installiert werden:

 aptitude install flashplugin-installer

Browser

Neben dem Firefox-Derivat Iceweasel bietet sich unter Debian auch der kommerzielle, aber kostenlose Browser Opera an, der unter Linux auch noch den Opera Mail-Client enthält.


Unterhaltung

Angebote der öffentlichen Fernsehsender können über die Mediathek über das Internet angeschaut werden.

 aptitude install mediathekview

Pakete

Allgemeine Tipps zur Paketverwaltung

Downgrade auf ein bestimmtes Paket

Siehe

Pakete-Selbstbau

  • Hilfreich beim Pakete-Selbstbau sind die debhelper-Skripte; siehe
 man debhelper 
  • Nach Installation des Pakets dh-make kann mit folgendem Befehl ein Skelett eines Pakets erzeugt werden:
 dh_make --packagename paketname_0.1 --createorig

Meta-Paket

mittels equivs

Das Equivs-Paket installieren:

 sudo aptitude install equivs

Control-Datei anlegen:

 equivs-control meinpaket

Control-Datei bearbeiten, z.B. mit joe

 joe meinpaket

.deb erzeugen:

 equivs-build meinpaket

Nun geht's ans testen. Paket installieren:

 dpkg -i meinpaket_1_0.deb

Abhängigkeiten auflösen mit

 aptitude install -f

Jetzt müsste es laufen.

Links

Meta-Pakete sind Pakete, die keinen eigenen Inhalt haben, sondern bei ihrer Installation die Installation von Abhängigkeiten erzwingen:

Anleitungen:

Einfaches Paket mit einem Skript

Paket dh-make installieren
 aptitude install dh-make
Grundstruktur

Um ein Paket PAKET zu erstellen

 mkdir -p ~/pkg/PAKET-0.1
 cd ~/pkg/PAKET-0.1
 dh_make -e name@email.de --packagename PAKET --single --native --copyright=gpl
Kontrolldateien
pkg/PAKET-0.1/debian/control
  • Architektur
 Architecture:all
  • Section
 Section: misc
  • Leerzeile
  • Packagename
 Package: PAKET
  • Eintragen von Abhängigkeiten
 Depends: NOETIGES_PAKET, ...
 Suggests: LIEBES_PAKET, ...
  • Beschreibung
 Description: Kurzbeschreibung
  Die Absätze der Langbeschreibung beginnen jeweils mit einem Leerzeichen.
pkg/PAKET/debian/copyright

Insbesondere Email ist anzupassen, wenn man nicht vor dem Aufruf von dh_make die Variable DEBEMAIL exportiert hat

 export DEBEMAIL=user@domain.com
pkg/PAKET/debian/changelog
  • Evtl. Anheben der Versionsnummer
  • Das Tool dch kann bei Veränderungen der changelog helfen
Dateien entfernen
  • Entfernen von README.Debian
 rm ~/pkg/PAKET/debian/README.debian
  • Entfernen von Beispieldateien
 rm ~/pkg/PAKET/debian/*.ex
Optionales Erstellen eines Skripts
Skript erstellen
 cd ~/pkg/PAKET-0.1
 mkdir bin
 echo -e '#!/bin/bash\necho -e "Hallo $USER,\\nDein $0"' > bin/PAKET.sh
 chmod a+x bin/PAKET.sh
Skript zur Installation anmelden

Das Skript und sein Installationsordner müssen noch in der Datei debian/install (noch zu erzeugen) eingetragen werden bin/PAKET.sh usr/bin/

Quellarchiv bauen
 tar -czf ../PAKET-0.1.tar.gz bin/
Paketbau
 debuild -us -uc

Mit diesem Befehl erhält man ein unsigniertes Paket im übergeordneten Verzeichnis (~/pkg). Die beiden Optionen können auch weggelassen werden, wenn man einen GPG-Key hat. Den erzeugt man mit:

 gpg --gen-key

Mit

 gpg --list-keys

lassen sich die vorhandenen Schlüssel anzeigen.

Links

Siehe

Paket mit einem kleinen C++-Programm

debconf zum Konfigurieren

Mittels debconf können während des Installationsprozess Angaben vom Benutzer eingefordert werden.

Siehe

Tools

  • FPM ist ein Tool zur einfachen Erstellung von .rpm und .deb-Archiven

Eigenes Paket-Repository

Dienste

Bluetooth

Computer als Obex Push Server

Computer soll Bilder vom Handy empfangen können:

  • Im Gnome Bluetooth Manager (Icon auf der Startleiste) eigenen Computer als Bluetooth sichtbar machen
  • Installieren von obexpushd:
  apt-get install obexpushd
  • OBEX Push Server anmelden
  sdptool add OPUSH
  • OBEX Push Server starten
  obexpushd -B

Pairen eines anderen Computers/Handys

  • Suchen des anderen Geräts mit
 hcitool scan
  • Schauen ob es OBEX File Transfer unterstützt (MAC-Adresse vom hcitool scan:
 sdptool browse 10:1E:1D:17:19:E4 
  • Auflisten des Austauschordners des anderen Geräts:
 obexftp -b 10:1E:1D:17:19:E4 -l
  • Zunächst wird auf dem anderen Gerät nach einer PIN (frei wählbar) gefragt
  • Dann blinkt der Gnome Bluetooth Manager (Icon auf der Startleiste); beim Klicken auf das Icon wird man auch hier nach der PIN gefragt. Dieselbe PIN eingeben. Fertig!

Weblinks

Anwendungen

Iceweasel aka Firefox

Debian nutzt aus lizenzrechtlichen Gründen den Fork Iceweasel von Firefox.

Wer unter Debian 8.0 Jessie eine aktuelle Version des Iceweasel will sollte eine /etc/apt/sources.list.d/iceweasel.list-Datei mit folgendem Inhalt anlegen:[8]

 deb http://mozilla.debian.net/ wheezy-backports iceweasel-release

Dazu sollte noch der Archiv-Key installiert werden:

 wget -O - http://deb.opera.com/archive.key http://mozilla.debian.net/archive.asc | apt-key add -

Danach

 aptitude update
 aptitude install iceweasel iceweasel-l10n-de

Opera

OpenOffice

MediaWiki