Manuel A. Krischer, B. Sc.

Tipps und Tricks zur Hochschul IT

An dieser Stelle eine lose Sammlung von Informationen zur Gummersbach IT-Infrastruktur wie das AIX Betriebssystem, die Profilhomepage oder Androidbezogenes.

MidnightCommander (Dateiverwaltung) in AIX benutzen

Der Midnightcommander im Einsatz
  1. mc.tar.gz im Homeverzeichnis abspeichern/herunterladen.
    (wget http://advm1.gm.fh-koeln.de/~krischer/download/mc.tar.gz)
  2. mit gunzip mc.tar.gz und tar xvf mc.tar entpacken
  3. Für die Bash den Befehl alias mc='~/mc/bin/mc -c -a -t -s' in der Datei ~/.alias eintragen.
    (echo "alias mc='~/mc/bin/mc -c -a -t -s' " >> ~/.alias)
  4. Für die Standard TCSH den Befel alias mc ~/mc/bin/mc -c -a -t -s in der Datei ~/.tcshrc eintragen.
    (echo 'alias mc ~/mc/bin/mc -c -a -t -s ' >> ~/.tcshrc)
  5. neu anmelden oder für Bash. .alias oder für TCSH source ~/.tcshrc ausführen.
  6. mit mc starten

Android Mailclient mit dem ADV Mailaccount nutzen

Kurzanleitung zur Konfiguration des Android Mailclients mit sicheren Serververbindungen und passendem IMAP-Ordner für den ADV-Mailaccount.

Aliase

Für die Datei ~/.bashrc bzw. ~/.alias (wenn in .bashrc aufgerufen)

Das aktuelle Verzeichnis als Baumansicht (mit Unterverzeichnissen)

alias dirf='find . -type d| sed -e "s/[^-][^\/]*\// |/g" -e "s/|\([^ ]\)/|-\1/"'

l > ls -al

alias l='ls -alo'

Alle eigenen Semaphoren entfernen

alias rmsem='ipcs | grep `whoami` | cut -c1-12 | sed s.s."ipcrm -s".g | sh'

Alle eigenen Shared-Memory Seqmente entfernen

alias rmsh='ipcs | grep `whoami` | cut -c1-12 | sed s.m."ipcrm -m".g | sh'

Alle eigenen Sharedmemoryseqmente/Semaphoren anzeigen

alias dirsh='ipcs | grep `whoami`'

Gegen Tippfehler

alias cd..='cd ..'

Schneller auf den BS-Praktikum Server

alias bs='ssh `whoami`@advbs08'

Um die Aliasbefehle auch in der Standardshell TCSH benutzen zu können, müssen diese in der Datei ~/.tcshrc angelegt werden und eine leichte Veränderung in der Form alias ll ls -al haben. Hochkommata sowie das Gleichheitszeichen sind nicht nötig.

Shell-Spielereien

Hinweis: um die eigene Shell mittels chsh (CHangeSHell) auf eine andere als die Standard-Shell (tcsh) zu ändern, muss man sich auf der ADVM2 einloggen, da nur dort die Benutzeraccounts geführt werden.

Die Login-Standardshell ändern Sie im GMID-Portal.

folgende Befehle in der Datei ~/.bashrc einfügen. Wenn die Bash auch Login-Shell ist (siehe oben), dann auch folgenden link anlegen ln -s .bashrc .bash_profile.

Bei jedem Login die Größe des eigenen Homeverzeichnisses in lesbarer Einheit erfahren

Für .bashrc

echo Homeverzeichnis belegt $(($(du -k ~| tail -n 1 | cut -f 1)/1000)) MB

Für .tcshrc

set BYTE=`du -k | tail -n 1 | cut -f 1` echo Homeverzeichnis belegt `expr $BYTE / 1000` MB

Um standardmäßig und auch im Midnight Commander VIM als Editor zu verwenden

export EDITOR=/usr/bin/vim

Das Datenverzeichnis für den Midnight Commander festlegen

export MC_DATADIR=~/app/mc

Einfärben des Prompts zur besseren Unterscheidung

Beispiel des eingefärbten Prompts rgb_restore='\[\033[00m\]' rgb_black='\[\033[00;30m\]' rgb_firebrick='\[\033[00;31m\]' rgb_red='\[\033[01;31m\]' rgb_forest='\[\033[00;32m\]' rgb_green='\[\033[01;32m\]' rgb_brown='\[\033[00;33m\]' rgb_yellow='\[\033[01;33m\]' rgb_navy='\[\033[00;34m\]' rgb_blue='\[\033[01;34m\]' rgb_purple='\[\033[00;35m\]' rgb_magenta='\[\033[01;35m\]' rgb_cadet='\[\033[00;36m\]' rgb_cyan='\[\033[01;36m\]' rgb_gray='\[\033[00;37m\]' rgb_white='\[\033[01;37m\]' rgb_std="${rgb_blue}" rgb_usr="${rgb_yellow}" PS1="${rgb_usr}\u${rgb_std}@\h:${rgb_usr}\w${rgb_restore}$PS2"

VIM mit Syntax-Highlight

VIM mit Syntax-Highlight

Von Hendrik Hansmeier stammt der Tipp, im Homeverzeichnis die Datei ~/.vimrc anzulegen und dort ein anderes Farbschema als das voreingestellte zu aktivieren. Dazu muss der Eintrag colorscheme $name$ angelegt werden. $name$ muss einer der Folgenden sein:

Beispiel: colorscheme desert

Es können auch noch weitere Einstellungen in der Datei vorgenommen werden, evtl sinnvoll ist die Darstellung der Zeilennummern mit dem Eintrag set number. Eine fertigte Einstellungsdatei gibt es auf der ADVM1 im Verzeichnis /usr/local/praktikum/.vimrc. Beide Befehle können auch in die Befehlszeile des VIM eingegeben werden, wenn man das Aussehen oder die Farbzusammensetzung erstmal temporär testen möchte.

Um auch auf den ThinClients im ADV-Pool die Farben dargestellt zu bekommen, muss in der Datei ~/.tcshrc auch noch der Eintrag setenv TERM vt300 in setenv TERM xterm geändert werden und anschliessend mit source .tcshrc die veränderten Einstellungen der Shell bekannt gemacht werden.

Mehr zu VIM gibt es z.B. bei wiki.ubuntuusers.de/vim.

Die Profilhomepage aufpeppen

Quellcode mit SSI Anweisung

Da aus Sicherheitsgründen weitverbreitete Scriptsprachen wie PHP auf dem Webserver der Hochschule deaktiviert sind, sehen die meisten Profil-Homepages unter www.gm.fh-koeln.de/~USERNAME meist sehr traurig aus. Damit Menüstrukturen trotzdem nicht mehrfach gepflegt werden müssen oder auf Uralt-Techniken wie HTML Frames zurückgegriffen werden muss, ist der Einsatz von Server Side Includes (SSI) zu empfehlen.

Um eine Seite, die bspw. die Navigation enthält, einbinden zu können, muss ihre aufgerufene Seite die Endung .shtml anstelle von .html bekommen - z.b. also index.shtml. An der Stelle wo jetzt die eingebundene Datei platziert werden soll, muss der SSI Befehl (als Kommentar getarnt) <!--#include file="DATEINAME.EXT" --> eingefügt werden.

Weitere Hinweise über die Nutzung von SSI und mehr Funktionen wie Dateidatum und bedingte Anweisungen werden z.b. bei jumk.de/ssi/ssi.shtml beschrieben.

SSH Key für den Login nutzen

Wenn statt Username/Passwort der öffentliche Schlüssel des eigenen Rechner für den Login auf den Rechnern des ADV-Labors verwendet werden soll, kann nach dieser Anleitung verfahren werden www.schlittermann.de/doc/ssh.

Hommage an Dennis Ritchie

Dennis MacAlistair Ritchie (09.09.1941 - 12.10.2011) war ein amerikanischer Informatiker und entwickelte zusammen mit Ken Thompson und anderen die erste Version des Unix-Betriebssystems. Zusammen mit Thompson und Brian W. Kernighan entwickelte er die Programmiersprache C.

Youtube: "Write in C"

Escape Sequenzen auf der AIX

Escapesequenzen mit color.h im Einsatz

Um Farben für Textausgaben oder Positionierungen des Cursers (und vieles mehr) auf einem Unix-Terminal zu Bewerkstelligen, können Escape-Sequenzen verwendet werden. Eine Übersicht zu Escape Sequenzen gibt es auf der Webseite von Dr. Gerhard Müller und die Info-Seite der unter AIX möglichen Escape Sequenzen hat er auch hinterlegt.

Für eine einfache Anwendung die Datei color.h abspeichern und im Programm mittels #include "color.h" einbinden. Die einzelnen Makros müssen jeweils noch mit Semikolon abgeschlossen werden.

#include <stdio.h>
int main(){
        int c1 = 30, c2 = 42;
        while(1){
                printf("%c[%dm%c[%dm HELLO ",27, c1++, 27, c2++);
                usleep(2000);
                if(c1>37) c1 = 30;
                if(c2>47) c2 = 40;
                fflush(stdout);
        }
return 0;
}

Zugriffsrechte des Homeverzeichnisses überprüfen

Folgendes Script in .tcshrc oder .bashrc einbinden, um eine Veränderung der Verzeichnisrechte zu bemerken.

#!/bin/sh
#In Startscript der Shell einbinden um moegliche 
#Aenderung der Verzeichnisrechte zu bemerken
#PERM_REQ="drwx--S---"  #default
PERM_REQ="drwx--x--x"   #website aktiv
PERM_AKT=`ls -ld $HOME | cut -d" " -f1`
if [[ $PERM_REQ != $PERM_AKT ]]; then
        echo ACHTUNG: VERZEICHNISRECHTE von $HOME veraendert
fi

ascii.c

Einfache Darstellung der wichtigsten Asciizeichen mit C.

Einfache Darstellung der wichtigsten Asciizeichen mit C.

#include <stdio.h>
void main(){
        for(int i=32; i<128; i++){
                printf("%3d: %c ",i,i);
                if ((i+1)%8==0)
                        printf("\n");
        }
}