Installation von Skype auf Ubuntu 16.04 Xenial (64/32bit)

Installation des Programms Skype aus dem Ubuntu Partner Repository:

Nachfolgende Kommandos sind in einem Terminal einzugeben,
jeweils ohne das führenden $ Zeichen.

$ sudo add-apt-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner"
$ sudo dpkg --add-architecture i386
$ sudo apt-get update
$ sudo apt-get install skype

Aufruf über Programm Menü oder hier direkt auf der Kommandozeile:

$ skype

Wie kommt dieses Programm auf meinem Rechner …

Manchmal sitzt man an Terminal und schaut sich mit htop die Auslastung des Rechners an. Dabei fallen einem so manche neue Programme auf die man bisher noch nicht entdeckt hat. Im nachfolgenden Fall das Programm beam.smp.

Interessant sind nun zwei Dinge, erstens was macht das Programm überhaupt und zweitens wer hat das veranlasst das dieses Programm installiert ist, dauernd läuft und damit Speicherplatz und Rechnerzeit frisst?

Ermitteln welches Debian/Ubuntu Paket das Programm installiert hat ist einfach:

# dpkg -S beam.smp
erlang-base: /usr/lib/erlang/erts-6.2/bin/beam.smp

Nun kann mit dem Paketnamen erlang-base die Paketinformation abgerufen werden.

# aptitude show erlang-base
Paket: erlang-base
Zustand: Installiert
Automatisch installiert: nein
Version: 1:17.3-dfsg-4
Priorität: optional
Bereich: interpreters
Verwalter: Debian Erlang Packagers <pkg-erlang-devel@lists.alioth.debian.org> Architektur: amd64
Unkomprimierte Größe: 13,4 M
Hängt ab von: procps, adduser, libc6 (>= 2.14), libsystemd0, libtinfo5, zlib1g (>= 1:1.2.2), init-system-helpers (>= 1.18~)
Empfiehlt: libsctp1 (>= 1.0.16+dfsg), erlang-crypto (= 1:17.3-dfsg-4), erlang-syntax-tools (= 1:17.3-dfsg-4)
Schlägt vor: erlang-tools (= 1:17.3-dfsg-4), erlang, erlang-manpages, erlang-doc
Kollidiert mit: erlang (< 1:17.3-dfsg-4), erlang (< 1:17.3-dfsg-4), erlang-base-hipe, erlang-base-hipe, erlang-doc (> 1:17.3-dfsg-999), erlang-doc (> 1:17.3-dfsg-999), erlang-doc (<
1:17.3-dfsg), erlang-doc (< 1:17.3-dfsg), erlang-doc-html (< 1:13.b.4), erlang-doc-html (< 1:13.b.4), erlang-manpages (<= 1:11.b.1-2), erlang-manpages (<= 1:11.b.1-2),
erlang-base
Ersetzt: erlang (< 1:17.3-dfsg-4), erlang (< 1:17.3-dfsg-4), erlang-base-hipe, erlang-base-hipe, erlang-dev (< 1:17.3-dfsg-4), erlang-dev (< 1:17.3-dfsg-4), erlang-doc (>
1:17.3-dfsg-999), erlang-doc (> 1:17.3-dfsg-999), erlang-doc (< 1:17.3-dfsg), erlang-doc (< 1:17.3-dfsg), erlang-doc-html (< 1:13.b.4), erlang-doc-html (< 1:13.b.4),
erlang-examples (< 1:17.3-dfsg-4), erlang-examples (< 1:17.3-dfsg-4), erlang-manpages (<= 1:11.b.1-2), erlang-manpages (<= 1:11.b.1-2), erlang-mode (< 1:12.b.1-dfsg-2),
erlang-mode (< 1:12.b.1-dfsg-2), erlang-nox (< 1:17.3-dfsg-4), erlang-nox (< 1:17.3-dfsg-4), erlang-src (< 1:17.3-dfsg-4), erlang-src (< 1:17.3-dfsg-4), erlang-x11 (<
1:17.3-dfsg-4), erlang-x11 (< 1:17.3-dfsg-4)
Liefert: erlang-abi-15.b, erlang-abi-17.0
Beschreibung: Virtuelle Maschine für Erlang/OTP und Basisanwendungen
Dieses Paket enthält eine Erlang/OTP-Laufzeitumgebung. Sie wurde ohne HiPE-Unterstützung konfiguriert und erstellt (sie kompiliert nur zu Byte-Code). Das Paket enthält ferner einen
minimalen Satz an Erlang-Anwendungen:
compiler - kompiliert Erlang-Quelltexte zu Byte-Code;
erts - die Erlang-Laufzeitsystemanwendung;
kernel - Programm-Code zum Starten des Erlang-Laufzeitsystems;
ose - Code für das Betriebssystems Enea OSE;
sasl - die Systemarchitektur unterstützende Bibliotheksanwendung;
stdlib - Module zur Änderung von Listen, Zeichenketten, Dateien, usw.
Homepage: http://www.erlang.org/

Markierungen: devel::interpreter, role::program, uitoolkit::nurses

Über den Sinn dieses Paket sagt das leider noch nichts aus. Eine Auskunft über das Mutterpaket liefert aber folgendes.

aptitude show erlang
Paket: erlang
Zustand: nicht installiert
Version: 1:17.3-dfsg-4
Priorität: optional
Bereich: interpreters
Verwalter: Debian Erlang Packagers <pkg-erlang-devel@lists.alioth.debian.org> Architektur: all
Unkomprimierte Größe: 51,2 k
Hängt ab von: erlang-base | erlang-base-hipe, erlang-dev, erlang-asn1, erlang-common-test, erlang-corba, erlang-crypto, erlang-debugger, erlang-dialyzer, erlang-diameter, erlang-edoc,
erlang-eldap, erlang-erl-docgen, erlang-et, erlang-eunit, erlang-gs, erlang-ic, erlang-inets, erlang-megaco, erlang-mnesia, erlang-observer, erlang-odbc, erlang-os-mon,
erlang-parsetools, erlang-percept, erlang-public-key, erlang-reltool, erlang-runtime-tools, erlang-snmp, erlang-ssh, erlang-ssl, erlang-syntax-tools, erlang-test-server,
erlang-tools, erlang-typer, erlang-webtool, erlang-wx, erlang-xmerl
Empfiehlt: erlang-jinterface, erlang-ic-java, erlang-mode, erlang-src, erlang-examples
Schlägt vor: erlang-manpages, erlang-doc
Beschreibung: Simultane, verteilte und funktionelle Echtzeitsprache
Die quelloffene, funktionale Programmiersprache Erlang wurde am Ericsson Computer Science Laboratory konzipiert.

Einige der Hauptmöglichkeiten von Erlang sind:
* Klare, deklaratorische Syntax und weitgehend frei von Nebeneffekten;
* Eingebaute Unterstützung für Echtzeit-, simultane und verteilte Programmierung;
* Für die Entwicklung von robusten und fortlaufend verarbeiteten Programmen konzipiert;
* Dynamische Ersetzung von Code zur Laufzeit.

Die Erlang-Veröffentlichung enthält auch OTP (Open Telecom Platform), das einen reichen Satz an Bibliotheken und Anwendungen liefert.

Dieses Pseudopaket installiert Laufzeit, Anwendungen, Quelltext und Code-Beispiele für Erlang/OTP sowie den Erlang-Bearbeitungsmodus für Emacs.
Homepage: http://www.erlang.org/

Markierungen: devel::TODO, devel::interpreter

Nun Gut, es handelt sich also um einen sicheren Interpreter für etwas das fortlaufend arbeiten soll. Das Was? und Warum? bleiben hier aber immer noch unbeantwortet.

Ermitteln wir mal warum dieses Paket eigentlich installiert wurde.

# aptitude why erlang-base
i cinnamon-core Hängt ab von cinnamon (>= 2.2)
i A cinnamon Hängt ab von libjs-jquery
i A libjs-jquery Empfiehlt javascript-common
i A javascript-common Schlägt vor apache2 (>= 2.4.6~) | lighttpd | httpd
i A yaws Liefert httpd
i A yaws Hängt ab von erlang-yaws (>= 1.98-4)
i A erlang-yaws Hängt ab von erlang-base (>= 1:17.1-dfsg) | erlang-base-hipe (>= 1:17.1-dfsg)

Ah, das sind die richtigen Hinweise, es handelt sich um ein Paket das vom cinnamon-core dem Desktop Manager, über die libjs-jquery, javascript-common und schliesslich als httpd (Webserver) in Form von yaws installiert worden. Wie angezeigt, täten es genauso gut apache2, lighttpd oder httpd. Hier wurde bei der Installation automatisch yaws ausgewählt, da der Dienst vielleicht besonders klein und Resources sparend oder wie oben erwähnt besonders sicher ist. Oder was auch immer …

Ein nahtloser Austausch der httpd Funktionalität wird mit dem Kommando:

# aptitude install lighttpd yaws-

erreicht.

Das besondere daran ist das nachfolgende – Minuszeichen hinter dem zu ersetzenden Paketnamen. Es ist damit der Neuinstallation des Paketes lighttpd nicht im Weg und es wird trotzdem eine komplette Deinstallation von allen abhängigen Paketen vermieden. Wäre das im diesen Fall erfolgt, hätte das den Desktop Manager (cinnamon-core) betroffen, was nahezu erstmal das halbe System deinstallieren hätte.

Das das Paket aber nur empfohlen wird, kann es potentiell auch entfernt werden hier würde ein

# aptitude remove javascript-common

die Sache bei der Wurzel packen und das System davon maximal befreien.

CentOS Admin Commands

Verifikation aller installierten RPM Pakete

  • rpm -V $(rpm -q -a)
S.5....T.  c /etc/bareos/bat.conf
S.5....T.    /usr/share/pear/.depdb
.......T.    /usr/share/pear/.depdblock
S.5....T.    /usr/share/pear/.filemap
.......T.    /usr/share/pear/.lock
S.5....T.  c /etc/yum/pluginconf.d/versionlock.list
prelink: /usr/bin/gnome-control-center: at least one of file's dependencies has changed since prelinking
S.?......    /usr/bin/gnome-control-center
.M....G..    /var/log/gdm
.M.......    /var/run/gdm
fehlend     /var/run/gdm/greeter
.M.......    /usr/bin/amd-console-helper
prelink: /usr/lib64/fglrx/fglrx-libGL.so.1.2: at least one of file's dependencies has changed since prelinking
S.?......    /usr/lib64/fglrx/fglrx-libGL.so.1.2
prelink: /usr/lib64/libatiuki.so.1.0: at least one of file's dependencies has changed since prelinking
S.?......    /usr/lib64/libatiuki.so.1.0
S.5....T.  c /etc/maven/maven2-depmap.xml
S.5....T.  c /etc/ssh/ssh_config
..5....T.  c /usr/lib64/security/classpath.security
S.5....T.  c /etc/rsyslog.conf
S.5....T.  c /etc/vdsm/vdsm.conf
S.5....T.  c /etc/sysconfig/nfs
S.5....T.  c /var/lib/nfs/etab
S.5....T.  c /var/lib/nfs/rmtab
S.5....T.    /sbin/rmt
S.5....T.  c /etc/bareos/bareos-sd.conf
.M.......    /var/lib/bareos/storage
prelink: /usr/bin/csslint-0.6: at least one of file's dependencies has changed since prelinking
S.?......    /usr/bin/csslint-0.6
....L....  c /etc/pam.d/fingerprint-auth
....L....  c /etc/pam.d/password-auth
....L....  c /etc/pam.d/smartcard-auth
....L....  c /etc/pam.d/system-auth
S.5....T.  c /etc/bareos/bareos-dir.d/webui-consoles.conf
.......T.  c /etc/bareos/bareos-dir.d/webui-profiles.conf
S.5....T.  c /etc/bareos/bconsole.conf
.......T.  c /etc/xinetd.d/rsync
S.5....T.  c /etc/bareos/bareos-fd.conf
prelink: /usr/bin/rsvg-convert: at least one of file's dependencies has changed since prelinking
S.?......    /usr/bin/rsvg-convert
prelink: /usr/bin/rsvg-view: at least one of file's dependencies has changed since prelinking
S.?......    /usr/bin/rsvg-view
prelink: /usr/lib64/libm17n.so.0.3.0: at least one of file's dependencies has changed since prelinking
S.?......    /usr/lib64/libm17n.so.0.3.0
..5....T.  c /etc/inittab
..5....T.  c /etc/sysctl.conf
.......T.  c /etc/dnsmasq.conf
S.5....T.  c /etc/sudoers
S.5....T.  c /etc/hosts.allow
S.5....T.  c /etc/hosts.deny
S.5....T.  c /etc/printcap
prelink: /usr/bin/gnome-system-monitor: at least one of file's dependencies has changed since prelinking
S.?......    /usr/bin/gnome-system-monitor
S.5....T.  c /etc/virt-v2v.conf
S.5....T.  c /etc/libvirt/libvirtd.conf
S.5....T.  c /etc/libvirt/qemu.conf
S.5....T.  c /etc/logrotate.d/libvirtd
S.5....T.  c /etc/sysconfig/libvirtd
.M.......    /var/cache/libvirt/qemu
S.5....T.  c /etc/libvirt/qemu-sanlock.conf
.M....G..    /var/lib/libvirt/sanlock
.M.......  c /etc/cups/subscriptions.conf
prelink: /usr/lib64/gimp/2.0/plug-ins/file-svg: at least one of file's dependencies has changed since prelinking
S.?......    /usr/lib64/gimp/2.0/plug-ins/file-svg
S.5....T.  c /etc/sysconfig/cpuspeed
S.5....T.  c /etc/bareos/bareos-dir.conf
prelink: /usr/libexec/ibus-engine-m17n: at least one of file's dependencies has changed since prelinking
S.?......    /usr/libexec/ibus-engine-m17n
S.5....T.  c /etc/login.defs
S.5....T.  c /etc/openldap/ldap.conf
S.5....T.  c /etc/pam_ldap.conf
.......T.    /etc/dhcp/dhclient.d/nis.sh
S.5....T.  c /etc/httpd/conf.d/ssl.conf
S.5....T.  c /etc/yum.repos.d/epel.repo

Nachruf Michael Koehne (Kraehe)

Die Linux/Unix Szene in Bremen trauert um Michael Koehne alias (Kraehe,Kephra).

Er starb letzte Woche an den Folgen seiner Krebserkrankung.

Als alter Hase in Sachen Rechnertechnik und Unixoiden Betriebssystemen ist er vielen in lebendiger Erinnerung.

Sein Wirken in Bremen für die Verbreitung des freien Betriebsystems Debian GNU/Linux in den frühen Anfängen der 90′ Jahre ist unvergessen.

Als Mitglied der Linux User Group – Bremen war er bis zum Schluß der beständigste Teilnehmer des IRC-Channels #lug-bremen.

Sein letzter Log Eintrag ist datiert auf den 01.04.2016 @ 12:55pm (UTC).
FreeNode/#lug-bremen.txt:2863:T 1459515309 * kraehe hat die Verbindung getrennt

Wir drücken der Familie und allen Freunden unser tiefstes Bedauern aus.

R.i.P.

LUG-Bremen, Bremen den 6.4.2016

Roaming Raspberry Pi

Mit folgender Konfiguration wird ein Raspberry Pi 2 unter Raspbian 4.1 (Debian 8 Jessie) dazu gebracht automatisches WLAN roaming durchzuführen.
Die Lösung arbeitet mit dem Daemon wpa_supplicant im wpa-ap-mode 2. Dieser Daemon hat den Vorteil, im Betrieb keine grafische Oberfläche zu genötigen.

# Inhalt von /etc/network/interfaces:
# ----------------------------------
# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet manual

auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
    wpa-driver wext
    wpa-ap-mode 2
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Die WLAN Konfigurationsdatei wpa_supplicant.conf spezifiziert dabei die zu verwendenden WLAN Netze und gleichzeitig deren Reihenfolge bei der Suche.

Die Datei wird am einfachsten mit dem (grafischen) Tool wpa_gui erstellt und verwaltet. Das Tool ist evtl. noch nach zu installieren mit:

sudo apt-get install wpagui

Nach dem Starten der grafischen Oberfläche mit startx, öffnen eines Terminals und Starten des Tools mit sudo wpa_gui & , kann Die eigentliche Konfiguration von neuen Netzen nun mit Hilfe von WLAN Scan entsprechender Auswahl und anschliessender Eingabe der WLAN Parameter erzeugt werden. Das Abspeichern der WLAN Konfiguration mit File->Save ist abschliessend Pflicht.

Um sicher zu gehen das in Zukunft alles auch automatisch funktioniert, sollte nun ein sudo reboot erfolgen.

Ein Prüfen mit welchem WLAN man gerade verbunden ist, kann auf der Kommandozeile mit Hilfe des Kommandos iwconfig jederzeit leicht durchgeführt werden.

# Beispiel Inhalt von /etc/wpa_supplicant/wpa_supplicant.conf
#------------------------------------------------------------
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="Android-AP-4711"
    psk=f72c74506cc80f080db5e2ece7fc830b1435c7b31785838051bfe6ec413814e2
    proto=RSN
    key_mgmt=WPA-PSK
    pairwise=CCMP
    auth_alg=OPEN
}

network={
    ssid="Welcome-Netz"
    key_mgmt=NONE
    auth_alg=OPEN
}

Weitere Kommandos

Aufnahme und Wiedergabe von Terminaleingaben:

  • ttyrec / ttyplay
  • asciinema
  • monitor
  • typescript

Sicheres löschen von Datenträgern:

  • nwipe

Datensicherung mit Timemachine Komfort

  • backintime
  • backintime-gnome

Debian specials:

  • /etc/apt/listchanges.conf -> frontend=pager none # verhindert stop beim upgrade

Filesystem Capabilities

Das Filessystem kann Userprozesse mit zusätzlichen Rechten ausstatten.

z.B. damit eine bestimmte Gruppe von Usern ohne root Rechte mit wireshark sniffen kann.

sudo chgrp your_sniffer_group /usr/bin/dumpcap
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap

Das wirft natürlich einige Fragen auf:

– Was gibts alles für Cap’s ?
– Wie finde ich alle cap’s ?
– Werden Sie durch Backup gesichert ?

Olri

Debian netboot, i18n, Translations und die zorroutils

Da nun Debian testing (jessie) auf den ftp Servern liegt, bin ich gerade dabei meine netboot (autoinstallation) zu testen. Weil ich einen lokalen apt-mirror betreibe, habe ich mein skript gestern angepasst und um jessie main/contrib/nonfree binary-amd64 erweitert. Das waren dann mal eben etwas mehr als 44 GB. Das Delta der Nacht von gestern auf heute waren dann noch mal 390 MB, die Debianer waren also fleißig :-).

Nun klappt meine autoinstallation leider noch nicht, der Debian-Installer bleibt hängen mit der Fehlermeldung „Downloading a file failed“. Auf meinem Mirror-Server (apache) sehe ich das nach einem Unterverzeichnis i18n was bekanntermassen für internationalisation steht, gesucht wird und es nicht existiert. In der Wheezy Struktur existiert das Verzeichnis und enthält die Beschreibungsdateien aller Debian Pakete in allen Sprachen, was für ein Schatz!

ftp://ftp.de.debian.org/debian/dists/wheezy/main/i18n/Translation-de.bz2
ftp://ftp.de.debian.org/debian/dists/wheezy/contrib/i18n/Translation-de.bz2
ftp://ftp.de.debian.org/debian/dists/wheezy/non-free/i18n/Translation-de.bz2

So bin ich dann auch auf die zorroutils in main gestoßen, leider auf amd64 wertlos, aber läuft Debian denn auch auf Amiga ?

Liebe Grüße

Olri

Das Problem konnte durch ändern des apt-mirror skripts, das nun auch die in jessie vorhandenen i18n files mirror’t behoben werden.