Skip to content

Installation einer aktuellen Go Version auf Ubuntu

Go ist eine Open-Source Programmiersprache, welche von Google 2009 entwickelt wurde. Die Sprache ist bei vielen Anwendungen beliebt, darunter Docker oder Kubernetes. 

Nun ist eine neue Version 1.13 erschienen, welche neben Sicherheitsfeatures in den Standardeinstellungen auf TLS 1.3 setzt.
Module welche von den Go Servern geladen werden, sind nun durch eine Checksummenprüfung abgesichert.

Weitere Neuerungen verrät das Changelog

Doch wie kommt Go überhaupt auf das eigene System?

golang

Installation von Golang auf Ubuntu

Als erstes möchte ich die manuelle Installation betrachten.

Auf der Downloadseite muss zunächst nach der offiziellen Version gesucht werden.

wget https://dl.google.com/go/go1.13.linux-amd64.tar.gz

Nach dem Download sollte der Hashwert überprüft werden.

sha256sum go1.13.linux-amd64.tar.gz

    68a2297eb099d1a76097905a2ce334e3155004ec08cdea85f24527be3c48e856  go1.13.linux-amd64.tar.gz

Danach folgt das Entpacken, wobei ihr beim Pfad natürlich auch einen anderen verwenden könnt.

sudo tar -C /usr/local -xzf go1.13.linux-amd64.tar.gz

Nun den PATH anpassen und folgende Zeile unten anfügen.

sudo nano $HOME/.profile

    export PATH=$PATH:/usr/local/go/bin

Die neue PATH Variablen laden.

source ~/.profile

go-installation

Nun kann der finale Test erfolgen, wenn alles klappt solltet ihr folgendes Ergebnis sehen.

go

Go is a tool for managing Go source code.

Usage:

        go command [arguments]

The commands are:

        build       compile packages and dependencies
        clean       remove object files and cached files
        doc         show documentation for package or symbol
        env         print Go environment information
        bug         start a bug report
        fix         update packages to use new APIs
        fmt         gofmt (reformat) package sources
        generate    generate Go files by processing source
        get         download and install packages and dependencies
        install     compile and install packages and dependencies
        list        list packages
        run         compile and run Go program
        test        test packages
        tool        run specified go tool
        version     print Go version
        vet         report likely mistakes in packages

Use "go help [command]" for more information about a command.

 

Installation von Go via apt auf Ubuntu

Golang kann unter Ubuntu ebenfalls über den Paketmanager installiert werden. Dazu muss zunächst ein extra Repository hinzugefügt werden.

sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt update
sudo apt install golang-go

Jetzt könnt ihr euch mit Go austoben.

Im Netz findet ihr jede Menge Beispiele was damit möglich ist.
Zum Beispiel hier oder hier.

 

Ein eigenes Programm ist schnell geschrieben, dazu einfach folgende Schritte ausführen.

Ein neues Verzeichnis anlegen und eine erste Datei anlegen.

mkdir -p /home/user/hello
nano /home/user/hello/helloworld.go


        package main

        import "fmt"

             func main() {
                  fmt.Printf("Hello Go World \n")
             }

Datei builden und ausführen.

cd /home/user/hello

go build
./hello

    Hello Go World

Praktischerweise gibt es eine Online Spielwiese, die zum Probieren einlädt.

Es muss somit zunächst nicht zwingend auf der Kommandozeile gearbeitet werden.

The_Go_Playground

PS. Natürlich kann Golang auch über die vorhandenen Ubuntu Pakete mit sudo apt install golang installiert werden, allerdings erhaltet ihr hier nicht die aktuellste Version.

 

pgAdmin 4.x für Ubuntu, Debian, Mint und Co via Repository verfügbar

Kurze Meldung für PostgreSQL Freunde unter euch. Das bereits vorgestellte pgAdmin 4.x zur grafischen PostgreSQL Datenbank Server Verwaltung kann nun auch aus dem Postgres Repository installiert werden.

Bisher war unter Ubuntu oder Debian nur eine Installation via Python Wheel oder Docker möglich.

pgadmin4

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

sudo apt-get update

sudo apt-get install pgadmin4

 

PostgreSQL 10 - Neuerungen und Installation unter Ubuntu 16.04 LTS

Vor wenigen Tagen wurde PostgreSQL 10 veröffentlicht. Das Hauptaugenmerk der neuen Version liegt auf logischer Replikation, parallelen Queries und Stabilität bzw. Sicherheit.

postgres_logo

Die Neuerungen

Letzteres macht sich durch die Verabschiedung der veralteten MD5 Authentifizierung bemerkbar. Ab sofort kommt SCRAM-SHA-256 zum Einsatz.

Die Einführung der logischen Replikation verspricht schnelleres Übertragen inkrementeller Änderungen auf andere Nodes. Hier findet sich ein Beispiel zur Anwendung dieses neuen Feature.

Für die synchrone Replikation wurden Quorom Commits eingeführt. Diese, im Rahmen des "Zero Downtime" Plans, eingeführte Funktion erlaubt es dem Admin festzulegen wie viele Replikas erfolgreiche Änderungen melden müssen, damit übertragene Daten als sicher gelten.

Die mit PostgreSQL 9.6 vorgestellen parallelen Queries wurden weiter verbessert. So unterstützen nun Daten Scans wie Index Scans oder Merge Joins diese Funktion.

Die Datenbank Partitionierung wurde ebenfalls erweitert.

Weitere Details lassen sich der PostgreSQL 10 Release Ankündigung entnehmen. Änderungen im Detail sind im Wiki zu finden


Installation PostgreSQL 10 unter Ubuntu 16.04 LTS

Zwar hatte ich die Installation der Beta schon in einen Artikel gepackt
möchte aber dennoch schnell das Vorgehen darlegen.

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' 

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | \
 sudo apt-key add -
      
sudo apt update

sudo apt install postgresql-10


 



Das könnte dich auch interessieren

PostgreSQL 9.6, pgAdmin 4 und Barman 2.0 - Die Neuerungen und Installation unter Ubuntu 14.04 und 16.04

pgAdmin4 - Installation und ein erster Blick auf die neue PostgreSQL Schaltzentrale

PGCenter - PostgreSQL Datenbank Statistiken und Leistungsdaten auf einen Blick

22 praktische PostgreSQL Befehle

Praktische PostgreSQL Tools und Links in der Übersicht

pgBadger 4.0 - PostgreSQL Logs analysieren und auswerten

PgTune - Performance Einstellungen für PostgreSQL Datenbanken automatisch erstellen

Linphone 4.1 - freier VoIP Client

Bereits vor ein paar Monaten ist Linphone 4.x erschienen. Der freie SIP Client hat eine dringend benötigte Oberflächenkur erhalten.

Die Telefonie Software für Linux, Mac OS X und Windows basiert auf Qt 5.9 und hat neben der modernen UI eine intelligente Suchleiste erhalten. Diese erlaubt es Kontakte zu suchen, Chats zu starten oder Anrufe zu tätigen.

Linphone-Suchleiste

Anrufe können nun auch via HD Video geführt werden, Konferenzen werden unterstützt, sowie Chats als Ergänzung zum Gespräch.
Zur Nachverfolgung wurde ein globaler Verlauf für Anrufe, Chats und Co integriert. Die Software steht weiterhin unter GPLv2 Lizenz und somit frei zur Verfügung.

Installation unter Ubuntu, Mint und Elementary OS

Für Debian Systeme steht ein Repository zur Verfügung, welches allerdings nicht auf einem aktuellen Stand ist und nur Version 3.9.x anbietet:

sudo add-apt-repository ppa:linphone/release

sudo apt-get update

sudo apt-get install linphone


Es besteht die Option das Programm selbst zu builden, bei mir sind allerdings die ersten Versuche gescheitert...in einer virtuellen Umgebung. Eventuell hat einer hier mehr Glück, mir fehlt dazu gerade etwas die Zeit.

sudo apt-get install git build-essential automake autoconf libtool   \
intltool libgtk2.0-dev libspeexdsp-dev libavcodec-dev libswscale-dev \
libx11-dev libxv-dev libgl1-mesa-dev libreadline-dev libgsm1-dev     \
libtheora-dev libsqlite3-dev libupnp-dev libsrtp0-dev open-vm-tools   \
open-vm-tools-dev cmake-* libmbedtls-dev libmbedtls-doc libmbedtls10   \
libcunit1 libcunit1-dev libantlr3c-dev libantlr3-runtime-java antlr3 \
libortp-dev libortp9 libmediastreamer-base3 libmediastreamer-dev     \
extra-cmake-modules yasm libv4l-dev libasound2-dev python-pip doxygen graphviz xcode ninja
git clone https://github.com/BelledonneCommunications/linphone-desktop.git
cd linphone-desktop
git submodule sync && git submodule update --init --recursive
./prepare.py
make
sudo make install

Linphone_VoIP


Fazit


Die Software hat mit der neuen Oberfläche eine riesen Schritt gemacht, auch die frischen Funktionen sind nicht zu verachten. Wie schon beim letzten Artikel über Linphone ist die Konkurrenz immer noch relativ klein. Ekiga 5 lässt weiterhin auf sich warten, X-Lite/Bria ist Closed Source. Lediglich Jitsi bietet ähnliche Funktionen. 

Wer sichere Kommunikation für wichtig hält, ist mit Linphone relativ gut beraten, da es moderne Technologien wie zRTP, TLS und SRTP unterstützt.

Bevor es keine Möglichkeit gibt Version 4.x via Repository zu beziehen, ist zumindest für Alltags Linux Nutzer die Einstiegshürde etwas hochgelegt. Windows und Mac Anwender, können allerdings bereits einen Installer laden, was ich für meinen ersten Test auch getan habe.

Download LinPhone

Installation PostgreSQL 10 Beta unter Ubuntu

Seit kurzem ist die erste Beta von PostgreSQL 10 verfügbar.

Das Major Release bringt Neuerungen wie logische Replikation oder führt ein Quorum bei Replikation ein.

Außerdem wurde an der Performance gearbeitet und die mit der Version 9.6 eingeführtem paralleler Queries (Artikel) weiter verbessert.

Weitere geplante Neuerungen können diesem Blog Eintrag entnommen werden

postgres

Im 4. Quartal 2017 ist die Fertigstellung des Datenbanksystems in Version 10 geplant.

Installation PostgreSQL 10 Beta unter Ubuntu 16.04. LTS

Um die Wartezeit etwas zu verkürzen kann die aktuelle Beta bereits via Repository installiert und getestet werden.

wget -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main 10" >> /etc/apt/sources.list.d/postgresql-testing.list'

sudo apt-get update
sudo apt-get install postgresql-10
sudo apt-get install postgresql-client-10