Achtung: Bei aktiviertem Java-Skript versteckt ein Klick auf eine Level-1-Überschrift den Text dieser Überschrift.


INHALT

    Office-Produkte u.ä. / PC-Verwaltung

  1. Email
  2. Browser
  3. Adobe Acrobat
  4. Begriffe und Abkürzungen, die ich mir nicht merken kann
  5. Netzlaufwerke (Wiederherstellung gelöschter Dateien …)
  6. Drucken
  7. Excel
  8. Betriebssysteme

  9. Unix Generelles
  10. SunOS
  11. Linux RedHat
  12. Linux Ubuntu
  13. DOS
  14. Windows
  15. Zeichenkodierungen
  16. Tools

  17. Apache Server
  18. Java Infos
  19. Java Utilities
  20. Oracle
  21. Ingres
  22. SQL
  23. SQuirrel
  24. Eclipse
  25. Subversion
  26. OFTP
  27. Windows FTP
  28. SSL, scp, SFTP, FTP/S usw.
  29. HTML usw.
  30. PuTTY
  31. FTP
  32. Barcodes (Tools & Infos)
  33. Infos zu Xtext

  1. Email

    UP

    Unterkapitel:


    Thunderbird

    Back

    Spezialkonfigurationen kann man über “about:config” machen. Dahin kommt man über Extras → Einstellungen → Tab “Allgemein” → unten rechts : Button ”Konfiguration bearbeiten …”

    WasWie
    Automatischen Zeilenumbruch bei Emails ändern
    • about:config
    • im Suchfeld “mailnews.wraplength”
    • rechte Maustaste auf den Eintrag & “bearbeiten“ wählen
    • nun die gewünschte Zeilenbreite eintragen & mit ‘OK” beenden

    Mozilla: Reply

    Back

    In Netscape/Mozilla/Thunderbird kommt bei einem "Antworten" bzw. "Reply" vor der zitierten Nachricht eine Zeile wie z.B.

    Lieschen Müller schrieb:
    

    Wenn man das an jemanden schickt, der kein Deutsch kann, ist das nicht so schön. Man kann diese Zeile umeditieren. Dazu muß man folgenden Zeilen in die Datei "user.js" eintragen:

    user_pref("mailnews.reply_header_type",          2);
    user_pref("mailnews.reply_header_authorwrote",   "%s wrote");
    user_pref("mailnews.reply_header_ondate",        "on %s");
    user_pref("mailnews.reply_header_locale",        "de-DE");
    user_pref("mailnews.reply_header_separator",     " ");
    

    Damit sieht dann die Zitatzeile so aus:

    on 31.12.2005 13:45 Lieschen Müller wrote:
    

    Die Datei user.prefs steht in Directory: Doku&Einstlg.\<user>\Anwendungsdaten\<mozilla/netscape/thunderbird>\Profiles\<sechs Zeichen>.default


    Outlook: kein Hellblau bei Reply

    Back

    Beim Reply & Weiterleiten bekommt man bei HTML-Mails immer hellblaue Schrift. Diese Einstellung kann man wie folgt ändern.

    Unter: Optionen → E-Mail-Format → Schriftarten (Office 2010) bzw. Optionen → Nachrichten verfassen → Briefpapier und Schriftarten → Schriftart (Office 2014) kann man das Hellblau bei "Beim Antworten und Weiterleiten" auf Schwarz setzen.


    Ordner in Outlook für andere freigeben

    Back

    Schritt 1 (für den freigebenden User)

    Wenn man in Outlook mit der rechtn Maustaste auf einen Ordner klickt, kann man dort den Menüpunkt Freigeben ... auswählen. In dem nachfolgenden Fenster kann man dann unter dem Tab Berechtigungen über den Button Hinzufü ... andere User, die in der Globalen Danet-Adressliste stehen, in die Liste der für diesen Ordner berechtigten User aufnehmen.

    Für jeden User kann man nun getrennt die gewünschten Berechtigungen einstellen.

    Wenn man in Outlook neue Unterordner anlegt, erben die Unterordner die Freigaben vom darüberliegenden Ordner. Wenn man einen nicht freigegebenen Ordner als Unterordner in einen freigegebenen Ordner verschiebt, behät der Unterordner seine alten Berechtigungen.

    Schritt 2 (für den freigebenden User)

    Alle übergeordneten Ordner des/der freigegebenen Ordner/s müssen für die gewünschten User müssen (mindestens) auf Stufe 1 freigegeben werden. Dies gilt auch für den Top-Ordner (Postfach - Nachname, Vorname)!

    Schritt 3 (für den User, der die freigebenen Ordner lesen will)

    Wer die freigegebenen Ordner lesen will, muß: Extras → E-Mail-Konten → Vorhandene E-Mail-Konten anzeigen und bearbeiten → Weiter
    und dann das eigene Exchange-Konto markieren → Ändern → Weitere Einstellungen → Registerkarte Erweitert → Hinzufügen
    Dann kommt ein Pop-up, in dem man den Namen desjenigen Users angeben, dessen Mailordner man lesen will. Achtung: Es gibt da kein Menü zum globalen Adressbuch. D.h. am besten schaut man sich vorher an, wie die Namen im globalen Adressbuch angezeigt werden.

    Beispiel für einen Usernamen:

       Martin, Claudia

    Das Leerzeichen nach dem Komma ist wichtig!


    Wo haben sich die Menüpunkte versteckt?

    Back

    MS-Office-Produkte neigen dazu, in neuen Versionen Menüpunkte neuzu verteilen. Darum hier eine kurze Liste ausgewählter Menüpunkte.

    Menüpunkt “Optionen” in Outlook 2003
    Extras → Optionen
    Menüpunkt “Optionen” in Outlook 2010
    Datei → Optionen

    Signatur in Outlook

    Back

    Allgemeines

    Alle Outlook-Signaturen werden im Verzeichnis C:\Dokumente und Einstellungen\<user>\Anwendungsdaten\Microsoft\Signatures

    Hinweis: Wenn man in den Signaturen herumkonfiguriert, kann es sein, daß Outlook die Auswahl für "Signatur für neue Nachrichten" auf "<keine>" zurücksetzt.

    Einrichten bzw. Ändern von Signaturen

    In Outlook: Optionen → E-Mail-Format
    Darin gibt es unter Signaturen einen Button der ebenfalls Signaturen heißt und das Fester Signaturen erstellen öffnet;

    • Ascii-Signatur

      • Button Bearbeiten

        Im Fenster Signatur betarbeiten kann man zwar editieren, aber der Editierbereich ist winzig und merkwürdig umgebrochen. Am besten wählt man Erweitertes Bearbeiten. Zuerst kommt dann ein Pop-up mit willst Du wirklich, was mit OK bestätigt werden muß, dann wird der Windows-Standard-Editor geöffnet.

      • Button Neu

        Wenn man noch keine Signatur eingestellt hat, aber eine Ascii-Datei mit der schon unter Netscape/Mozilla/Thunderbird benutzten Signatur, kann man die ganz einfach weiter benutzen. Dazu im Fenster Neue Signatur erstellen, unter Punkt 2. den dritten Knopf (Diese Datei als Vorlage verwenden) aktivieren und den Namen der Datei eingeben bzw. über Durchsuchen anklicken.(Das Default-Verzeichnis s.o.)

    • vCard (*.vcf)

      Die vCard-Informationen lassen sich unter Outlook weder erstellen noch ändern. Was also tun:

      • Wenn man noch keine *.vcf-Datei hat:

        1. Button Neu oder Button Bearbeiten
        2. Im Fester Signatur bearbeiten den Button Neue vCard von Kontakt
        3. Den eigenen Namen aus der globalen Adressliste anklicken & hinzufügen & OK
        4. Im Fester Signatur bearbeiten auch OK
        5. Wenn man als Namen der Signatur z.B. XXX verwendet hat, steht nun im Outlook-Signatur-Verzeichnis die Datei <nachname>, <Vorname>.vcf
        6. Wenn man nicht alles, was dort an Daten drin ist versenden will, sollte man die vcf-Datei mit einem beliebigen Texteditor bearbeiten. Man kann die Zeilen, die einem nicht gefallen, einfach löschen, oder auch den Inhalt ändern und als Textdatei abspeichern.

      • Wenn man schon eine *.vcf-Datei hat:

        1. Die bisher verwendete vcf-Datei ins Outlook-Signatur-Verzeichnis kopieren. Wichtig: Die Datei muß die Endung vcf haben
        2. Button Neu oder Button Bearbeiten
        3. Im Fester Signatur bearbeiten im Pull-Down Dieser Signatur diese Visitenkarte die zuvor kopierte vcf-Datei (Die hier ohne die Endung .vcf<&q> angezeigt wird) auswählen.
        4. OK und fertig


    Externe Email-Datendatei in Outlook

    Back

    Neue Datendateien legt man an über den Menüpunkt: Datei → Neu → Outlook Datendatei …

    Manwählt zuerst Namen & Speicherort der Datendatei. (Die Vorgabe “Persönliche Ordner(1).pst“ sollte man durch etwas sinnvolles ersetzen.)

    Danach wird der Name festgelegt, den dieser Ordner in Outlook bekomen soll. Achtung: Dieser Name läßt sich nicht wie die anderen Ordner per “rechte Maustaste“ umbenennen. Statt dessen muß man über: Optionen → Tab “E-Mail-Setup” → Button “Datendateien …“ die Namensänderung(en) durchführen.


    Spezialordner in Outlook

    Back

    Namehat eigenen OrdenerBereitstellen in diesem Ordner mit
    AufgabenJaIPM.Task
    AufgabenanfrageNeinIPM.TaskRequest
    BesprechungsanfrageNeinIPM.Schedule.Meeting.Request
    JournalJaIPM.Activity
    KalenderJaIPM.Appointment
    KontakteJaIPM.Contact
    NachrichtNeinIPM.Note
    NotizJaIPM.StickyNote
    TerminNeinIPM.Appointment
    VerteilerlisteNeinIPM.DistList
    (alle anderen)JaIPM.Post

    Outlook-Blockierung bestimmter Email-Attachements aufheben

    Back

    Quelle dieser Information ist: http://www.docoutlook.de/outlook/ol2000/artikel/emailsicherheit.htm

    Wichtig: Beschreibung gilt für Outlook 2003. Für frühere Versionen im o.a. Link nachsehen.

    In der Registry muß man unter

       HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Security
    

    einen neuen Eintrag einfügen mit:

    • Neu → Zeichenfolge
    • als Namen "Level1Remove" angeben
    • als Wert eine Liste der Datei-Extensions angeben,
      • mit Punkt vorne dran und
      • durch Semikolon getrennt.

      Beispiel: ".exe;.com"

    Dann Outlook neu starten.


    Automatisches in Outlook aktivieren (z.B. "BCC")

    Back

    Wie man Makros in Outlook benutzt

    In Outlook gibt es ein "built-in"-Modul namens "ThisOutlookSession" (oder "DieseOutlookSitzung"). In dieses Modul muß man den in den nachfolgenden Beispielen angegebenen Basic-Code einfügen.

    In den Macro-Editiermodul kommt man z.B. über ALT+F11.

    Wichtig: Die Markros müssen natürlich auch aktiviert sein. Das geht so:

    Extras -> Makro -> Sicherheit -> Sicherhetsstufe -> mittel

    Dann Outlook neu starten.

    Automatisches "BCC"

    Quelle dieser Information ist: http://www.outlookcode.com/d/code/autobcc.htm

    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
        Dim objMe As Recipient
        Set objMe = Item.Recipients.Add("myaddress@mydomain.dom")
        objMe.Type = olBCC
        objMe.Resolve
        Set objMe = Nothing
    End Sub
    

    Damit wird dann, nachdem man bei einer Mail auf "Senden" gedrückt hat, dieses Makro aufgefunden, das dann das "BCC" anfügt.

    Nachfrage, falls Betreff nicht gefüllt ist

    Quelle dieser Information ist: http://www.msexchangefaq.de/code/olkvba.htm

    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
        If Item.Subject = "" Then
            ans = MsgBox("Betreff fehlt! Trotzdem senden (z.B. bei SMS) ? ", vbYesNo, "Betreff ist leer!")
            If ans = vbNo Then Cancel = True
        End If
    '   Falls noch mehr automatisches Zeug hiernach kommt,
    '   dann alles weitere überspringen:
        If Cancel = True Then GoTo ende
    
    '   Anderer Marco-Kram
    
    ende:
    End Sub
    

    Damit wird dann, nachdem man bei einer Mail auf "Senden" gedrückt hat, dieses Makro aufgefunden, das dann prüft, ob ein Betreff eingegeben wurde. Wenn nicht, muß man auf "Cancel" klicken und kommt damit in den Editiermodus zurück.

    Nachfrage, falls kein Attachement angefügt ist

    Quelle dieser Information ist: http://www.msexchangefaq.de/code/olkvba.htm

    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
        Dim ans
        If InStr(1, Item.Body, "Anlage", vbTextCompare) > 0 Then
            If Item.Attachments.Count = 0 Then
                ans = MsgBox("Anlage fehlt, Trotzdem senden?", vbYesNo)
                If ans = vbNo Then Cancel = True
            End If
        End If
    '    Call DoSync
    End Sub
    

    Damit wird dann, nachdem man bei einer Mail auf "Senden" gedrückt hat, dieses Makro aufgefunden, das dann prüft, ob >1 Attachement eingefügt wurde.

    • Wenn keins da ist und man auch keins senden wollte → "OK"
    • Wenn keins da ist, man aber eins senden wollte → "No"

    Mit "No" kommt man in den Editiermodus zurück.


    IMAP-Konten in Outlook

    Back

    Optionen → Kontoeinstellungen → E-Mail-Konto ändern → das IMAP-Konto auswählen → Weitere Einstellungen.

    Darin gibt's u.a. ein Ankreuzfeld: “Elemente online beim Wechseln des Ordners löschen”.


    Outlook: sonstige Settings

    Back
    WasWie
    Nachrichten automatisch als gelesen markieren Optionen → Weitere → Outlook-Bereiche: Lesebereich
    ClearType ein- und ausschalten Optionen → Weitere → Allgemein: Erweiterte Optionen. Achtung: Wird für alle Office-Produkte aktiv & man muß die Officeprodukte neu starten.
    Antworten verfassen, nicht mehr hellblau Beschreibung steht hier

  2. Browser

    UP

    Unterkapitel:


    Firefox-Einstellungen für Citrix

    Back

    Folgende Firefox Einstellung ist zu empfehlen: Tools → Options → Main, darin:

    Check options: Show Download window; Close it when finished


    FTP über Webbrowser

    Back

    Die Syntax für FTP über einen Webbrowser ist:

    ftp://my_user:my_password@remote_host
    

    Für “my_user”, “my_password” und “remote_host” muß man natürlich die richtigen Logindaten verwenden.


    Webbrowser-Konfiguration für Suche über Shortcuts

    Back
    SuchmaschineAbkürzung“Name”AdressePOST
    Googleg&Googlehttp://www.google.com/search?q=%s&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest 
    Bingb&Binghttp://www.bing.com/search?q=%s&form=OPRTSD&pc=OPER 
    Ebaye&eBayhttp://redir.opera.com/ebay/?q=%s 
    AmazonzAma&zonhttp://redir.opera.com/amazon/?q=%s 
    PreisvergleichpPreisvergleichhttp://redir.opera.com/preisvergleich/?q=%s 
    WikipediawWikipediahttp://de.wikipedia.org/wiki/Special:Search?search=%s 

  3. Adobe Acrobat

    UP

    Unterkapitel:


    PDF-Creator

    Back

    Die Beschreibung bezieht sich auf die Testversion 995.

    Im Word-Dokument Datei → Drucken und dann als Drucker PDFCreator bzw. PDF995auswählen.

    Wichtig: Es gibt Probleme bei blassen Bildteilen einer Powerpoint-Folie. Die verschwinden zum Teil, obwohl sie in Powerpoint (und in Word) sichtbar sind.
    Umgehungslösung: Die Bilder in Powerpoint als JPG abspeichern.


    PDF nicht in Browser öffnen

    Back

    Acrobat Plug-Ins über Einstellungen in Firefox deaktivieren

    Firefox 2.0.*

    Extras → Einstellungen → Inhalt → Verwalten (= Button rechts unten))

    Dann kommt ein Pop-up, in dem aller Acrobat-Kram deaktiviert werden muß. Für alle Acrobat-Dateitypen muß man über “Aktion ändern” die Aktion “Plugin” auf die Aktion “Dateien mit der Standard-Anwendung öffnen” umstellen.

    Betroffene Dateitypen sind:

    • FDF Adobe Acrobat Forms-Dokument
    • PDF Adobe Acrobat-Dokument
    • XDP Adobe Acrobat XML-Formular
      (ob man das auch deaktivieren muß, weiß ich nicht)
    • XFD XFD file
      (ob man das auch deaktivieren muß, weiß ich nicht)
    • XFDF Adobe Acrobat Forms-Dokument

    Altes Firefox 1.0.*

    Extras → Einstellungen → Plugins (= Button rechts unten)

    Dann kommt ein Pop-up, in dem aller Acrobat-Kram deaktiviert werden muß. Aktivierte Plug-Ins haben in der Spalte Aktiviert ein Häkchen, deaktivierte einen Punkt.

    Zu deaktivierende Plug-Ins:

    • FDF Adobe Acrobat Forms-Dokument
    • PDF Adobe Acrobat-Dokument
    • XDP Adobe Acrobat XML-Formular
      (ob man das auch deaktivieren muß, weiß ich nicht)
    • XFD XFD file
      (ob man das auch deaktivieren muß, weiß ich nicht)
    • XFDF Adobe Acrobat Forms-Dokument

    Acrobat Plug-Ins für Internet Explorer über Einstellungen in Acrobat deaktivieren

    Im Internet Explorer gibt es nur eine allgemeine Einstellung alle Plug-Ins zulassen. D.h., man kann hier nicht gezielt das Öffnen von PDF-Dateien unterdrücken. Statt dessen muß man im Acrobat Reader folgende Einstellung (gilt für Acrobat 7, sollte aber bei Vorgänger-Versionen ähnlich aussehen) ändern.

    Bearbeiten Grundeinstellungen (bzw. Ctrl-K) → Kategorie Internet auswählen → Unter Web-Browser - Optionen das Häkchen bei PDF in Browser anzeigen deaktivieren.

    Achtung: Danach kommt ein Fenster mit Installieren von Acrobat, dann eins mit Konfiguration von Acrobat und danach kommt die Frage PC gleich neu starten oder später. (It's not a bug, it's a feature.) Die Konfigurationsänderung ist aber trotzdem sofort aktiv.

    Acrobat Reader-Plug-In für Netscape/Mozilla deaktivieren

    (Wirkt anscheinend ab Acrobat 7/Firefox 1.0.7 nicht mehr.)

    1.   cd <Netscape/Mozilla-Installationsdirectory>\plugins
        md MURKS
        move nppdf32.DEU MURKS
        move nppdf32.dll MURKS
        
    2.   cd <Acrobat Reader-Installationsdirectory>\Reader\Browser
        md MURKS
        move nppdf32.DEU MURKS
        move nppdf32.dll MURKS
        


  4. Begriffe und Abkürzungen, die ich mir nicht merken kann

    UP


    Kärrnerarbeit
    Kärr|ner|ar|beit, die (abwertend): harte [Klein]arbeit [ohne sichtbaren Erfolg]. (aus: Duden-Erklärung)


    Abk.AusgeschriebenBemerkungen
    BPM Business Process Management 
    BSI Bundesamt für Sicherheit und Informationstechnik 
    CRM Customer Relationship Management 
    EAI Enterprise Application Integration 
    EDA Event-Driven Architecture 
    ERP Enterprise Resource Planning 
    HRISHuman Resource Information System 
    JMS Java Message Service 
    KPI Key Performance Indicator 
    MVNOMobile Virtual Network Operators 
    RAIDRedundant Array of Inexpensive Disks 
    ROI Return Of Invest 
    SOA Service-Oriented Architecture 
    SOAPSimple Object Access Protocol 
     


  5. Netzlaufwerke (Wiederherstellung gelöschter Dateien …)

    UP

    Wiederherstellung gelöschter Dateien

    Back

    Wenn man versehentlich auf einem Netzlaufwerk (auf dem dieses Feature aktiviert ist) eine Datei gelöscht hat, kann man diese Datei wie folgt wiederherstellen.

    1. den Ordner, aus dem man die Datei gelöscht hat, kopieren als <alter Name>.save
    2. mit rechter Maustaste auf den Ordner, aus dem man die Datei gelöscht hat und auf ‘Eigeschaften’ klicken
    3. Nun kommt ein Pop-up, der einen Tab namens ‘Vorherige Versionen’ enthält. (Wenn kein solcher Tab da ist, gibt es für dieses Laufwerk keine Möglichkeit zur Wiederherstellung durch den Anwender.)
    4. Im Tab ‘Vorherige Versionen’ wird eine Liste aller Wiederherstellungspunkte angezeigt. Hier kann man eine beliebige Version auswählen und dann über den Button ‘Wiederherstellen’ den alten Inhalt des Ordners Wiederherstellen.
    5. Nun muß man noch alle Dateien, von denen man nicht die alte Version haben will,
      • aus dem Ordner <alter Name> löschen, oder
      • mit der Version aus dem in Schritt 1 gesicherten Order <alter Name>.save überschreiben.
    6. Ordnerkopie <alter Name>.save wieder löschen.
    7. fertig

  6. Drucken

    UP

    Unterkapitel:


    Doppelseitig Drucken auf einem HP4050N über LPT:

    Back

    ACHTUNG! Riskant!

    Die nötigen Schritte sind:

    • Installation des Druckers "HP 4050 PCL" lokal auf "LPT1". (Wenn LPT1 schon belegt ist, dann LPT2.)
    • Einstellen auf doppelseitiges Drucken
    • Absetzen des Kommandos:
      C:\WINNT\system32\net use LPT1: \\<Printer-Host>\<Druckerfreigabename> <Windows Password> /USER:<Windows User>/PERSISTENT:NO
      (Wenn LPT1 schon belegt ist, dann LPT2.)

    Nun kann man auf LPT1 (bzw. LPT2) drucken. Der Druck kommt an dem Drucker raus, den man mit dem "net use"-Kommando angegeben hat. Windows verwendet zum Drucken den installierten Drucker-Driver mit den dort angegebenen Optionen.

    Windows weiß nicht, was für ein Drucker hinter dem Netzwerkpfad steckt! Wenn man einen falschen Drucker-Driver installiert hat, kann das zu erheblichen Problemen am Drucker führen!


  7. Excel

    UP

    Unterkapitel:


    SYLK: Ungültiges Dateiformat

    Back

    Falls man in Excel beim Einlsen einer CSV-Datei den Fehler
    SYLK: Ungültiges Dateiformat
    bekommt, kann das daran liegen, daß in der ersten Zeile der Datei in der ersten Spalte die Zeichenfolge
    ID
    steht.

    Wenn man dann

    • entweder das ‘I’ oder das ‘D’ klein schreibt,
    • oder als erste Zeile eine Leerzeile einfügt,

    dann kann die Datei ohne Probleme eingelesen werden.


    Eigene Makros usw.

    Back

    Eigene Makros werden abgelegt in Datei “C:\Dokumente und Einstellungen\<user>\Anwendungsdaten\Microsoft\Excel\XLStart\PERSONL.XLS"


  8. Unix Generelles

    UP

    Unterkapitel:


    Nützliche Kommandos

    Back

    KommandoWirkung
    ar tv xxx.a
    Ausgabe aller *.o, die in der statischen Library xxx.a enthalten sind.
    nm xxx.a
    Ausgabe aller externen und internen Symbole, die in der statischen Library xxx.a enthalten sind. D.h. hier werden die Namen der entaltenen Functions angezeigt.

    root-Login

    Back

    • Man muß in der Group system sein, um ein su - machen zu können.
    • Wenn man von einem anderen Rechner aus ein Login als root machen will, muß in der Datei /etc/securettys eine Zeile mit Inhalt ptys. Beispiel der Datei von lucky.mt.danet.de:
          /dev/console
          local:0
          :0
          ptys                 
          

    Drucken

    Back

    Die Druckernamen bekommt man mit dem Befehl:

    lpstat -v


    Password-Verwaltung über NIS

    Back

    NIS steht für Network Information Service. Wenn User/Passwords über NIS verwaltet werden, kommt man nicht mehr auf die übliche Weise an die Daten ran. Man muß spezielle Kommandos zur Bearbeitung verwenden.

    "Normales" Kommando NIS-Kommando Bemerkungen
    passwd
    yppasswd
    Beide Kommandos verhalten sich User-seitig gleich.
    grep my_user_name /etc/passwd
    ypmatch my_user_name passwd
    Bei beiden Kommandos kommt jeweils die Zeile raus, die die Daten des Users "my_user_name" enthält.
    Die jeweils durch ":" getrennten Ausgabespalten sind:
    Login-Username, encryptetes Password, UID, GID, Kommentar (das ist normalerweise der natürliche Name des Users), Login-Directory, Name des Executables für die Shell.

    X-Forwarding

    Back

    Wenn man sich remote per “ssh” einloggt, dann ist bei manchen ssh-Implementierungen das X-Forwarding ausgeschaltet. Um das zu erkennen, macht man eine ssh-Verbindung auf und gibt dort auf der Kommandozeile ein:

    env | grep DISPLAY

    Wenn X-Forwarding eingeschaltet ist, sieht die Ausgabe so aus:

    a1user@A1:~$ env|grep DISPLAY
    DISPLAY=localhost:10.0
    a1user@A1:~$
    

    Wenn das X-Forwarding nicht eingeschaltet ist, ist die Umgebungsvariable “DISPLAY” nicht gesetzt. Zum Setzen muß man ssh mit dem Parameter “-X” aufrufen. Beispiel:

    ssh -X myuser@myhost
    

    Farbnamen in X11

    Back

    In Unix gibt es die X11-Datei “lib/X11/rgb.txt”. In dieser Datei sind dir RGB-Werte für alle Farbnamen definiert.

    Das X11-Directory ist nicht immer an derselben Stelle. Einen Anhaltspunkt bietet das Executable “xterm”. Wenn xterm in /x/y/bin/xterm steht, dann ist rgb.txt in /x/y/lib/X11/rgb.txt.

    Mögliche Orte für rgb.txt:

    • /usr/openwin/lib/X11/rgb.txt (SunOS)
    • /usr/openwin/lib/rgb.txt (SunOS)
    • /usr/X11R6/lib/X11/rgb.txt (Linux)
    • /usr/lib/X11/rgb.txt (OSF1)
    • /etc/X11/rgb.txt (HP-UX)

    Achtung: Die in rgb.txt definierten Farbnamen sind i.d.R. auch in HTML verwendbar!

    Beispieldatei: rgb.txt


    Infos zu ‘vi’

    Back

    In der Zeitschrift c’t gab es folgende Info:

    (image vi reference missing)

    Infos zu Samba (für Extras→Netzlaufwerk verbinden)

    Back

    Allgemeines

    Beispieleintrag aus “smb.conf”:

    [homeall]
    #comment  = Home of %S
    #writable = true
    #browseable = true
    #oplocks = false
    
    comment         = all home myserver
    path            = /export/home
    valid users     = myuser
    public          = no
    writable        = yes
    browseable      = yes
    printable       = no
    create mask      = 0774
    directory mask  = 775
    wide links      = no
    #read only = no
    delete readonly = yes
    #create mode = 0750
    

    Beim “Netzlaufwerk verbinden” muß man in diesem Beispiel folgendes angeben:

    Laufwerkbeliebig, z.B. “Z:”
    Ordner\\myserver\homeall\xyz
    Anderer Benutzer: Namemyuser
    Anderer Benutzer: PasswordDas Password des Users “myuser” auf dem Host myserver
    ResultatAuf dem PC kann unter “Z:\” auf das Directory “/export/home/xyz”, das auf “myserver” liegt, zugreifen.

    Wo liegt die Samba-Konfigdatei?

    Der Samba-Daemon heißt “smbd”. Wenn man ein “ps” auf alle Prozesse macht, die den String “smbd” enthalten, kann man sehen, ob überhaupt ein Samba-Daemon läuft.

    Beim Start des Samba-Daemons kann man den Namen einer Konfig-Datei mitgeben. (Beispiel: /usr/local/samba/bin/smbd -D -s/usr/local/samba/lib/smb.conf).
    Wenn nichts angegeben ist, dann liegt die Datei in einem Default-Verzeichnis.

    Linux-Default-Directories
    • /usr/local/samba/lib/smb.conf
    • /usr/samba/lib/smb.conf
    • /etc/samba/smb.conf

    Infos zu CIFS (für Extras→Netzlaufwerk freigeben)

    Back

    Allgemeines

    “CIFS” is neuer und (angeblich) besser als Samba. Es gibt eine generelle Empfehlung, daß, man CIFS verwenden soll, wenn man ein ein Windows-Laufwerk unter Unix mounten will.

    Aktuell (2013) ist es nicht möglich, die Zeitstempel neuer Dateien zu manipulieren. Das bedeutet, daß, insbesondere der Befehl
      cp -p
    fehlschlägt, da das Setzen von Zeitstempeln nicht von CIFS unterstützt wird.

    TCSH-Beispielskript für mehrere Mounts

    Dieses Skript hat unter Ubuntu 12.04 mit einer Windows 7-Freigabe funktioniert.

    #!/bin/tcsh
    # -----------------------------------------------------------------------------
      set last_num = $1
    
    #  if ($last_num == "")   goto expl
      if ($last_num == "")  set last_num = "175"
    
    set ip_addr = "192.168.2.$last_num"
    set mount_user = "MyPC/MainUser"
    set mount_fs_user = "MyServer/MyUser"
    #set mount_params = "file_mode=0777,dir_mode=0777"
    #set mount_params = "file_mode=0777,dir_mode=0777,noserverino"
    #
    # noserverino : otherwise windows creates inode number that are too big for unix
    # noperm :      no permanent access rights, right are kept only in memory
    #               ==> no more problems with chmod or utime
    set mount_params = "file_mode=0777,dir_mode=0777,noserverino,noperm"
    
    echo mounting Eclipse_WS from $ip_addr ...
    sudo mount -t cifs //$ip_addr/Eclipse_WS /home/unixuser/Eclipse_WS -o user=$mount_user,$mount_params
    
    echo mounting for_ubuntu from $ip_addr as test ...
    sudo mount -t cifs //$ip_addr/for_ubuntu /home/unixuser/test -o user=$mount_user,$mount_params
    
    echo mounting MyDirectory from My_file_server \(192.168.0.1\) as my_file_server ...
    sudo mount -t cifs //192.168.0.1/MyDirectory /home/unixuser/my_file_server -o user=$mount_fs_user,$mount_params
    
    goto end
    
    expl:
    echo " "
    echo "mount //192.168.2.x/Eclipse_WS /home/unixuser/Eclipse_WS"
    echo "mount //192.168.2.x/for_ubuntu /home/unixuser/test"
    echo "where x is the call parameter of $0"
    end:
    echo " "
    
    

  9. SunOS

    UP

    Unterkapitel:


    Nützliche Kommandos

    Back

    KommandoWirkung
    pkginfo -i -l
    Ausgabe aller Infos zu allen installierten Software-Packages

    Compiler SUNWspro (cc, dbx, ...)

    Back

    Der Compiler ist normalerweise unter /opt/SUNWspro installiert. Auf wesun007 steht er in /appl/SunOS/SunStudio/SunStudio11/SUNWspro.

    Das Produkt SunStudio enthält außer dem Compiler noch einen dbx-Debugger.

    Im bin-Directory des Compilers steht außerdem noch eine graphische Oberfläche für Compile/Run/Debug zur Verfügung. Der Aufruf ist:

    sunstudio

    Wenn man sunstudio das erste Mal aufruft, werden ein paar Abfragen gemacht. Am besten ist, alles mit OK zu beantworten. Die Defaults sind einigermaßen OK. Später kann man dann immer noch seine Lieblingseinstellungen für die Fenster und den Debugger einstellen.

    Speicherlecks finden mit SunStudio-GUI

    Wenn man in Programm direkt über Sunstudio startet, kann man unter Debug → Memory → Access Checks bzw. Debug → Memory → Usage Checks Speichertests anschalten.

    Wichtig:
    Tools → Dbx Debugging Options → Runtime Checking →Log Errors To File And Continue = YES
    (Hinter der Checkbox kann der Name der Error-Logdatei angegeben werden.)

    Unter Tools → Dbx Debugging Options → Forks and Threads kann man einstellen, wo beim Fork weitergemacht werden soll (Parent, Child Both, Ask User).

    Speicherlecks finden mit Sun dbx ohne GUI

    Wichtig: Man darf ‘dbx’ nicht mit ‘CTRL-C’ abbrechen, sonst kommt die Fehlerliste (dbx cmds ‘dbxenv rtc_mel_at_exit verbose’ ‘dbxenv rtc_biu_at_exit verbose’ nicht raus!

    Bei VMD_CISU03: auf unseren Testrechnern: Event CTRL_ENPROCREQ senden, dann macht CISU ein Exit ohne ‘SYSexit’ aufzurufen.

    Programmstart Beispiel:

    /vol1/wesun007/user/cma/maxsmd2_p28/system/max_smd2/bin> dbx -C VMD_CISU03
    dbx: no process
    Reading VMD_CISU03
    Reading ld.so.1
    Reading rtcapihook.so
    Reading libxmp.so.1
    Reading libxom.so.1
    Reading libsocket.so.1
    Reading libnsl.so.1
    Reading libm.so.2
    Reading libintl.so.1
    Reading libgen.so.1
    Reading libresolv.so.2
    Reading libc.so.1
    Reading libdl.so.1
    Reading libc_psr.so.1
    Reading rtcaudit.so
    Reading libmapmalloc.so.1
    Reading rtcboot.so
    Reading librtc.so
    (dbx) dbxenv rtc_error_log_file_name CISU.errlog.4                           
    (dbx) dbxenv rtc_error_limit 10000                
    (dbx) suppress -stack all in getservbyname_r
    dbx: suppress: try this command after checking has been enabled
    (dbx) check -all                            
    access checking - ON
    memuse checking - ON
    (dbx) check -leaks
    leaks checking - ON
    (dbx) suppress -stack all in getservbyname_r
    (dbx) suppress -stack rui in BDecSNSA02GetConfirmedContent
    (dbx) dbxenv rtc_auto_continue on                         
    (dbx) dbxenv rtc_mel_at_exit verbose
    (dbx) dbxenv rtc_biu_at_exit verbose
    (dbx) run CMA_AMS cmis 1            
    Running: VMD_CISU03 CMA_AMS cmis 1 
    (process id 25286)
    RTC: Enabling Error Checking...
    RTC: Using UltraSparc trap mechanism
    RTC: See `help rtc showmap' and `help rtc limitations' for details.
    RTC: Running program...
    Reading nss_files.so.1
    
    

    Help zum ‘suppress’-Kommando im dbx:

    (dbx) help suppress
    suppress (rtc command)
    
    suppress               list the currently active suppression commands
    suppress <err> <loc>   suppress named error at named location
    suppress -r ...        remove suppression commands
    
    suppress -last        suppress the current error
    suppress -reset ...   reset suppression to default levels
    suppress -d ...       control suppression for non-debug functions
    suppress -showall     show internal suppression table entries
    
    Suppress and unsuppress commands are recorded in a list, and have a
    cumulative affect.  For example, to suppress BAF errors in all libc
    functions except printf, use these two commands:
      suppress baf in libc.so.1
      unsuppress baf in printf
    
    The unsuppress command generally takes all the same arguments
    as the suppress command, and has the opposite affect.
    
    suppress -reset
    ---------------
        suppress -reset         Reset suppression for all loadobjects
        suppress -reset <loadobject> ...      ... for named loadobjects
    
    suppress -d
    -----------
       suppress -d
         List of errors being suppressed in functions not compiled for
         debugging (default suppression).  This list is per loadobject.
         can be unsuppressed only by using the
         'unsuppress -d' command.
    
       suppress -d <errors>
         Suppress <errors> in all loadobjects.
    
       suppress -d <errors> in <loadobjects>
         Suppress <errors> in the named loadobjects.
    
       unsuppress -d ...
         Permit errors in all or some loadobjects.
         This command takes the same arguments, and has the
         reverse affect.
    
    suppress -r
    -----------
       When the ‘suppress’ command shows a list of the currently
       active suppression commands, it will show an ID number with
       each command.  That ID number can be used to remove that command
       from the list.
    
       suppress -r <id>       Remove the named suppression commands.
       suppress -r all        Remove all suppression commands.
    
    suppress <errors> ...
    ---------------------
       suppress <errors>        Suppress <errors> everywhere
    
       suppress <errors> in [<funcs>] [<files>] [<loadobjects>]
       suppress <errors> at <line>
       suppress <errors> at “<file>”:<line>
       suppress <errors> addr <addr>
    
                                Suppress <errors> at named location
    
       unsuppress <errors>      Permit <errors> everywhere
       unsuppress <errors> ...  Permit <errors> at named location
    
       The -stack argument can be used before <errors> to indicate
       that the errors should be suppressed in any function called
       from within the named location.  For example, if a function
       named __strange_libc_function is causing errors, but they
       aren't due to your program, and there's nothing you can do about
       it you can disable all errors in that function, and within the
       functions it calls.
    
       suppress -stack all in __strange_libc_function
    
    kinds of errors
    ---------------
    
    The <errors> are blank separated and can be any combination of:
    
    all     # All errors
    aib     # Possible memory leak - address in block
    air     # Possible memory leak - address in register
    baf     # Bad free
    duf     # Duplicate free
    mel     # Memory leak
    maf     # Misaligned free
    mar     # Misaligned read
    maw     # Misaligned write
    oom     # Out of memory
    rua     # Read from unallocated memory
    rui     # Read from uninitialized memory
    wro     # Write to read-only memory
    wua     # Write to unallocated memory
    
    biu     # Block in use (allocated memory).  Though not an error, you
            # can use ‘biu’ just like <errors> in the suppress commands.
    
    Normally dbx will automatically suppress each error that is
    encountered, at the location it happens.  This automatic suppression
    does not result in commands on the suppression list, and the affects
    will go away when the program is run again.  This behavior can be
    controlled with the dbxenv variable rtc_auto_suppress.
    
    This behavior is different from using the ‘suppress -last” command,
    which will result in a command on the suppresion list, and will
    persist when the program is run again.
    
    See /lsquo;help unsuppress’ for information on unsuppressing errors.
    See ‘help rtc’ for an introduction to RTC.
    

  10. Linux RedHat

    UP

    Änderung des Passwords

    Unter "root" kann man die Gültigkeitsdauer eines Passwords wie folgt festlegen.

    • passwd -n 9999 MyUser
      • set minimum lifetime
    • passwd -x 9999 MyUser
      • set maximum lifetime

    Folgender Eintrag in /etc/passwd :

    cma:(encrypted passwd):12898:9999:0:2:0::

    führt dazu, daß "Your password expires in 0 days".

    Struktur aus "shdow.h":

        struct spwd {
           char *sp_namp; /* user login name */
           char *sp_pwdp; /* encrypted password */
           long sp_lstchg; /* last password change */
           int  sp_min; /* days until change allowed. */
           int  sp_max; /* days before change required */
           int  sp_warn; /* days warning for expiration */
           int  sp_inact; /* days before account inactive */
           int  sp_expire; /* date when account expires */
           int  sp_flag; /* reserved for future use */
        }
    

    Problem mit SSH_ASKPASS

    Beim Login wird automatisch /etc/csh.cshrc und csh.login aufgerufen. Wenn OpenSSH installiert ist, gibt es die Dateien

    • /etc/profile.d/gnome-ssh-askpass.csh
    • /etc/profile.d/gnome-ssh-askpass.sh

    In diesen beiden Dateien wird jeweils die Umgebungsvariable SSH_ASKPASS gesetzt.


  11. Linux Ubuntu

    UP

    Unterkapitel:


    Löschen alter Kernels um Platz zu schaffen

    Back
    1. Welche Kernels stehen auf der Festplatte?
      dpkg --list | grep linux-image
    2. Nun den zu entfernenden Kernel raussuchen und über den Befehl:
      sudo apt-get purge linux-image-x.x.x.x-generic
      (für “x.x.x.x” natürlich die zu entfernende Version einsetzen) von der Festplatte löschen.

  12. DOS

    UP

    Unterkapitel:


    Nützliche Kommandos

    Back

    Datum und Uhrzeit in Dateinamen nutzen

    Back

    (Siehe dazu auch Windows Datumsformat setzen)

    Beispiel-Skript zum Anlegen von Verzeichnissen, die das aktuelle Datum im Namen enthalten:


    @echo off
    
    REM --- zerpfluecken von Date, TIME ---
    
    REM ~a,b bedeutet: nimm aus %DATE% den Substring, der
    REM ab Position a geht und b Buchstaben lang ist
    
    set DateFmt(JJJJ)=%DATE:~9,4%
    set DateFmt(MM)=%DATE:~6,2%
    set DateFmt(TT)=%DATE:~3,2%
    
    set TimeFmt(HH)=%TIME:~0,2%
    set TimeFmt(MM)=%TIME:~3,2%
    set TimeFmt(SS)=%TIME:~6,2%
    
    
    REM --- Datum und Uhrzeit zusammensetzen ---
    
    set DateFmt(JJJJ.MM.TT)=%DateFmt(JJJJ)%.%DateFmt(MM)%.%DateFmt(TT)%
    set TimeFmt(HH.MM.SS)=%TimeFmt(HH)%.%TimeFmt(MM)%.%TimeFmt(SS)%
    set TimeFmt(HH.MM)=%TimeFmt(HH)%.%TimeFmt(MM)%
    
    set DateFmt(JJJJMMTT)=%DateFmt(JJJJ)%%DateFmt(MM)%%DateFmt(TT)%
    set TimeFmt(HHMMSS)=%TimeFmt(HH)%%TimeFmt(MM)%%TimeFmt(SS)%
    set TimeFmt(HHMM)=%TimeFmt(HH)%%TimeFmt(MM)%
    
    
    REM --- Directorynamen zusammensetzen
    
    Set DirName(JJJJ.MM.TT_HH.MM.SS)=%DateFmt(JJJJ.MM.TT)%_%TimeFmt(HH.MM.SS)%
    Set DirName(JJJJ.MM.TT_HH.MM)=%DateFmt(JJJJ.MM.TT)%_%TimeFmt(HH.MM)%
    
    Set DirName(JJJJMMTT_HHMMSS)=%DateFmt(JJJJMMTT)%_%TimeFmt(HHMMSS)%
    Set DirName(JJJJMMTT_HHMM)=%DateFmt(JJJJMMTT)%_%TimeFmt(HHMM)%
    
    
    REM --- Verzeichnis anlegen
    
    REM MD .\%DirName(JJJJ.MM.TT_HH.MM)%
    MD .\%DirName(JJJJMMTT_HHMM)%
    
    
    REM --- geht natuerlich auch mit Datei anlegen .... ---
    


  13. Windows

    UP

    Unterkapitel:


    Windows-Konfigurationen

    Back

    Ruhemodus

    Back

    Unerwartetes, ständiges Aufwachen aus dem Ruhemodus

    Quelle mit ausführlicher Beschreibung: https://www.deskmodder.de/wiki/index.php/Windows_10_PC_wacht_immer_wieder_auf_So_kann_man_es_%C3%A4ndern

    Schaltet man seinen PC mit Windows 10 nicht ganz aus, sondern nur in den Energiesparmodus oder Ruhezustand, kann es passieren, dass der PC einfach und ‘ohne Grund” wieder aufwacht.

    Timer-Task

    Ein möglicher Grund: Aufgaben, die per Timer gestartet werden. Welche das sind, findet man so raus:
    Rechte Maustaste aus das Windows-Symbol unten links am (Haupt-) Bildschirm → Windows Powershell (Administrator) →Willst-du-wirklich-Popup mit &ladquo;Ja” beantworten → im Powershell-Fenster powercfg /waketimers eingeben.
    Wenn da nichts kommt, gibt's auch keinen PC-Schlaf-Verhinderer.

    Wenn es eine nicht benötigte Timer-Task gibt, kann man diese im Aufgabenplaner deaktivieren oder ggf. löschen. Ob die betreffende Task den PC nachts aufgeweckt hat, kann man sich in Tab 6 “Verlauf” anschauen. Falls dort steht “Verlauf (deaktiviert)”, kann man den Verlauf ganz rechts im Fenster unter “Aktionen” durch Klick auf “Verlauf für alle Aufgaben aktivieren” aktivieren. Damit werden dann natürlich auch mehr Logs geschrieben, was aber bei den heutigen großen Festplatten in der Regel keine Rolle mehr spielt.

    Zum Deaktivieren:
    Rechte Maustaste aus das Windows-Symbol unten links am (Haupt-) Bildschirm → Suchen → Aufgabenplanung eingeben.

    Hier kann man alle Tasks sehen, die zu bestimmten Zeiten ausgeführt werden. Die, die man definitiv nicht braucht, kann man deaktivieren. Die, bei denen man sich nicht sicher ist, ob man sie braucht, kann man so konfigurieren: Rechte Maus auf die Task → Eigenschaften → Tab 3 “Bedingungen” → Kreuz wegnehmen bei “Computer zum Ausführen der Aufgabe reaktivieren”.

    Automatische Wartung

    Rechte Maustaste aus das Windows-Symbol unten links am (Haupt-) Bildschirm → Explorer → Systemsteuerung\Alle Systemsteuerungselemente → oben rechts “Anzeige” auf “kleine Symbole” umschalten → un der Liste nun “ Sicherheit und Wartung” auswählen → im neuen Fenster den Inhalt unter “Wartung” aufblättern → auf “Wartungseinstellungen ändern” klicken → Haken wegnehmen bei “Die Aktivierung des Computers durch die geplante Wartung zum geplanten Zeitpunkt zulassen.

    Energieoptionen

    Energieoptionen → Energie sparen → Zeitgeber zur Aktivierung zulassen → auf “Deaktivieren” stellen.


    Datumsformat

    Back

    Das steht hier: Änderung des Datumsformats


    Namenergänzung für Pfade

    Back

    Wenn man in einer DOS-Box das Kommando “cmd/?” eingibt, bekommt man ide nachfolgende Info.

    Man kann die Namenergänzung über folgende Registry-Eintäge aktivieren:

    • HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
    • HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar

    bzw.

    • HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
    • HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar

    Die benutzerspezifischen Einstellungen (HKEY_CURRENT_USER) haben gegenüber den Einstellungen für den Computer (HKEY_LOCAL_MACHINE) Vorrang.

    Diese Parameter sind vom Typ “DWORT” und können beliebig gesetzt werden. Beispiele für sinvolle Werte:

    • 0x40 für die “TAB”-Taste
    • 0x4 für STRG+D (CTRL-D)
    • 0x6 für STRG+F (CTRL-F)

    Beispiel: Man steht in ‘C:\’, gibt ein ‘cd do’ und drückt dann die TAB-Taste (bzw. CTRL-F oder CTRL-D), dann wird die Zeile in ‘cd “Dokumente und Einstellungen”‘ expandiert.

    Achtung: Im Gegensatz zu Unix, wird einfach immer der erste Pfad genommen der paßt.


    Datumsformat

    Back

    Unter Windows2000: echo %DATE% ergiebt z.B. Do 27.03.2008
    Unter XP ergiebt dasselbe Kommando z.B. 27.03.2008

    Wenn man unter Windows XP (Vista ist analog zu XP) dieselbe Ausgabe haben will, wie unter Windows2000, dann kann man:

    1. auswählen: Start → Systemeinstellungen → Regions- und Sprachoptionen
    2. darin im Tab “Regionale Einstellungen” Button “Anpassen” (ziemlich weit oben auf der Seite)
    3. im neuen Fenster den tab “Datum” auswählen
    4. im Bereich “Kurzes Datumsformat” ändern:
      • Defaultwert ist: TT.MM.JJJJ
      • ändern auf: TTT.TT.MM.JJJJ

    Dann gibt auch XP bei “echo %DATE%” den Wochentag mit aus. Achtung: Das zuerst verwendete Trennzeichen wird automatisch als “DAS” Trennzeichen übernommen. Wenn man also “TTT TT.MM.JJJJ” konfiguriert, bekommt man als “DAS” Trennzeichen ein Leerzeichen. In Excel wird dann das Leerzeichen als Trennzeichen zwischen Tag, Monat und Jahr verwendet; damit hat das auch Auswirkungen auf das Einlesen von CSV-Dateien.


    Umgebungsvariablen

    Back

    Umgebungsvariablen, wie z.B. PATH, sind definiert in:
    Start → Einstellungen → Systemsteuerung → System → Erweitert → Button “Umgebungsvariablen” (ganz unten auf der Seite)


    Infos zum Windows-Eventlogging

    Back

    Unter Einstellungen → Systemsteuerung → Verwaltung → Ereignisanzeige werden viele “Events” angezeigt. Die folgende Tabelle enthält eine Auswahl dieser Events.

    SourceProtocolEbene (=Severity?)Event-IdBedeutung
    SystemPower-TroubleshooterInformation1Text z.B.:Das System wurde aus dem Energiesparmodus reaktiviert.
    nicht überall verfügbare Events
    System???Information6005Start des PCs
    System???Information6006Shutdown des PCs

    Unix-artige Links ab Windows Vista

    Back

    Ab Vista gibt es Links, die wie bei Unix funktionieren. Es gibt aber keine Explorer-Unterstützung dazu, sondern nur ein Commandline-Interface.

    Help zum Kommando:

    C:\>mklink/?
    Erstellt eine symbolische Verknüpfung.
    
    MKLINK [[/D] | [/H] | [/J]] Verknüpfung Ziel
    
            /D           Erstellt eine symbolische Verknüpfung für ein Verzeichis.
                         Standardmäßig wird eine symbolische Verknüpfung für
                         eine Datei erstellt.
            /H           Erstellt eine feste Verknüpfung anstelle einer
                         symbolischen Verknüpfung.
            /J           Erstellt eine Verzeichnisverbindung.
            Verknüpfung  Gibt den Namen für die symbolischen Verknüpfung an.
            Ziel         Gibt den Pfad (relativ oder absolut) an, auf den die
                         neue Verknüpfung verweist.
    

    Beispiel für Aufruf:

    mklink /J name_des_neuen_link c:\name_des_existierenden_directories
    

  14. Zeichenkodierungen

    UP

    Unterkapitel:


    UTF8-Kodierung für deutsche Umlaute

    Back

    Eine Liste mit “allen” Umlauten steht hier: http://unicode-table.com/en/#latin-1-supplement


    BuchstabeHexOktal
    Ä0xC4304
    Ö0xD6326
    Ü0xDC334
    ä0xE4344
    ö0xF6366
    ü0xFC374
    ß0xDF337

  15. Apache Server

    UP

    Bediente Applikationen

    Version Beispiel für Installationsverzeichnis Verzeichnis für Applikations-XML-Dateien
    4.*
    /export/home0/apache/jakarta-tomcat-4.1.24
    /export/home0/apache/jakarta-tomcat-4.1.24/webapps
    5.*
    /home/tomcat/jakarta-tomcat-5.0.28
    /home/tomcat/jakarta-tomcat-5.0.28/Catalina/localhost

    Im Verzeichnis für Applikations-XML-Dateien stehen lauter *.xml Dateien. Die Namen dieser Dateien kann man dann im Browser als "Directory" hinter dem Hostnamen angeben.

    In dieser "WebApps"-Datei steht dann z.B. (altes GUI):

    <Context path="/vmdb_dc" docBase="</export/home/my_user/install/web>"
               debug="3" reloadable="false" cookies="false">
    <Logger className="org.apache.catalina.logger.FileLogger"
            prefix="localhost_dc_log." suffix=".txt"
            timestamp="true"/>
    </Context>
    

    In dieser "WebApps"-Datei steht dann z.B. (neues GUI):

    <Context path="/vmdb_dc" docBase="</export/home/my_user/install/web>"
               debug="3" reloadable="false" cookies="true">
    <Logger className="org.apache.catalina.logger.FileLogger"
            prefix="localhost_dc_log." suffix=".txt"
            timestamp="true"/>
    </Context>
    

    Die *.jsp-Dateien der Applikation stehen in dem durch den Parameter "docbase" bestimmten Directory.

    Fehlermeldungen

    Out-of-memory

    Manchmal, wenn der Apache-Server zu lange läuft, kann es Probleme geben. Beispiel: Bei einigen Anfragen kommt ein "java.lang.OutOfMemoryError". (Das OutOfMemory steht ganz unten, davor wird noch ein ellenlanger Java-Stacktrace ausgegeben.)

    Dieser Fehler hat nichts mit der Applikation zu tun. Man muß, wenn dieser Fehler auftritt, den Apache Server stoppen und wieder starten.

    Falls nicht genug Speicherplatz zur Verfügung steht, um den Apache-Server zu starten gibt es auch die Meldung "java.lang.OutOfMemoryError".

    Lösung:

    im .login oder so setzen:

    setenv CATALINA_OPTS "-Xms256m -Xmx256m"

    Wenn man dann den Tomcat startet, kann man die gesetzten Werte im ps-Kommando sehen. Beispiel:

    ps -ef|grep tomcat5
     tomcat5 18448     1  0   Jan 10 ?       202:02 /usr/j2sdk1.4.2/bin/java -Xms256m -Xmx256m -Djava.endorsed.dirs=/export/home0/t
    

    “Unbekannter Fehler” nach Eingabe von User/Password im Login-Fenster

    Eine mögliche Ursache ist, daß sich die Jar-Dateien beim Tomcat unter WEB-INF/lib von den Jar-Dateien unter $VMD_HOME_DIR/java unterscheiden. Wenn das der Fall ist, erscheint in der Tomcat-seitigen Tracedatei (beim VMD ist das: WEB-INF/log/VmdTrace.trc) eine Fehlermeldung, die etwa so aussieht:

    class mygui.admin_html.data.RmiConnector.createConnection II
    java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
            java.lang.ClassNotFoundException: mycontrol.web_gui_rmi.AlarmConfiguration_Stub (no security manager: RMI class loader disabled)
            at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
            at java.rmi.Naming.lookup(Naming.java:84)
            at mygui.admin_html.data.RmiConnector.createConnection(RmiConnector.java:154)
            at mygui.admin_html.data.RmiConnector.checkConnection(RmiConnector.java:222)
            at mygui.admin_html.data.command.ParentCommand.run(ParentCommand.java:532)
    Caused by: java.lang.ClassNotFoundException: mycontrol.web_gui_rmi.AlarmConfiguration_Stub (no security manager: RMI class loader disabled)
            at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:371)
            at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165)
            at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:620)
            at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:247)
            at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:197)
            at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1543)
            at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1465)
            at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1698)
            at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1304)
            at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
            ... 5 more
    

    Restart

    Restart geht so:

    cd <Installations-Directory>
    cd bin
    ./shutdown.sh
    ps -u <Tomcat-User>
    kill -9 <alle java PIDs>
    ./startup.sh
    


  16. Java Infos

    UP

    Unterkapitel:


    Formatierung von Datumsangaben

    Back

    Beispiel 1:

    String returnTimeStamp = null;
    Calendar calendar = new GregorianCalendar();
    returnTimeStamp = new SimpleDateFormat("yyyyMMddHHmmss").format(calendar.getTime());
    

    Beispiel 2:

    String returnTimeStamp = null;
    Calendar calendar = new GregorianCalendar();
    returnTimeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(calendar.getTime());
    

    Verarbeitung von Umlauten

    Back

    Wenn man in Java Umlaute verarbeiten (einlesen/ausgeben) will, muß man sowohl beim Compile, als auch beim Run die Umgebungsvariable “LANG” auf deutsche Sprache gesetzt haben.

    Was man tun muß, um mehrere Sprachversionen unterstützen zu können, weiß ich nicht.

    Auf einem Windows-PC muß man setzen:

        SET LANG=de

    Unter Unix gibt es viele verschiedene Möglichkeiten. Je nachdem welche lokalisierte Sprachversion auf dem rechner installiert ist, unterscheidet sich der Wert, auf den “LANG” gesetzt sein muß. Das Unix-Kommando “locale -a” gibt alle gütigen werte für “LANG” aus.

    Auf Unix muß man z.B. setzen:

        setenv LANG de_DE

    oder

        setenv LANG de_DE.ISO8859-15@euro

    Beispiele für Ausgaben von “locale -a” unter Unix

    iso_8859_1
    iso_8859_15
    iso_8859_2
    de
    de.ISO8859-15
    de.UTF-8
    de_AT
    de_AT.ISO8859-1
    de_AT.ISO8859-15
    de_AT.ISO8859-15@euro
    de_CH
    de_CH.ISO8859-1
    de_DE
    de_DE.ISO8859-1
    de_DE.ISO8859-15
    de_DE.ISO8859-15@euro
    de_DE.UTF-8
    de_DE.UTF-8@euro
    
    

    JUnit

    Back
    TestRunner Da nur ein TestRunner pro Klasse möglich ist, gibt es ein Problem, wenn man Mockito zusammen mit parametriesierten Tests laufen lassen will.
    Wie das geht steht hier: https://gist.github.com/bjacques/11064527
    Alles Logging ausschalten Ein Beispiel: /info/HowTo/AllesLoggingAus_Example.html

  17. Java Utilities

    UP

    Installation

    Es gibt für Windows ein Installationsprogramm, daß als "*.jar" ausgelieferte Programme installiert. Dieses Programm heißt javaw. Wenn auf dem PC eine Java-Installation existiert, ist mit der Dateiendung "jar" das Programm javaw verknüpft.

    Unter Unix gibt es dieses Programm nicht. Allerdings kann man unter Unix denselben Effekt erzielen, indem man java -jar aufruft.

    Beispiele (PC & Unix):

    javaw my_new_installation_file.jar
    java -jar my_new_installation_file.jar
    

    Quartz

    Internet: http://www.quartzscheduler.org/

    Wir haben Version 1.4.2. Man kann Quartz bekommen als:

    • quartz-1.4.2.zip
    • quartz-1.4.2.tar.gz


  18. Oracle

    UP

    Unterkapitel:


    Connect zur DB

    Back

    Beim Connect über Java braucht man den Port, auf dem der Oracle-Listener horcht.

    D.h. die Werte nach PORT sind alle nutzbar. Der Wert hinter SID ist der Name der DB.

    Beispiel:

    /home/users/myuser/trace> hostname
    welin020
    /home/users/myuser/trace> echo $ORA_SNET
    DPGEN_U450.world
    /home/users/myuser/trace> tnsping $ORA_SNET
    
    TNS Ping Utility for Linux: Version 9.2.0.1.0 - Production on 07-FEB-2007 11:34:17
    
    Copyright (c) 1997 Oracle Corporation.  All rights reserved.
    
    Parameterdateien benutzt:
    
    
    Adapter TNSNAMES zur Auflösung des Alias benutzt
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = TCP.world) (PROTOCOL = TCP) (Host = myhost) (Port = 1521)) (ADDRESS = (COMMUNITY = TCP.world) (PROTOCOL = TCP) (Host = myhost) (Port = 1526))) (CONNECT_DATA = (SID = DPGEN) (GLOBAL_NAME = DPGEN_myhost.world)))
    OK (10 ms)
    

    Das ist mit Zeilenumbrüchen:
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS =
    (COMMUNITY = TCP.world)
    (PROTOCOL = TCP)
    (Host = myhost)
    (Port = 1521)
    )
    (ADDRESS =
    (COMMUNITY = TCP.world)
    (PROTOCOL = TCP)
    (Host = myhost)
    (Port = 1526)
    )
    )
    (CONNECT_DATA =
    (SID = DPGEN)
    (GLOBAL_NAME = DPGEN_myhost.world)
    )
    )


    Start/Stop

    Back

    Bei uns gibt es im Home-Directory des Users "oracle" immer ein Start-Skript für den Datenbankserver selbst und ein Start-Skript für den Start der Listener.

    Beispiel:

    ora_start_9i.sh
    Startet alle bedienten Datenbanken. In diesem Skript gibt es einen Start-Aufruf (= Aufruf des Skripts bin/startup_9i.sql) für jede Datenbank.
    Die Listener werden am Ende des Skripts mit dem Aufruf
    lsnrctl start LISTENER_9I
    gestartet.
    listener_start_9i.sh
    Startet für alle Datenbanken die Listener, damit man auch von anderen Rechnern aus über SQLnet auf diese Datenbanken zugreifen kann.
    Dieses Skript muß nur dann aufgerufen werden, wenn vorher die Listener gestoppt wurden.

    Die Stop-Skripte stehen ebenfalls im Home-Directory des Users "oracle". Für jedes "*start*"-Skript gibt es auch ein "*stop*"-Skript.

    Konfiguration der Listener

    Die Konfiguration der Listener steht in der Datei
        $ORACLE_HOME/network/admin
    In dieser Datei gibt die Zeilen

    LISTENER =
    SID_LIST_LISTENER =
    

    Wenn man mehrere Oracle-Versionen auf einem Rechner hat, muß man "LISTENER" und "SID_LIST_LISTENER" umbenennen, sodaß die Listener-Listen der einzelnen Oracle-Versionen jeweils einen eindeutigen Namen haben. Bei uns verwendete Listener-Listen-Namen:

    • LISTENER_7 und SID_LIST_LISTENER_7
    • LISTENER_805 und SID_LIST_LISTENER_805
    • LISTENER und SID_LIST_LISTENER (für 8.1.7)
    • LISTENER_9I und SID_LIST_LISTENER_9I (für 9.2)


    Umlaute/Datumsformat

    Back

    Beispiel &für Umgebungsvariable für deutsche Sprache:

        setenv NLS_LANG GERMAN.WE8ISO8859P1
    

    Beispiel für SQL-Befehl für deutsches Datumsformat:

        alter session set NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS';
    

    Help

    Back

    Der Inhalt des Help steht als "insert into help values" in den Dateien unter

    $ORACLE_HOME/sqlplus/admin/help

    Formatierung

    Beispiel: In der DB Severity=0,1,2 (INT)
    man will aber Severity=E,W,I (CHAR)
    dann kann man statt "select severity" schreiben:

    SELECT DECODE(TO_CHAR(severity,'0','E','1','W','2','I'))

    ACHTUNG: Werte, die nicht in der "decode"-Liste stehen werden dann überhaupt nicht ausgegeben.

    Ändern des Passwords

    alter user my_user_name identified by my_new_password
    

    Bulk Load

    Oracle bulk loader: Beispieldateien in $ORACLE_HOME/rdbms/demo (z.B. "ulcase2.ctl" mit "ulcase2.dat")

    Beschreibung: http://www.orafaq.org/faqloadr.htm

    ???:

    sqlldr userid=$ORA_USER/$ORA_PASS@$ORA_SNET control=my.ctl bad=myout.bad log=myout.log DIRECT=TRUE errors=1000000
    


  19. Ingres

    UP

    Unterkapitel:


    Connect zur DB

    Back

    Damit man SQL-Befehle absetzten kann, müssen die Ingres-Executables wissen, wo die Ingres-Installation liegt. Dazu muß man die Umgebungsvariable II_SYSTEM setzen.

    Beispiel (je nach Shell und Installation unterschiedlich):
    setenv II_SYSTEM "/opt/Ingres/IngresII"
    oder
    export II_SYSTEM="/opt/Ingres/IngresII"


    Start/Stop

    Back

    <keine Infos>


    Umlaute/Datumsformat

    Back

    Beispiel für SQL-Befehl für deutsches Datumsformat:

        setenv II_DATE_FORMAT 'GERMAN'
    

    Zum editieren von SQL-Statements:

        setenv II_WINDOWEDIT 'xterm -T vi -e vi %f'
    

    Für ???

        setenv TERM_INGRES vt220ak
    

    Help

    Back

    ???

    Formatierung

    ???

    Ändern des Passwords

    alter user my_user_name identified by my_new_password
    

    Bulk Load

    ???


  20. SQL

    UP

    Alles, was hier steht geht auf jeden Fall mit Oracle. Einige SQL-Befehle sind u.U. Oracle-Erweiterungen, d.h. funktionieren u.U. bei anderen Datenbanken nicht.

    Das Programm "sqlplus" sucht im aktuellen Verzeichnis eine Datei namens "login.sql". Falls diese gefunden wird, werden alle Befehle, die in dieser Datei stehen ausgeführt.

    SHOW USER
    Der eigene User-Name wird ausgegeben. Kein SQL, sondern ein Oracle-Befehl.
    SPOOL my_file
    Alles, was danach auf dem Bildschirm ausgegeben wird, wird zusätzlich auch in Date "my_file" geschrieben. Kein SQL, sondern ein Oracle-Befehl.
    SPOOL OFF
    Schaltet das Spooling wieder aus. Kein SQL, sondern ein Oracle-Befehl.
    DESCR my_table
    Die Definition der Tabelle "my_table" wird ausgegeben. Kein SQL, sondern ein Oracle-Befehl.
    DESCR ALL_TABLES
    Die Definition aller (!) Tabelle des aktuellen Users werden ausgegeben. Kein SQL, sondern ein Oracle-Befehl.
    SELECT OWNER,TABLE_NAME FROM ALL_TABLES;
    Owner und Tabellenname aller (!) Tabellen werden ausgegeben. (Wenn man nicht DBA ist, werden nur die eigenen Tabellen und die von "SYS" ausgegeben.)  
    SELECT DISTINCT OWNER FROM ALL_TABLES;
    Alle Owner werden ausgegeben. (Wenn man nicht DBA ist, werden kommt da nur der eigene User und der User "SYS" raus.)  
    ALTER TABLE my_table ALTER COLUMN my_col TYPE VARCHAR24;
    Neuer Datentyp für die Spalte "my_col"  
    ALTER TABLE my_table ALTER COLUMN my_col TO renamed_my_col;
    Spalte "my_col" wird umbenannt.  


  21. SQuirrel

    UP

    Unterkapitel:


    Einrichten einer Ingres-DB in Squirrel

    Back

    In der Regel wird es noch keinen Driver für Ingres geben. Der Driver ist ein Jar-File namens iijdbc.jar und steht (je nach Installation) z.B. im Directory /opt/Ingres/IngresII/ingres/lib. Diese Datei muß man auf den Rechner kopieren, auf dem man Squirrel installiert hat. Dann kann man einen neuen Driver konfigurieren.

    • Mit Windows → View Drivers werden links im Squirrel-Fenster alle installierten Driver mit einem vorangestellten blauen Häkchen angezeigt. Nicht installierte Driver sind durch ein vorangestelltes rotes Kreuz markiert.
    • In der Icon-Leiste im “View Drivers”-Fenster auf das Plus-Zeichen klicken → Ein Pop-up namens “Add Driver” öffnet sich.
    • Hier muß folgendes konfiguriert werden:
      NameIngresein beliebiger Text
      Example URLjdbc:ingres://<ip_addr>:<port>/<dbname>der genaue Connect-String
      Website URL kann leer bleiben
      Extra Class Path<Directory in dem man die kopierte iijdbc.jar-Datei angelegt hat> 
      Class Namecom.ingres.jdbc.IngresDrivergenau dieser Klassenname

    Nun kann man eine DB-Verbindung konfigurieren.

    • Mit Windows → View Aliases werden links im Squirrel-Fenster alle konfigurierten DB-Verbindungen angezeigt.
    • In der Icon-Leiste im “View Aliases”-Fenster auf das Plus-Zeichen klicken → Ein Pop-up namens “Add Alias” öffnet sich.
    • Beispielkonfiguration:
      NameMDMein beliebiger Text
      DriverIngresDies ist der vorher konfigurierte Driver-Name und kann aus einer Liste ausgewählt werden.
      URLjdbc:ingres://10.1.8.12:21071/mdmDies ist der Connect-String
      User NameingresDB-User, dessen Tabellen man bearbeiten will
      PasswordingresPassword des DB-Users

  22. Eclipse

    UP

    Unterkapitel:


    Check-out & Check-in mit Eclipse

    Back

    WasWieBemerkungen
    Eigene Datei mit Library-Version überschreiben Rechte Maus auf den Dateinamen → Team → update 
    Neue Datei zum Projekt hinzufügen
    1. Neue Datei (und ggf. neues Directory) an die richtige Stelle auf die Festplatte schreiben,
    2. und dann in Eclipse auf “Refresh” klicken (oder F5-Taste)
     
       

  23. Subversion

    UP

    Unterkapitel:


    Setzen des “Id”-Tags mit Eclipse

    Back

    Eine gute Beschreibung steht bei http://www.hossainkhan.info/content/setting-cvs-id-tag-equivalent-svn-through-eclipse

    Die Schritte sind:

    • Datei in der Project-View auswählen
    • Rechte Maustaste → Team → Set Property
    • Im neuen Fenster:
      • Property name auf “svn:keywords“ setzen (sollte über Pull-down auswählbar sein)
      • Im Inputbereich unter “Enter a property value” den Text “Id” (natürlich ohne Hochkommata) eingeben
      • “OK”-Button drücken.
    • Danach wird in dieser Datei jedes(!) Vorkommen des Textes “$Id$” durch
      • den Dateinamen,
      • die Subversion-Versionsnummer,
      • das Check-in-Datum und Check-in-User ersetzt. Beispiel vor der Ersetzung:
        static char id[] = "$Id$" ;
        Beispiel nach der Ersetzung:
        static char id[] = "$Id: DgsDfx.cpp 2211 2012-11-15 14:09:35Z cma $" ;

  24. OFTP

    UP

    OFTP
    = Odette FTP
    = VDA 4914/2
    Produkt ODEX: Datenübertragung auf der Basis von ISDN oder X.25.


  25. Windows FTP

    UP

    Der Microsoft FTP-Daemon von XP ist:

    Dienstname
    MSFtpsvc
    Anzeigename
    FTP-Publishing
    Exe-Datei
    %SystemRoot%\system32\inetsrv\inetinfo.exe

    Man kommt bei XP dran über:
        Start -> Einstellungen -> Systemsteuerung -> Verwaltung -> Komponentendienste
    oder über:
        Start -> Programme -> Verwaltung -> Komponentendienste

    (FTP über einen Webbrowser ist hier beschrieben.)


  26. SSL, scp, SFTP, FTP/S usw.

    UP

    "Sicheres" Kopieren von Dateien

    ProtokollInfosLinks
    FTP over SSL,
    FTPS,
    FTP/S
    Es handelt sich hierbei um "normales" FTP, bei dem sowohl die Daten, die über den Kontroll-Kanal laufen, als auch die, die über den Daten-Kanal laufen, verschlüsselt übertragen werden. http://de.wikipedia.org/wiki/FTP_over_SSL
    Secure FTP Es handelt sich hierbei um "normales" FTP, bei dem nur die Daten, die über den Kontroll-Kanal laufen, verschlüsselt übertragen werden. http://de.wikipedia.org/wiki/Secure_FTP
    Secure Copy,
    SCP
    Secure Copy benutzt das SSH-Protokoll, um Dateien zu kopieren. D.h. eigentlich ist das kein eigenes Protokoll, sondern Secure Copy verhält sich genauso, wie beliebige andere Kommandos, die über SSH abgesetzt werden. http://de.wikipedia.org/wiki/Secure_Copy
    SSH File Transfer Protocol,
    SFTP
    Es handelt sich hierbei um ein eigenständiges Protokoll, das überhaupt nichts mit FTP zu tun hat. Alle Daten werden verschlüsselt übertragen. Die Implementierungen, die es für SFTP gibt, orientieren sich, was das User-Interface angeht, am FTP-User-Interface. http://de.wikipedia.org/wiki/SSH_File_Transfer_Protokol

  27. HTML usw.

    UP

    Eine Liste von Farbnamen, die i.d.R. unterstützt werden, kann man in der Unix-X11-Datei “rgb.txt” finden. Näheres dazu siehe hier.

    Einige interessante Sonderzeichen:

    & &amp;
     &euro;
    ® &reg;
    © &copy;
    « &laquo;
    » &raquo;
     &larr;
     &rarr;
    § &sect;
    · &middot;
     &hellip;

    Eine Liste von Sonderzeichen steht in Wikipedia: HTML-Sonderzeichen

    Links in die “Self-HTML”-Doku:


  28. PuTTY

    UP

    PuTTY ist ein Terminalprogramm für Sessions über SSH.

    In den Versionen

    • 0.53
    • 0.60

    stehen die "Saved Sessions" in der Registry unter

       HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions

    Man kann PuTTY auch direkt mit einer bestimmten "Saved Session" aufrufen:

       putty.exe -load MySavedSession
    

    Am besten nimmt man Session-Namen, die keine Leerzeichen enthalten.


  29. FTP

    UP

    FTP über Telnet

    Beispiel: Rename über Telnet

    Alle Zeilen mit Zahlen vorne dran kommen vom FTP-Server der Gegenstelle (im Beispiel also vom FTP-Server auf MyHost). Die Zahlen sind eindeutige Schlüsselwörter, der Text dahinter ist je nach Betriebssystem bzw. FTP-Server unterschiedlich.

    /usr/users/xyz> telnet MyHost ftp
    Trying 1.2.3.4...
    Connected to MyHost.x.de.
    Escape character is '^]'.
    220 MyHost FTP server (SunOS 5.8) ready.
    user myserveruser
    331 Password required for myserveruser.
    pass hier_kommt_das_password_hin
    230 User myserveruser logged in.
    RNFR temp/hallo.txt
    350 File exists, ready for destination name
    RNTO temp/hallo.renamed
    250 RNTO command successful.
    quit
    221 Goodbye.
    Connection closed by foreign host.
    

    Beispiel: List über Telnet

    Alle Zeilen mit Zahlen vorne dran kommen vom FTP-Server der Gegenstelle (im Beispiel also vom FTP-Server auf MyHost). Die Zahlen sind eindeutige Schlüsselwörter, der Text dahinter ist je nach Betriebssystem bzw. FTP-Server unterschiedlich.

    Beim LIST muß man 2 Telnet-Sessions verwenden. Die erste ist zum Absetzen der Kommandos, die zweite für die Ausgabe des angeforderten LIST.

    Erstes Telnet:

    /usr/users/xyz> telnet MyHost ftp
    Trying 11.22.33.44...
    Connected to MyHost.x.de.
    Escape character is '^]'.
    220 MyHost FTP server (SunOS 5.8) ready.
    user myserveruser
    331 Password required for myserveruser.
    pass hier_kommt_das_password_hin
    230 User myserveruser logged in.
    pasv
    227 Entering Passive Mode (11,22,33,44,220,224)
    

    jetzt das zweite Telnet aufmachen zu Port 220 * 256 + 224

    list .login
    150 ASCII data connection for /bin/ls (11.22.33.44,4961) (0 bytes).
    226 ASCII Transfer complete.
    quit
    221 Goodbye.
    Connection closed by foreign host.
    

    Zweites Telnet:

    /usr/users/xyz> telnet MyHost 56544
    Trying 11.22.33.44...
    Connected to MyHost.x.de.
    Escape character is '^]'.
    -rw-rw-rw-   1 myserveruser      users     118359 Jan 18 10:06 .login
    Connection closed by foreign host.
    

  30. Barcodes (Tools & Infos)

    UP

  31. Xtext

    UP

    Unterkapitel:


    Preferences-Seite für Xtext-Eclipse-Plugin hinzufügen

    Back

    Xtext-Sprache = "mydsl"; Package = "de.mycompany.mydsl"

    • zusätzliche Import Packages, MANIFEST.MF mit Plug-in-Editor öffnen, Tab Dependencies, Sub-Fenster Import Packages
      • org.eclipse.core.runtime.preferences
      • org.eclipse.jface.preference
      • org.eclipse.xtext.ui.editor.preferences
      • org.osgi.service.prefs
    • de.mycompany.mydsl
      • neues Directory src/de/mycompany/mydsl/preferences mit:
        • PreferenceInitializer.java; Inhalt:
          • extends AbstractPreferenceInitializer
          • @Override public void initializeDefaultPreferences() {
            getPreferenceStore().put(MyDslPreferences.P_MYSTRINGPARAM, MyDslPreferences.DEFAULT_MYSTRINGPARAM);
            }
          • public static IEclipsePreferences getPreferenceStore() {return DefaultScope.INSTANCE.getNode(MyDslPreferences.MYDSL_PREFSTORE_QUALIFIER);}
        • MyDslPreferences.java; Inhalt:
          • Konstanten
            • public static final String MYDSL_PREFSTORE_QUALIFIER = "de.mycompany.mydsl";
            • public static final String P_MYSTRINGPARAM = "mydslVersionPreference";
            • public static final String DEFAULT_MYSTRINGPARAM = "myDefaultString";
          • Im Plugin gespeicherte Daten holen
            • public static String getMyImportantValue() {
                IEclipsePreferences prefStore = getPreferenceStore();
                return prefStore.get(P_MYSTRINGPARAM, DEFAULT_MYSTRINGPARAM);
              }
          • public static IEclipsePreferences getPreferenceStore(){return InstanceScope.INSTANCE.getNode(MYDSL_PREFSTORE_QUALIFIER);}
    • de.mycompany.mydsl.ui, plugin.xml, Tab plugin.xml
      • Beschreibung der im XML verwendeten Plugin-Params
        • category="de.mycompany.mydsl.MyDsl": kommt von der Xtext-Preferences-Seite
        • class : die in de.mycompany.mydsl.ui implementierte Klasse, der Name ist egal
        • id : muss eindeutig sein, ansonsten egal
        • name : Titel, der auf der Preferences-Seite erscheint
        • initializer class : die in de.mycompany.mydsl definierte Init-Klasse, Name ist egal
      • ausgefüllt sieht das dann so aus (ganz am Ende, vor </plugin> hinzufügen)
        • <!-- mycompany Preferences-Seite -->
          <extension point="org.eclipse.ui.preferencePages">
            <page category="de.mycompany.mydsl.MyDsl"
              class="de.mycompany.mydsl.ui.addons.preferences.TextPreferencePage"
              id="de.mycompany.mydsl.ui.addons.preferences.TextPreferencePage"
              name="Mein Preferences-Titel">
            </page>
          </extension>
          <extension point="org.eclipse.core.runtime.preferences">
            <initializer class="de.mycompany.mydsl.preferences.PreferenceInitializer">
          </extension>
    • de.mycompany.mydsl.ui, neues Directory src/de/mycompany/mydsl/ui/addons mit folgendem Inhalt anlegen
      • Activator.java extends AbstractUIPlugin
      • Konstanten
        • public static final String PLUGIN_ID = MyDslPreferences.MYDSL_PREFSTORE_QUALIFIER;
        • private static Activator plugin;
      • Methoden (alles Standard)
        • public void start(BundleContext context) {super.start(context);plugin = this;}
        • public void stop(BundleContext context) {plugin = null;super.stop(context);}
        • public static Activator getDefault() { return plugin; }
      • neues Subdirectory preferences mit TextPreferencePage.java
        • TextPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage
        • Methoden
          • public TextPreferencePage() {
              super(GRID);
              IPreferenceStore store = new ScopedPreferenceStore(InstanceScope.INSTANCE, MyDslPreferences.MYDSL_PREFSTORE_QUALIFIER);
              setPreferenceStore(store);
              setDescription("MyDsl Validator Preference"); // Dieser Text kommt oben aus der Preferences-Seite
            }
          • public void createFieldEditors() {
              // Das, was auf die Seite drauf soll:
              addField(new StringFieldEditor(MyDslPreferences.P_MYSTRINGPARAM, "&Meine Parameterbeschreibung", getFieldEditorParent()));
            }
          • public void init(IWorkbench workbench) {}