Tablespaces in Oracle anlegen

Freitag, Oktober 28, 2016 by crypti

Obwohl das zum “Standard-Reportoire” eines Datenbank-Admins gehört, vergesse ich laufend die Standard-Optionen beim Anlegen von Tablespaces. Weil ich das doch mal ab und zu brauche, hier ein paar kurze Befehlszeilen zum Anlegen von Tablespaces.

Normalen Tablespace anlegen

create tablespace <tablespace_name> 
   datafile '<location>' 
   size <ts_size> 
   autoextend on 
   next <increaseSize>
   maxsize unlimited
   extent management local

Temporären Tablespace anlegen

create temporary tablespace <tablespace_name>
  tempfile '<location>'
  size <ts_size>
  autoextend on
  next <increaseSize>
  maxsize unlimited
  extent management local

Yocto im Docker-Image auf Manjaro

Donnerstag, August 4, 2016 by crypti

Wie bereits im vorigen Thread (Makulu Linux Tutorial) angekündigt, werde ich heute ein kleines Tutorial schreiben, wie man Yocto in einem Docker-Image unter Manjaro Linux zum laufen bekommt.

Grundsystem aktualisieren und Docker installieren

Als Basis nehme ich ein Manjaro Linux, das ich erst einmal mit:

sudo pacman -Sy

und

sudo pacman -Su

auf aktuellen Stand bringe.

Anschließend installiere ich docker mit:

sudo pacman -S docker

Dabei wird der eigentliche docker installiert d.h. client und server.

Update 04.09.2016

Da ich auf meinem neuen Notebook kein Manjaro zum laufen bekomme, hier noch kurz eine Anleitung,
wie man docker in Ubuntu 16.04 LTS installiert:

Erst einmal wird das Ubuntu aktualisiert:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

sollte dabei ein neuer Kernel installiert werden, macht am besten ein Reboot des Systems um den neuen Kernel zu aktivieren.

Anschließend können wir docker mit:

sudo apt-get install docker.io

installieren. Hier auf docker.io achten, da es auch das Paket docker gibt.

Weiter gehts, egal, ob Manjaro oder Ubuntu

Nach der Installation wird erst einmal der docker-Dämon aktiviert und gestartet:

sudo systemctl enable docker

und

sudo systemctl start docker

Damit docker unter Eurem Nutzer läuft, müsst ihr mit:

usermod -a -G docker <nutzername>

euch der Gruppe docker zuordnen. Solltet ihr das nicht machen, bekommt ihr bei Start von Docker immer folgende Meldung:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

Nach Zuordnung der Gruppe loggt ihr Euch entweder aus und neu ein, macht ein reboot oder könnt viel einfacher noch Euch die Gruppe quasi neu zuordnen:

newgrp docker

Docker ausprobieren

Nun könnt ihr den ersten docker-Befehl ausprobieren:

docker run hello-world

und wenn alles gut gelaufen ist, meldet sich Docker mit einer Willkommens-Nachricht.

Soviel erst mal zur grundsätzlichen Einrichtung. Nun geht es ans eingemachte - der Installation einer virtuellen Ubuntu-Umgebung unter Docker.

Grundsystem im Docker aufsetzen

Als basis für den Build nehme ich ubuntu 14.04. Im Github kann man sehen, dass ein “normales” Ubuntu-Image unter : ubuntu:14.04 abrufbar ist. Das wird dann gleich gepullt.

docker pull ubuntu:14.04

Nun kann mit:

docker run -it ubuntu:14.04 /bin/bash

eine bash im ubuntu-System geöffnet werden. In der Bash des Docker-Containers wird erst mal eine Aktualisierung von apt vorgenommen und die für den Build notwendigen Komponenten installiert:

 apt-get update
 apt-get upgrade
 apt-get install wget unzip make 
  g++ python git diffstat 
  texinfo gawk chrpath libsdl1.2-dev

Jetzt legen wir einen Nutzer an:

useradd -m -s /bin/bash -U smx6Dev -p test

und die verschiedenen Verzeichnisse für den Nutzer:

 mkdir /home/smx6Dev/Downloads
 mkdir /home/smx6Dev/build

Nach Anlegen der Verzeichnisse wird das Yocto-Image vom Kugelmann-Server geholt:

wget -O /home/smx6Dev/Downloads/Yocto_Linux_BSP_SMARC-sAMX6i_R02.10.zip http://public.kugelmann.com/yocto/Yocto_Linux_BSP_SMARC-sAMX6i_R02.10.zip

und entpackt:

unzip /home/smx6Dev/Downloads/Yocto_Linux_BSP_SMARC-sAMX6i_R02.10.zip -d /home/smx6Dev/Downloads

mit den beiden Befehlen:

tar -C /home/smx6Dev/build -xzf /home/smx6Dev/Downloads/sources-base.tar.gz 
 tar -C /home/smx6Dev/build -xzf /home/smx6Dev/Downloads/sources-meta-smx6.tar.gz

werden die Yocto-Sourcen entpackt. Bevor wir uns anmelden und die eigentlichen Yocto-Sachen machen, wird noch der owner umgestellt:

chown smx6Dev:smx6Dev -R /home/smx6Dev/build
 chown smx6Dev:smx6Dev /home/smx6Dev/Downloads

Wenn das getan ist, kann man sich als smx6Dev einloggen:

su - smx6Dev

Nun wechselt man ins build-Verzeichnis und ruft das setup-environment auf:

cd build
 source ./sources/meta-smx6/setup-environment ./build

auf. Last but not least kann dann mit:

bitbake smx6-image

das Bauen des Images angestoßen werden.

Um das ganze noch zu vereinfachen, habe ich ein Image gebaut. Die Einzelnen Schritte sind in dem folgenden Docker-File beschrieben. Falls ihr das benutzen wollt, benennt bitte die Datei in Dockerfile um (ohne txt!).

Wenn man den Docker-Container verlässt, kann man mit:

docker build -t yocto-build .

ausgeführt im Verzeichnis, wo das Dockerfile liegt, ein eigenes Image bauen. Das habe ich jedoch bereits gemacht und es in mein Dockhub-Repository hochgeladen.

Um es abzurufen, muss man sich erst einloggen (als crypti76):

docker login --username=crypti76

und kann dann mit:

docker run -it crypti76/smx6image:latest /bin/bash

das fertig vorbereitete image starten und die letzten Schritte (ab anmelden als smx6Dev) durchführen.

Erfahrungsbericht Makulu Linux

Freitag, Juli 1, 2016 by crypti

Vor einer Weile musste ich mal wieder mein HP Notebook neu aufsetzen - da ich dummerweise die Partition auf der Platte für Linux zu klein gewählt hatte und ich dadurch bei den yocto-Builds laufend die Platte zu war.

Eigentlich bin ich ja absolut überzeugter Nutzer von Manjaro Linux, was auf arch linux basiert, auf meinem anderen Notebook und auf einer anderen Partition habe ich das laufen - extrem stabil, immer aktuell und mit blitzschnellem Boot.
Auf dem Manjaro habe ich jedoch Schwierigkeiten yocto für das kontron-Board, was wir bei der Steuerung einsetzen richtig zum Laufen zu bekommen, speziell die Abhängigkeiten sind relativ schwierig herzustellen. Außerdem meckert yocto immer über “nicht unterstützte Distribution”.

Also installierte ich mir anfänglich ein Standard-Ubuntu (ich bin aber echt kein Freund von Unity), es stellte sich aber heraus, das dieses viel zu langsam auf dem HP-Notebook lief. Auch eine Installation von Mate Desktop auf dem Ubuntu brachte eher Schwierigkeiten als Besserung.

Nachdem ich dann mir noch eine SSD geholt habe, habe ich mich dann mal auf distrowatch umgeschaut, ob ich eine Distro finde, die schlank und Ubuntu-basiert ist. Klar hätte man jetzt XUbuntu nehmen können, aber ich habe einfach keine Lust gehabt, erst einmal Stunden mit der Einrichtung meines Desktops zu verschwenden.

Mein Blick fiel auf Makulu Linux, was ein schön gestalteter, auf XFCE-Basis (eine Variante davon) setzender Ubuntu-Fork ist.

Ich muss auch sagen, dass die Oberfläche echt top ist, die Bedienung ist fast wie unter Windows, Abstürze hatte ich bisher auch nicht, die Einrichtung, etc. ist wirklich leicht gewesen.
Die Software-Auswahl ist allerdings etwas gewöhnungsbedürftig. Standardmäßig ist Google Chrome als Browser installiert, als Office gibt es WPS (Was auch immer das für ein Office-Paket ist).
Vom Aussehen her, ist das fast ein Klon vom neuen MS-Office, d.h. es gibt auch so etwas wie “Ribbons”. Allerdings ist die Software in einem sehr frühen Stand - gerade habe ich beim Start eine Alpha21 als Download angezeigt bekommen.
Naja, eine Alpha als Paket für eine Distro zu bekommen ist schon etwas gewöhnungsbedürftig.

Spieletechnisch ist schon ein Steam und PlayonLinux installiert, ansonsten halt die Standard-Spiele (AisleRot Solitaire, Mahjongg und Sodoku).

Multimedia-Technisch wird bomi als Standard-Player genutzt, das Tool habe ich eigentlich noch nie vorher gehört.

Als installierte Grafik- und Bildbetrachtung gibt es eigentlich auch nur ziemlich abgespecktes Zeug, die Auswahl der installierten Software ist eher mau.

Ich habe mir erst einmal die “normalen” Dinge nachinstalliert, ein Libreoffice, VLC, Clementine und Gimp.

Soweit so gut. Was mich ziemlich bei Makulu Linux nervt ist die Aktualierungsverwaltung. Irgendwie wurde hier versucht, die vom Mint zu integrieren. Das funktioniert eher schlecht als Recht. Erstens zeigt mir die Aktualisierungsverwaltung laufend Probleme mit fehlenden Repositories an - das darf eigentlich nicht sein, wenn man nach einer Neuinstallation solche Fehler kommen.
Die Mirrors, die Makulu nutzt, sind teilweise extrem langsam. Ich hatte Tage, wo eine Installation von ein paar Megabyte ca. 45 min gedauert haben, nur weil die Mirrors so langsam sind.
Die Aktualisierungsverwaltung (also die grafische) zeigt spannenderweise nur eine Auswahl an Software, die aktualisiert werden kann.
Andere, die über apt installiert werden kann, wird da gar nicht aufgelistet - warum auch immer. Eigentlich sollte eine Aktualisierungsverwaltung ja die Sachen auflisten, bei der ein Update notwendig ist, es kommen aber meistens nur Komponenten, die einfach mal überhaupt nicht systemrelevant sind.

Nach der ersten Installation habe ich dann (weil ich das mit der unvollständigen Aktualisierungsverwaltung gemerkt habe) ein apt-get update, apt-get upgrade und apt-get dist-upgrade durchgeführt.

Das hätte ich lieber nicht tun sollen, denn das führte dann zu einem nicht mehr funktionsfähigen System - irgendwie wurde ein Großteil überschrieben und ein Boot war gar nicht mehr möglich.
Absolute Katastrophe.

OK - System zweites Mal aufgesetzt - irgendwie hat sich ein update über apt immer vermeiden lassen.
Mal schauen, gerade habe ich (weil owncloud die alte Version angemeckert hat) noch ein Update über apt gefahren, drückt mal die Daumen, dass das System hochfährt.

Was mich auch extrem nervt ist, wenn man eine Tastatur oder eine neue Maus einstöpselt. Dann wird man von Popups geradezu überhäuft. OK, gerade habe ich das mal mit der Maus ausprobiert und ich zumindest nur 2 Popups bekommen. Es gab aber auch schon Zeiten, da habe ich ca. 4 mal den Mouse and Touchpad-Dialog bzw. den Keyboard-Dialog bekommen. Was soll denn das?

Alles in allem ist Makulu Linux zwar optisch schön, aber irgendwie nervts auch.
Die Standardauswahl der Software ist ziemlich gewöhnungsbedürftig und teilweise alpha (oder vielleicht sogar pre-alpha :o) ), der Update-Prozess wie ein Würfelspiel.
Bei Youtube habe ich einige Leute gesehen, bei denen die Installation von propiertären Treibern einfach mal gar nichts gemacht haben.

Ich werde wohl das Makulu wieder von der Platte werfen und statt dessen mal mit meinem Majaro und Docker und einer “virtuellen” Ubuntu-Build-Umgebung experimentieren.
Das spart mir bestimmt viel Zeit (ohne laufendes Multi-Boot) und Nerven und ich kann mit meinem bevorzugten System arbeiten.