Debian (und viele Derivate)
- "snmpd: error on subcontainer 'ia_addr' insert (-1)" fixen
- Anlegen einer Network Bridge unter Debian
- Custom-Kernel bauen
- Debian für Fedora-User
- Default-Editor unter Debian konfigurieren
- Installation von Sun Java unter Debian
- PHP5 ohne Apache installieren
- Possible missing firmware for module r8169
- Vorlage für APT sources.list (aktuell Debian Bookworm)
"snmpd: error on subcontainer 'ia_addr' insert (-1)" fixen
Wenn man in einem frischen Debian (Ubuntu ist auch betroffen) SNMPd verwendet, tauchen immer wieder diese Meldungen im Syslog auf:
Apr 11 14:19:05 hostname snmpd[12512]: error on subcontainer 'ia_addr' insert (-1)
Dieser Bug ist schon sehr lange in Debian (und Ubuntu) und lässt sich wie folgt fixen.
Ab Debian Stretch muss man das Systemd Unitfile von snmpd anpassen. Vorgaben in /etc/default/ werden nicht mehr beachtet:
sudo -i
systemctl edit snmpd.service
### einfügen:
[Service]
ExecStart=
ExecStart=/usr/sbin/snmpd -LS6d -Lf /dev/null -u Debian-snmp -g Debian-snmp -I -smux,mteTrigger,mteTriggerConf -f
systemctl restart snmpd.service
Vor Debian Stretch bzw. Systemd hat es so funkioniert:
sed -i 's/Lsd/LS6d/g' /etc/default/snmpd service snmpd restart
Anlegen einer Network Bridge unter Debian
Für meinen netten kleinen Router mit dem Alix2c3 Mainboard wollte ich die 3 Netzwerkports bridgen, damit ich ihn quasi auch als Switch verwenden kann. Momentan habe ich darauf das Voyage-Linux installiert, das speziell auf embedded Geräte ausgelegt ist und z.B. viel mit tmpfs arbeitet um zuviele Schreibzugriffe auf das Compact-Flash Device zu vermeiden. Voyage-Linux basiert auf Debian, die aktuellste Version baut sogar schon auf Lenny auf.
Die folgende Anleitungen sollte aber für alle Debian-Systeme gleich gut funktionieren.
Zuerst müssen die Tools für das Bridging installiert werden:
aptitude install bridge-utils
Jetzt wird die Bridge in /etc/network/interfaces konfiguriert. Zuerst muss dazu die alte Konfiguration z.B. für eth0 deaktiviert werden, dazu die alten Einträge einfach auskommentieren.
Jetzt folgenden Eintrag hinzufügen, die IP-Adresse ist die vorher für eth0 eingetragene:
auto br0 iface br0 inet static bridge_ports eth0 eth1 eth2 address 192.168.1.2 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1
Für den Parameter bridge_ports kann auch „all“ eingesetzt werden, dann werden alle ethX-Ports für die Bridge verwendet. Nach einem Reboot, bzw. dem Neustart des Netzwerks ist die Bridge einsatzbereit.
Kontrollieren kann man die Einstellungen der Bridge so:
alix:~# brctl show bridge name bridge id STP enabled interfaces br0 8000.000db91527b0 no eth0 eth1 eth2
Custom-Kernel bauen
ungetestet:
apt-get install linux-source build-essential kernel-package mkdir /root/kernels cd /root/kernels apt-get source linux cd linux-* cp /boot/config-3.2.0-4-amd64 config vi Makefile (Set SUBLEVEL = 0) make oldconfig make menuconfig (Enable "General setup => Control group support => Group CPU scheduler => CPU bandwidth provisioning for FAIR_GROUP_SCHED") make-kpkg -j12 --append-to-version "-1-amd64-ovtec" --revision $REVISION --initrd buildpackage (At least 10 GB disk space needed) dput -c ~/cdn-packages/dput.rc -u ovtec linux-source-3.2.0-amd64-ovtec+$REVISION_amd64.changes
Debian für Fedora-User
Bei Debian ist für den Fedora-User einiges zu beachten. Manche Befehle gibts nicht, bzw. haben eine andere Syntax.
-
User anlegen (Bei Fedora wird das Homeverzeichnis automatisch erzeugt. Debian braucht den -m Switch
useradd -m -s /bin/bash -d /home/wartung -c "Wartungsaccount" wartung
-
Passwort im Batchmode ändern (Fedoras passwd kennt einen Schalter –stdin um Kennwörter von der Standardeingabe zu lesen)
echo "wartung:blablabla" | chpasswd
Default-Editor unter Debian konfigurieren
Standardmäßig ist bei Debian Nano als Editor eingerichtet. Dies kann für alle User über das Alternative-System geändert werden:
root@web1:~# update-alternatives --config editor There are 4 alternatives which provide `editor'. Selection Alternative ----------------------------------------------- 1 /bin/ed *+ 2 /bin/nano 3 /usr/bin/vim.tiny 4 /usr/bin/vim.basic Press enter to keep the default[*], or type selection number: 4 Using '/usr/bin/vim.basic' to provide 'editor'.
Als normaler User funktioniert das nicht, daher müssen folgende Zeilen im eigenen Profil (z.b. in ~/.bashrc) eingetragen werden:
EDITOR=vi export EDITOR alias editor=$EDITOR
Danach neu anmelden oder die Datei neu sourcen (. .bashrc).
Alternativ den nano Editor einfach deinstallieren:
apt install vim nano-
Installation von Sun Java unter Debian
Debian Wheezy und neuer
Für die Installation von Oracle/Sun Java unter Debian (ohne ein third party repository) gibts ein kleines Tool um aus dem Orginaldownload ein dpkg-File zu machen.
Die aktuelle Version des Oracle Java JDKs kann hier heruntergeladen werden (siehe unten, per wget): http://www.oracle.com/technetwork/java/javase/downloads/index.html
Folgendes Schritte sind dafür notwendig:
Aktivieren von contrib-Paketen in der sources.list von apt, z.B.:
- /etc/apt/sources.list
-
deb http://debian.wavecon.de/mirror/ jessie main contrib deb http://security.debian.org jessie/updates main contrib deb http://debian.wavecon.de/repository/ wavecon main
Nötige Pakete installieren und Java herunterladen. Aktuelle Versionen von hier: http://www.oracle.com/technetwork/java/javase/downloads/index.html
sudo aptitude -y install java-package build-essential libxslt1.1 libgl1-mesa-glx libgtk2.0-0 libxtst6 libxxf86vm1 wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz # .deb Paket bauen (make-jpg läßt sich nicht als User root ausführen): fakeroot make-jpkg jdk-8u131-linux-x64.tar.gz
Java installieren und aktivieren:
sudo dpkg -i oracle-java8-jdk_8u131_amd64.deb update-java-alternatives -l update-java-alternatives -s jdk-8-oracle-x64
Alles fertig:
# java -version java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
Debian Lenny
Um Suns Java 6 unter Debian zu installieren gibts einige Hilfestellungen. Folgendes ist zu tun:
1. Ergänzen der sources.list um „non-free“-Paketquellen. Meine sources.list sieht dann z.B. so aus:
# # deb cdrom:[Debian GNU/Linux 5.0.3 _Lenny_ - Official amd64 NETINST Binary-1 20090906-11:59]/ lenny main #deb cdrom:[Debian GNU/Linux 5.0.3 _Lenny_ - Official amd64 NETINST Binary-1 20090906-11:59]/ lenny main deb http://ftp.de.debian.org/debian/ lenny main non-free deb-src http://ftp.de.debian.org/debian/ lenny main non-free deb http://security.debian.org/ lenny/updates main non-free deb-src http://security.debian.org/ lenny/updates main non-free deb http://volatile.debian.org/debian-volatile lenny/volatile main non-free deb-src http://volatile.debian.org/debian-volatile lenny/volatile main non-free
2. „$ apt-get update“
3. Die Installation via „$ apt-get -y install sun-java6-plugin sun-java6-jre sun-java6-jdk sun-java6-javadb sun-java6-bin sun-java6-doc sun-java6-fonts“. Wer die Dokumentation mitinstalliert muss diese vom Sun-Server runterladen und nach /tmp/ legen (wer ohne auskommt läßt einfach sun-java6-doc im apt-Aufruf weg):
Setting up sun-java6-doc (6-12-1) ... ... This package is an installer package, it does not actually contain the JDK documentation. You will need to go download one of the archives: jdk-6u12-docs.zip jdk-6u12-docs-ja.zip (choose the non-update version if this is the first installation). Please visit http://java.sun.com/javase/downloads/ now and download. The file should be owned by root.root and be copied to /tmp. [Press RETURN to try again, 'no' + RETURN to abort]
4. Alternatives auf Java umstellen:
# verfügbare Java-Installationen anzeigen: $ update-java-alternatives -l # umstellen auf Sun Java 6: $ update-java-alternatives -s java-6-sun
5. Korrekte Installation überprüfen:
$ java -version java version "1.6.0_12" Java(TM) SE Runtime Environment (build 1.6.0_12-b04) Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
PHP5 ohne Apache installieren
Bei einem „apt-get install php5“ wird bei Debian standardmäßig der Apache-Webserver mitinstalliert. Wird nur das PHP benötigt läßt sich das folgendermaßen umgehen:
apt-get install php5-common php5-cgi php5
Das Paket php5-cgi erfüllt die korrekten Abhängigkeiten für php5, der Apache wird nicht mehr verlangt.
Possible missing firmware for module r8169
Sollte beim Updaten des Linuxkernels diese Meldung auftauchen müssen noch die (unfreien) Firmwaremodule von RealTek installiert werden:
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168d-2.fw for module r8169 W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168d-1.fw for module r8169
Dazu müssen die Debian-Quellen in /etc/apt/sources.list angepasst werden („non-free contrib“):
deb http://ftp.de.debian.org/debian/ squeeze main non-free contrib deb-src http://ftp.de.debian.org/debian/ squeeze main non-free contrib deb http://security.debian.org/ squeeze/updates main non-free contrib deb-src http://security.debian.org/ squeeze/updates main non-free contrib deb http://ftp.de.debian.org/debian/ squeeze-updates main non-free contrib deb-src http://ftp.de.debian.org/debian/ squeeze-updates main non-free contrib
Jetzt noch die fehlende Firmware installieren und das initramfs neu bauen:
aptitude update aptitude install firmware-realtek update-initramfs -k all -u
Vorlage für APT sources.list (aktuell Debian Bookworm)
Debian Bookworm
Diese Vorlage beinhaltet die kompletten APT Quellen für Debian Bookworm. Das proposed-updates Repository enthält Pakete, die für das nächste Debian Point-Release vorgesehen sind.
deb http://deb.debian.org/debian/ bookworm contrib main non-free non-free-firmware
deb http://deb.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware
deb http://deb.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware
deb http://deb.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware
Alternativ kann man statt des Release-Namens auch "stable" oder "oldstable" verwenden. Dabei ist allerdings Vorsicht geboten, da dann auch mal ein unbeabsichtigtes Release-Upgrade gemacht werden könnte.
deb http://deb.debian.org/debian/ stable contrib main non-free non-free-firmware
deb http://deb.debian.org/debian/ stable-updates contrib main non-free non-free-firmware
deb http://deb.debian.org/debian/ stable-backports contrib main non-free non-free-firmware
deb http://deb.debian.org/debian-security/ stable-security contrib main non-free non-free-firmware
Debian Bullseye
deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb http://deb.debian.org/debian bullseye-backports main contrib non-free
deb http://security.debian.org/debian-security/ bullseye-security main contrib non-free
Debian Buster
deb http://archive.debian.org/debian buster main contrib non-free
deb http://archive.debian.org/debian buster-updates main contrib non-free
deb http://archive.debian.org/debian buster-backports main contrib non-free
deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free