Update auf Snow-Leopard schlägt fehl

Auf meinem MacbookPro habe ich neben OSX auch Ubuntu intsalliert. Gestern wollte ich auf diesem Book das OSX nach Snow-Leopard updaten, doch leider meldet das Installationsprogramm

“Installation nicht möglich. Von der Partition kann nicht gestartet werden.”

Nach etwas Lektüre im Internet habe ich herausgefunden, dass das OSX-Installationsprogramm mindesten 128MB freien Platz hinter der OSX-Partition benötigt. Dieser Platz wird von Bootcamp automatisch angelegt, ich hab ihn aber (da ich nicht wusste wofür der gut sein soll) gelöscht und der Ubuntu-Partition zugeordnet.

Also, man muss von der Snow-Leopard-DVD booten, dann das Festplattendienstprogramm starten und die OSX-Partition um mindestens 128MB verkleinern. Danach lässt sich SnowLeo installieren.

Posted in Mac OSX, ubuntuusers | Tagged | Leave a comment

Einen Ubuntu-Live-USB-Stick für Apple’s Intel-Mac erstellen

Eine UBUNTU-Live-CD ist etwas sehr schönes, wenn man denn ein funktionierendes optisches Laufwerk hat. Meines ist etwas in die Jahre gekommen, und so benötigt mein MacPro im Schnitt 4 Versuche, bis er beim Neustart die CD erkennt und davon booten kann. Daher kann es von Vorteil sein, sich die Live-CD auf einen USB-Stick zu kopieren und dann von eben diesem Stick zu booten.

Bei “normalen” PCs funktioniert dies recht einfach über die Ubuntu-Hausmittel. Über “System => Systemverwaltung” erreicht man den “USB-Startmedien-Ersteller”, der ein .ISO-Image auf einen USB-Stick klont. So können “normale” PCs vom Stick booten.

Wie so oft geht Apple hier aber eigene Wege, so dass diese Sticks an Intel-Macs leider nicht booten wollen. Lediglich “OSX”-Sticks oder “OSX”-USB-Festplatten lassen sich per rEFIt oder per “ALT”-Taste booten.

Dennoch habe ich in den englischen Ubuntuforums Hilfe erhalten. Die Jungs aus diesem Thread entwickeln den GRUB2EFI-Bootloader. Dieser ermöglicht es, USB-Partitionen zu booten, egal ob USB-Live-Sticks, USB-Stick-Installationen oder USB-Festplatten. Ich beschreibe hier “nur” die Erstellung eines UBUNT-Live-Sticks. Andere Distriubtionen benötigen leicht andere Konfigurationen. Informationen hierzu bietet der besagte Thread bei Ubuntuforums.com.

Erschwerend kommt hinzu, dass die Methode auch von der Apple-Hardware abhängt. Bei mir funktioniert die folgende Anleitung auf einem MacPro1,1 und einem MacbookPro4,1
Welche Hardware man benutzt erfährt man unter Apfel => Über diesen Mac => Weitere Informationen bzw. unter Ubuntu per

sudo dmidecode -s system-product-name

Besitzer anderer Modelle finden im oben genannten Foreneintrag Hilfe.

So geht’s bei mir:

  1. Starte OSX und installiere rEFIt
  2. Spätestens nach dem zweiten Neustart meldet sich das rEFIt-Menü und fragt nach, was denn gebootet werden soll (Wenn du bereits Ubuntu installiert hast, kennst du das ja.. :) )
  3. Formatiere einen USB-Stick (meiner ist ein fünf Euro Stick mit 2GB) komplett mit FAT32
  4. Lade dir die Datei bootusb.tar.gz herunter und entpacke den Ordner efi auf den USB-Stick. Dieser Ordner enthält den Unterordner boot, in welchem 3 Dateien liegen.
  5. Jetzt kommt es darauf an, welchen Intel-Mac du besitzt. Meine Modelle (MacPro1,1 und MacbookPro4,1) sind alle 64bit-fähig. Ältere Modelle, wie z.B. das Macbook2,1 benötigen ein 32bit System.
  6. 64bit
    • Lade dir ein aktuelles 64bit-Ubuntu-ISO herunter, z.B. ubuntu-9.04-desktop-amd64.iso
    • Die ISO-Datei wird genau so wie sie ist (also ohne sie zu entpacken) auf den USB-Stick geschoben. Der Stick enthält nun also das ISO-Image und den efi-Ordner.
    • Im Unterordner efi/boot/ liegt die Datei grub.cfg. Öffne diese im Terminal und schau nach, ob die Einträge mit dem Namen des ISO-Images übereinstimmen (voreingestellt habe ich “ubuntu-9.04-desktop-amd64.iso“). Wenn der ISO-Name abweicht (z.B. weil du ein Karmic-Image verwenden möchtest), muss das in dieser Datei entsprechend angepasst werden.
    • Das war’s, wenn du jetzt rebootest, dann siehst du im rEFIt-Menü deinen USB-Stick. Wenn du diesen auswählst, erscheint das GRUB2-Bootmenü (ein roter Bildschirm), an welchem du das Bootsystem auswählen kannst (ich verwende hier “A”). Danach rödelt der Mac ein wenig, man könnte meinen, dass er hängt, aber dann ist nach kurzer Zeit Ubuntu hochgefahren! Jedenfalls gilt das für den MacPro1,1. Für das MacbookPro4,1 sind weitere Konfigurationen notwendig (s.u.)
  7. 32bit
    • Für 32bit-Systeme (funktioniert bei meinem Macs auch) kopiert man auch erst den efi-Ordner auf den USB-Stick. Allerdings muss nun im Unterordner boot die Datei “bootx64.efi” in “bootia32.efi” umbenannt werden. Dies gilt auch für das Icon “bootx64.incs”, welches in “bootia32.icns” umbenannt wird.
    • Lade dir nun ein 32bit-ISO-Image, z.B. ubuntu-9.04-desktop-i386.iso
    • Auch hier muss einfach das ISO-Image in den Hauptordner des USB-Sticks geschoben werden (ohne es zu entpacken!).
    • Anschließend muss auf dem Stick im Ordner efi/boot/ die Datei grub.cfg editiert werden. Dort ersetzt du alle Einträge “ubuntu-9.04-desktop-amd64.iso” durch den Dateinamen deines ISO-Images, also z.B. durch ubuntu-9.04-desktop-i386.iso
    • Das war’s, wenn du jetzt rebootest, dann siehst du im rEFIt-Menü deinen USB-Stick. Wenn du diesen auswählst, kommt ein roter Bildschirm, an welchem du das Bootsystem auswählen kannst (ich verwende hier “A”). Danach rödelt der Mac ein wenig, man könnte meinen, dass er hängt, aber dann ist nach kurzer Zeit Ubuntu hochgefahren!

MacbookPro4,1
Ein MacbookPro4,1 benötigt einige Anpassungen. Zunächst muss in grub.cfg für die Einträge A-C jeweils unter fakebios zusätzlich fix_video geschrieben werden. Somit sieht Eintrag A beispielsweise so aus:

menuentry "A ubuntu-9.04-desktop-amd64.iso " {
 fakebios
 fix_video
 search --set -f /ubuntu-9.04-desktop-amd64.iso
 loopback loop /ubuntu-9.04-desktop-amd64.iso
 linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-9.04-desktop-amd64.iso noefi
 initrd (loop)/casper/initrd.gz
}

Man startet den Mac mittels USB-Stick und der Auswahl “B ubuntu-9.04-desktop-amd64.iso fbdev“. Wenn Ubuntu in die Kommandozeile gestartet ist, tippt man dort folgendes ein um den GNOME Display Manager zu stoppen:

sudo /etc/init.d/gdm stop

Jetzt muss die Datei /etc/X11/xorg.conf angepasst werden. Hierzu verwendet man z.B. den Editor nano:

sudo nano /etc/X11/xorg.conf

Hier ergänzt man die Section "Device" um den Eintrag Driver "fbdev":

Section "Device"
(...)
Driver "fbdev"
(...)
EndSection

Die Datei wird per Strg O gespeichert und nano per Strg X beendet.

Anschließend wird der GNOME Display Manager neu gestartet:

sudo /etc/init.d/gdm restart

Das graphische Live-System fährt hoch!

Super Sache, aber ohne die Hilfe des Users pxwpxw hätte ich das nie herausgefunden, und wie gesagt: in den Threads wird auch beschrieben, wie man mit anderen Modellen andere Systeme auf anderen USB-Medien bootet!

weitere Links

Posted in Mac OSX, Ubuntu, ubuntuusers | Tagged , | 15 Comments

.ISO nach .DMG konvertieren

Am Apple geht dies recht einfach per Terminal.

Der Befehl lautet:

hdiutil convert "/Pfad/zu/name.iso" -format UDRW -o "/Pfad/zu/output.dmg"

Posted in Mac OSX | Tagged | 1 Comment

Umstieg von OSX auf Ubuntu

Jahrelang habe ich ausschließlich mit OSX-Maschinen gearbeitet. Angefangen hat alles mit Mac OS 10.0 – ein UNIX-System mit “graphischer Apple-Oberfläche”, welches ich mir niemals selber so schön hätte zusammenkonfigurieren können. In den letzten Monaten habe ich vermehrt mit UBUNTU herumgespielt (Installationsanleitung für MacBookPro und MacPro). Was soll ich sagen, ich bin richtig begeistert!
Mittlerweile spricht aus meiner Sicht her lediglich die tolle Hardware für den Kauf eines Apples. An Programmen habe ich auch unter OSX immer mehr auf freie Software gesetzt – Mail, iCal und Adressbuch ausgenommen.

Seit ich mehr und mehr mit Ubuntu herumspiele, versuche ich natürlich auch, alle von mir “lieb gewonnenen” Funktionen und Programme unter Linux zu “simulieren”. Hier also meine (vorläufige) Liste:

Apple Ubuntu
Adressbuch Thunderbird Adressbuch (hier ist eine Anleitung, wie man das OSX-Adressbuch in Thunderbird importieren kann.) mit dem Add-on “Addressbooks Synchronizer
Cyberduck gFTP
sudo apt-get install gftp
Dock cairo-dock oder simdock
sudo apt-get install cairo-dock simdock
EndNote Mendeley (funktioniert auch ohne Account)
/etc/apt/sources.list bekommt folgende neue Quelle:
deb http://www.mendeley.com/repositories/xUbuntu_9.04 /
danach:
sudo apt-get update
sudo apt-get install mendeleydesktop
iCal Sundbird und Lightning, zusätzlich Calendarserver (derzeit in Jaunty defekt!) zum synchronisieren
Lightning ist eine Erweiterung für Thunderbird, mit dem Add-on SyncKolab können die Kalender zwischen verschiedenen Rechnern per IMAP-Mailordner gesynct werden
sudo apt-get install lightning sunbird calendarserver
iChat Pigdin (standarmäßig installiert)
iTunes aTunes oder Songbird
Mail Thunderbird, mit den Add-Ons “Leopard Mail-Default Aqua” und “Addressbooks Synchronizer
sudo apt-get install thunderbird lightning
Pastor Revelation
sudo apt-get install revelation
Parallels VirtualBox
Photo Booth Cheese
sudo apt-get install cheese
Photoshop Gimp
sudo apt-get install gimp
SynchronizePro! rsync und unison
sudo apt-get install rsync grsync unison unison-gtk
TexShop TeXmaker oder Kile (benötigt Kubuntu)
sudo apt-get install kile texmaker
TimeMachine TimeVault(gutes HowTo) oder BackInTime

Ausserdem benutze ich noch diese Programmpakete

Posted in Mac OSX, Ubuntu, ubuntuusers | Tagged , | Leave a comment

*.cdr nach *.iso konvertieren

Ich habe auf meinen Apple-Maschinen jede Menge Disk-Images angelegt. Alle haben hierbei die Endung .cdr

Da ich nun zunehmend mit Ubuntu herumspiele, stand ich vor dem Problem, dass Ubuntu mit .cdr-Dateien anscheinend nichts anfangen kann. Nunja, der Trick an der ganzen Sache ist: man muss die Datei Image.cdr einfach in Image.iso umbenennen, schon funktioniert es. Die Imagestruktur beider “Formate” ist identisch, nur dass Apple die Endung .cdr an Stelle von .iso verwendet.

Seltsam – aber wahr…

Posted in Mac OSX, Ubuntu, ubuntuusers | Tagged , | Leave a comment

Apple’s Lexikon pimpen

Auf jedem Mac ist das Programm “Lexikon” installiert. Wenn man es überhaupt mal zufällig gestartet hat, hat man es sehr wahrscheinlich als “für mich unwichtig” abgestempelt und nie wieder angerührt. Das mag u.a. daran liegen, dass es standardmäßig aussschließlich in englischer Sprache vorhanden ist. Dank des Programmierers Wolfgang Reszel kann sich dies nun ändern, denn auf dessen Webseite stehen 2 interessante Plugins für das Lexikon kostenlos zur Verfügung:

Hat man beide Plugins installiert, sind sie im Lexikon als Quelle verfügbar.

OpenThesaurus Deutsch
Damit auch wirklich deutsche Begriffe als erstes gefunden/angezeigt werden, muss man die Einstellungen des Lexikons öffnen. Die Reihenfolge der Liste bestimmt auch die Reihenfolge des suchens und anzeigens. Man sollte daher das OpenthesaurusDeutsch-Plugin nach ganz oben schieben.

Deutsch-English
In der Liste (unter Einstellungen) habe ich als zweiten Eintrag das Deutsch-Englisch-Plugin gewählt.
Durch die Reihenfolge dieser Liste wird auch die Reiter-Reihenfolge im Fensterkopf des Lexikons bestimmt. Dort klickt man nun auf den Reiter “Deutsch-Englisch” um das Plugin zu aktivieren.

Wikipedia
Wenn wir schon in den Einstellungen des Lexikons herumwurschteln, lohnt es sich, den standardmäßig vorhandenen Wikipedia-Eintrag mit nach oben zu verschieben. Netterweise ist die deutsche Wikipedia voreingestellt. Ist der Wikipedia-Reiter in der Lexikon-Kopfzeile ausgewählt, wird für jeden Suchbegriff die entsprechende Wikipedia-Seite angezeigt.

Kopfzeile des Lexikons

Kopfzeile des Lexikons


Wenn man des öfteren in der Wikipedia nachschlägt, bietet sich das Lexikon besonders an, da es schneller operiert als ein Webbrowser. Verblüffend, ich zumindest kannte dieses Feature noch nicht.

Posted in Mac OSX | Tagged | Leave a comment

Free Nomachine-NX auf UBUNTU 9.04 installieren

Ich hab ja vor einigen Tagen schon den UBUNTU-VNC-Server (vino) gegen x11vnc ausgetauscht. Auf Grund eines erhöhten Spieltriebs versuche ich nun noch eine Alternative: FreeNX. Hierzu wird ein FreeNomachine-NX-Server auf der UBUNTU-Kiste, und ein Free NX-Client auf dem Mac installiert. Das Ganze soll dann noch flotter laufen als VNC. Als weitere Vorteile wären noch zu nennen:

  • Die Verbindung erfolgt direkt per ssh. Bei VNC musste ich immer noch per ssh-Tunnel die Ports 5900 an Server und Client miteinander verbinden.
  • Der Server funktioniert auch dann, wenn der User sich noch nicht bei GNOME angemeldet hat. Somit kann eine evtl. aktivierte automatische Anmeldung wieder deaktiviert werden.

Also frisch ans Werk.

Vorbereitung

  • Wie bei VNC ist es auch für FreeNomachine-NX vorteilhaft, wenn ein so genannter dynDNS-Eintrag (kostenlos) für deine Internetverbindung existiert. Die meisten Router verstehen sich gut mit dynDNS.org. Durch so einen Eintrag wird eine von dir gewählte Adresse (z.B. MeinNickname.dyndns.org) automatisch mit deiner derzeitigen Internet-IP-Adresse synchronisiert. Das heisst: dein lokales Netzwerk zu hause ist immer über diese Adresse im Internet erreichbar!
  • Stelle deinen Router so ein, dass Port 22 an die lokale IP des UBUNTU-PC weitergereicht wird.

So, jetzt geht’s aber los:

1. Free Nomachine-NX-Server auf Ubuntu installieren

  1. Installiere – sofern noch nicht vorhanden – denn ssh-Server per
    sudo apt-get install openssh-server

  2. Anschließend geht man auf die NoMachine-Seite, und läd sich von der Seite “NX Free Edition for Linux” folgende Pakete aus dem “Linux DEB - i386“-Release herunter:
    • NX Client for Linux
    • NX Node for Linux
    • NX Free Edition for Linux
  3. welchsle mit Terminal in den Ordner, in welchen du die Dateien heruntergeladen hast. Installiert werden die Pakete nun mit:

    sudo dpkg -i nxclient_3.3.0-6_i386.deb
    sudo dpkg -i nxnode_3.3.0-17_i386.deb
    sudo dpkg -i nxserver_3.3.0-22_i386.deb

  4. Der NX-Server sollte nun schon laufen. Mit folgenden Befehlen kann er (neu)gestartet und gestoppt werden:
    sudo /usr/NX/bin/nxserver --restart
    sudo /usr/NX/bin/nxserver --start
    sudo /usr/NX/bin/nxserver --stop

2. Free Nomachine-NX-Client auf dem Mac installieren
Hole dir den aktuellen Client von der NoMachine-Webseite.
Beim ersten Start des NX Clients wird automatisch ein Einrichtungs-Assistent gestartet, der schrittweise die wichtigsten Informationen entgegennimmt.

  • Zunächst benötigt die zu erstellende Session einen (beliebigen) Namen. Über das Internet lautet die Hostadresse meinnickname.dyndns.org (sofern ein DynDns.org-Account eingerichtet ist). Im lokalen Netzwerk ist der Rechner über seine lokale IP-Adresse erreichbar.
  • Falls nicht voreingestellt, muss hier in den Dropdownlisten ‘unix’ und ‘Gnome’ ausgewählt werden.
  • Alle Einstellungen können später noch geändert und erheblich verfeinert werden. In den meisten Fällen sollte das aber nicht nötig sein.

Fertig. Jetzt sollte man sich über den Mac-Client auf die Ubuntu-Kiste verbinden können!

Fazit
Ich bin echt begeistert, x11vnc läuft bei mir schon recht zügig, aber Free Nomachine-NX rennt nun wirklich sau-schnell. Auch die Verbindung übers Internet erfolgt hier bei mir quasi in Echtzeit. Damit schicke ich VNC nun endgültig in Rente.. ;-)

 


weiterführende Links

Posted in Mac OSX, Ubuntu | Tagged , | 1 Comment

UBUNTU 9.04 auf einem MacPro installieren

Ich habe einen MacPro mit 2 Festplatten. Auf der ersten läuft OSX, die zweite nutze ich für Timemachine. Da noch jede Menge Platz auf der zweiten Platte frei ist, installiere ich UBUNTU 9.04 als zweites System. Geplant ist, dass ich beim Booten zwischen OSX und UBUNTU wählen kann (Eine Anleitung zur Installation auf einem MacbookPro findet sich hier).

Und so geht’s (besten Dank an TheInfinity aus dem ubuntu-de IRC):

  1. Besorge dir die aktuelle UBUNTU-Desktop-CD. Ein ISO-Image dieser CD kannst du z.B. hier downloaden und auf CD brennen
  2. Starte unter OSX das Festplattendienstprogramm. Dieses liegt im Ordner Programme/Dienstprogramme
  3. Wähle in der linken Spalte die Festplatte aus, auf welcher UBUNTU installiert werden soll. Bei mir ist das die Festplatte, auf der auch TimeMachine die Backups ablegt. Diese soll nun eine eigene UBUNTU-Partition bekommen. Hierfür wählt man den Reiter “Partitionieren” und klickt dann unten auf das “+”-Zeichen. Jetzt kann man die neu entstandene Partition in ihrer Größe verändern. Ich habe mal 100GB eingestellt. Als Format wählt man “Mac OS Extended (Journaled)” und klickt dann auf “Anwenden”. Das Festplattendienstprogramm fängt nun an zu rattern. Dieser Vorgang kann ziemlich lange dauern – keine Angst also, wenn sich scheinbar nichts mehr tut.
  4. Ist die neue Partition erstellt, sollte sie auch direkt im Finder als “neue” Festplatte erscheinen. Du kannst das Festplattendienstprogramm nun schließen.
  5. Jetzt installiert man rEFIt
  6. Lege nun die UBUNTU-Desktop-CD ein und starte den Mac neu. Beim ersten Neustart kann es passieren, dass rEFIt noch nicht läuft, und OSX direkt wieder hochfährt. In diesem Fall wählt man einfach erneut “Neustart”. Jetzt sollte sich rEFIt beim Booten melden. Wähle im rEFIt-Menü ganz rechts die Option “Boot Linux from CD” (Pinguin). Es sollte nun die CD booten, welche sich mit dem UBUNTU-Menü meldet. Ihr könnt gerne zunächst “UBUNTU ausprobieren”. Ich habe direkt “Installieren” gewählt.
  7. Die Installationsangaben (Sprache, Uhrzeit, Tastatur) sind soweit selbsterklärend. Wichtig ist erst die Stelle “Partitionierung”. Hier wählt man “Manuell festlegen”. In der erscheinenden Partitionstabelle sind alle Festplatten mit ihren Partitionen aufgelistet. Hier wählt man die UBUNTU-Partition aus (ich hab sie an der Größe der Festplatt 500GB und der Größe der Partition 100GB erkannt). Ihr solltet euch die Bezeichnung der Partition (z.B. /dev/sdb3) unbedingt merken! Die wird später noch benötigt!
  8. Wähle also die Partition aus und klicke auf “Partition bearbeiten”. Hier stellst du unter “Benutzen als”: Ext3 ein. Als “Einhängepunkt” wählst du “/“, machst ein Häkchen bei “Formatieren” und klickst OK.
  9. Wähle die Partition aus und klicke auf “Vor”.
  10. UBUNUTU fragt dann noch nach, wie es mit einer SWAP-Partition wäre, was aber von uns ignoriert wird, da wir später ein SWAP-File einrichten.
  11. Gebe nun deine Userdaten ein und klicke dich zur “Zusammenfassung”. Hier wählst du unten “bearbeiten” aus. Es öffnet sich ein Fenster, und du siehst nun einen Haken bei “Bootloader installieren” und eine Übersicht der Partitionen. Wähle hier auf keinen Fall “Mac OSX” aus! Die gesuchte Partition ist diejenige, die wir uns oben bei der manuellen Partionierung gemerkt haben (bei mir ist das /dev/sdb3)
  12. Nun kann man “Ok” und “Installieren” klicken.
  13. Den Beliebtheitswettbewerb und die Proxy-Einstellungen hab ich leer gelassen (da ich kein Proxy nutze).
  14. UBUNUTU installiert nun (bei mir) sauber durch. Zum Schluss wird neu gestartet und die CD entfernt.
  15. rEFIt bootet hoch. In der Mitte steht bei mir “Boot Linux from HD”. Das war’s! UBUNTU fährt hoch!
  16. Kann sein, dass es bei euch mit “Boot Linux from HD” funktioniert, bei mir funktioniert diese Option allerdings nicht! Wenn ich die auswähle, bekomme ich einen schwarzen Bildschirm mit wild blinkendem Cursor angezeigt – sonst nix. Kein Grub, nur schwarz. Das mag daran liegen, dass ich vor 6 Monaten schonmal erfolglos versucht habe Linux zu installieren. Der Eintrag ist sehr wahrscheinlich ein Rudiment dieses Fehlversuchs.

    Im rEFIt-Menü ganz rechts sitzt noch ein Pinguin. Hier heißt es “Boot Linux from Partition 3″. Wenn ich diese Option wähle, dann sehe ich Grub und UBUNTU fährt hoch! Juchu!

Links

Posted in Mac OSX, Ubuntu | Tagged , | Leave a comment

Per VNC auf UBUNTU zugreifen

Wie schon erwähnt habe ich UBUNTU 8.10 auf meinem alten Video-PC installiert. Da die Kiste im Dachgeschoss steht, würde ich sie gerne per VNC steuern. UBUNTU bringt von Hause aus einen VNC-Server mit, der per “System => Einstellungen => Entfernter Desktop” scharfgeschaltet werden kann. Der Server, der hier von UBUNTU genutzt wird, heisst vino und bringt einige Nachteile mit sich:

  1. die Einstellungsmöglichkeiten sind vergleichsweise dürftig
  2. Er läuft selbst im LAN sehr träge!
    • Wenn ich mich mit OSX per Chicken of the VNC zu UBUNTU verbinde, kann es bis zu 30 Sekunden dauern, bis meine Mausbewegungen und Befehle übertragen sind bzw. das Bild aufgebaut ist.
    • Unter Leopard läuft das ein wenig (wirklich nur ein wenig) besser, wenn ich nicht per Chicken zugreife, sondern mit dem Apple-eigenen VNS-Viewer (im Finder unter der Leiste “Freigabe” beim UBUNTU-Rechner auf “Bildschirm steuern” klicken).
    • Es kann ein wenig helfen, wenn man bei UBUNTU die Desktop-Effekte abschaltet (System => Einstellungen => Erscheinungsbild => Reiter “Visuelle Effkte”) und das Hintergrundbild nicht mitüberträgt
  3. die Zwischenablage wird nicht zwischen den Rechnern synchronisiert

Das ist sehr ärgerlich, denn die OSX-Bildschirmsteuerung (von OSX zu OSX) ist selbst dann super schnell, wenn das Bild von 2 angeschlossenen Monitoren übertragen wird.

[Wenn man nun ganz auf VNC verzichten möchte, kann man es mit der Alternative “FreeNX” versuchen, welche viel schnellere Übertragungen bietet und recht einfach installiert werden kann.]

Nunja, ich wollte zunächst jedoch bei VNC bleiben und habe daher einen alternativen VNC-Server auf dem UBUNTU-Rechner installiert: x11vnc in Kombination mit autocutsel. Letzteres synchronisiert die Zwischenablage und funktioniert evtl. auch bei vino.)
Und das geht so:

  1. Setze dich an den UBUNTU-PC und öffne ein Terminalfenster
  2. Installiere (falls noch nicht vorhanden) openssh-server per Terminaleingabe:

    sudo apt-get install openssh-server

    SSH ermöglicht es dir, per Terminal von OSX aus auf die Kommandozeile von UBUNTU zuzugreifen. Somit kann man den Rechner auch dann steuern, wenn VNC mal “streikt”. Ist auf jeden Fall gut, wenn man sich SSH einrichtet

  3. Entferne vino vom System per

    sudo apt-get remove vino

  4. Installiere x11vnc und autocutsel per

    sudo apt-get install x11vnc autocutsel

  5. Gehe an deinen OSX-Rechner und öffne ein Terminal-Fenster. Per SSH kann man sich nun bei dem UBUNTU-Rechner anmelden:

    ssh UBUNTU

    wobei UBUNTU durch die lokale IP-Adresse des UBUNTU-PCs ersetzt werden muss. Voraussetzung hierbei ist, dass du einen Benutzeraccount am UBUNTU-Rechner hast. Sollte der Username von deinem OSX-Kurznamen abweichen, musst du folgendes eintippen:

    ssh USER@UBUNTU

    wobei USER durch deinen UBUNTU-Usernamen ersetzen musst. Du wirst nun aufgefordert, das Passwort des Ubuntu-Users einzutippen. Tue dies und wundere dich nicht, dass keine Symbole (z.B. ****) erscheinen. Tippe dein Passwort ein und drücke die RETURN-Taste. Voila, du bist nun mit dem UBUNTU-PC verbunden.

  6. Versuche nun x11vnc zu starten. Hierfür tippst du folgendes ein:

    x11vnc -display :0

    Hierdurch wird x11vnc gestartet, und der Bildschirm 0 (Standard-Monitor) wird versendet (wenn z.B. zwei Monitore angeschlossen sind, wäre Display 1 die Nummer des zweiten Monitors). Auf der Konsole werden nun einige Logdaten ausgegeben. Am Ende sollte etwas in dieser Art stehen:

    screen setup finished.
    PORT=5901

    Der letzte Eintrag ist der wichtige: Der Bildschirminhalt wird über Port 5901 übertragen (der Standardport wäre eigentlich 5900, aber anscheined hat vino (bei mir zumindest) diesen Port für sich reserviert. Nuja, egal).

  7. Öffne nun Chicken of the VNC und verbinde dich zum UBUNTU-Pc, wobei du bei Host die lokale IP-Adresse von UBUNTU, und bei Display die 1 einträgst (der Anfang der Portnummer, also 590, wird vom Chicken automatisch hinzugefügt. Da unser UBUNTU auf Port 5901 sendet, muss nur die 1 eingetragen werden. Bei Port 5900 müsstest du die 0 eintragen).
  8. Funktioniert? Ja, super!
  9. Du kannst die Freigabe des Bildschirms noch durch ein Passwort absichern. Hierzu musst du am UBUNTU-PC folgendes eintippen:
    x11vnc -storepasswd

    Das Passwort musst du 2mal eingeben. Anschließend wird es (automatisch) in ~/.vnc/passwd gespeichert. Um das Passwort wirklich abzufragen, muss x11vnc künftig wie folgt gestartet werden:

    x11vnc -avahi -usepw -display :0

    Der Zusatz -avahi erlaubt es, unseren Rechner in den Übersichten der VNC-Clienten als “potentiell verfügbar” anzuzeigen.

  10. Jetzt muss autocutsel gestartet werden, damit die Zwischenablage der beiden Bildschirme synchronisiert werden. Dies geschieht mit einem neuen Terminal auf UBUNTU in welchen man eingibt:
    autocutsel

  11. Fertig!

Per SSH-Tunnel
Bei mir ist x11vnc sogar schnell genug, um den Bildschirm über das Internet zu übertragen. So kann ich von der Uni aus meinen UBUNTU-PC zu hause steuern. Hierfür nutze ich einen so genannten SSH-Tunnel.

  1. Du benötigst einen so genannten dynDNS-Eintrag (kostenlosen) für deine Internetverbindung. Die meisten Router verstehen sich gut mit dynDNS.org. Durch so einen Eintrag wird eine von dir gewählte Adresse (z.B. MeinNickname.dyndns.org) automatisch mit deiner derzeitigen Internet-IP-Adresse synchronisiert. Das heisst: dein lokales Netzwerk zu hause ist immer über diese Adresse im Internet erreichbar!
  2. Stelle deinen Router so ein, dass Port 22 an die lokale IP des UBUNTU-PC weitergereicht wird.
  3. Bevor du zur Uni gehst, schalte den UBUNTU-PC ein :-)
  4. An der Uni öffnest du ein Terminal und tippst dort ein:

    ssh -t -L 5901:localhost:5901 USER@MeinNickname.dyndns.org 'x11vnc -usepw -display :0'

    Natürlich musst du USER und MeinNickname durch deine Daten ersetzen. Dieser Befehl bewirkt folgendes:

    • du stellst eine SSH-Verbindung zum UBUNTU-PC her
    • durch die Option -L wird an deinen Port 5901 der UBUNTU-Port 5901 gebunden. Dies geschieht durch den Eintrag “localhost“. Der UBUNTU-PC denkt, mit localhost sei er gemeint. Dein Fernsteuer-PC denkt das aber auch von sich…
    • im zweiten Teil wird dann der Befehl zum Start von x11vnc gesetzt.
  5. Jetzt brauchst du noch ein Terminalfenster um autocutselzu starten.
    autocutsel

  6. Öffne jetzt Chicken of the VNC und verbinde dich wie folgt:

    Host: localhost
    Display: 1
    Password: (dein generiertes VNC-Passwort)

  7. Et Voila, du bist über das Internet mit einem relativ gut verschlüsselten SSH-Tunnel per VNC zu deinem UBUNTU-PC verbunden

automatisch starten
Natürlich können x11vnc und autocutsel automatisch gestartet werden, sobald ein User sich am Desktop anmeldet. Ein schönes Script stellt Intangible zur Verfügung:

  1. Vorraussetzung ist, dass x11vnc bereits installiert ist, und dass per x11vnc -storepasswd ein Passwort in ~/.vnc/passwd hinterlegt wurde
  2. das Script startet x11vnc, sobald sich ein User eingeloggt hat, zeigt den verwendeten Port an und speichert ihn in ~/.vnc/port.txt ab.
  3. setze dich an deinen UBUNTU-PC, öffne ein Terminalfenster und gebe dort ein:

    sudo gedit /usr/local/bin/sharex11vnc

    Es öffnet sich der graphische Editor gedit. Hier hinterlegen wir folgenden Code und speichern dann ab:

    #!/bin/sh
    x11vnc -nap -bg -many -rfbauth ~/.vnc/passwd -desktop "VNC ${USER}@${HOSTNAME}"|grep -Eo "[0-9]{4}">~/.vnc/port.txt

    # comment out the following if you don't want a popup telling you which port you're using.
    zenity --info --text="Your VNC port is `cat ~/.vnc/port.txt`"

    Wenn du nicht möchtest, dass der VNC-Port beim Login ausgegeben wird, dann setze eine # vor das zenity in der letzte Zeile

  4. nach dem Speichern kannst du den Editor schließen. Gib nun im Terminal folgendes ein:

    sudo chmod 755 /usr/local/bin/sharex11vnc

    Hierdurch wird das Script ausführbar.

  5. Damit das Script bei jedem Login gestartet wird, klicke in UBUNTU auf “System => Einstellungen => Sitzungen”, wähle dort den Reiter “Startprogramme” aus und klicke auf “Hinzufügen”. Jetzt kannst du bei “Befehl” auf “Durchsuchen” klicken und das Script in /usr/local/bin/sharex11vnc auswählen. Als “Name” kannst du z.B. “x11vnc Start” verwenden.
  6. Anschließend klickst du nochmals auf “Hinzufügen” und schreibst in die Felder “Name” und “Befehl” je “autocutsel” (ohne die “”)
  7. Fertig! Beachte aber: bei mir ist bei dieser Variante die Portnummer wieder auf den Standard (5900) gesetzt worden. Folglich musst du beim Chicken Display 0 wählen! Ähnlich anders muss auch der SSH-Tunnel aufgebaut werden, falls du über das Internet zugreifen möchtest:

    ssh -t -L 5900:localhost:5900 USER@MeinNickname.dyndns.org

    Auch wird der Befehl zum Starten von x11vnc nicht mehr angegeben, da x11vnc ja jetzt immer automatisch gestartet wird.

Links

Posted in Ubuntu | Tagged , | 1 Comment

[LaTeX] TeXShop: Läufe spezifizieren

Ich nutze LaTeX und den Editor TeXShop.
Derzeit muss ich viele Läufe von Hand durchführen, damit mein Text richtig gesetzt wird:

  • LaTeX-Lauf (in TeXShop)
  • BibTeX-Lauf (in TeXShop)
  • makeindex (von Hand im Terminal (nomencl))
  • 3 weitere Latex-Läufe (in TeXShop)

Erst jetzt wird mein Literaturverzeichnis, die Abkürzungen und Zitationen richtig angezeigt.
Schöner wäre es natürlich, wenn man die Prozesse automatisieren könnte. Und nach etwas Lektüre im Internet habe ich folgende Funktionsweise für mich entdeckt:
Man erstelle eine Textdatei mit folgendem Inhalt:


#!/bin/sh
bfname="`basename "$1" .tex`"
pdflatex "$1"
bibtex "$bfname"
makeindex "$bfname".nlo -s nomencl.ist -o "$bfname".nls
pdflatex "$1"
pdflatex "$1"
pdflatex "$1"

 

Diese Datei speichert man nun unter dem Namen “WASAUCHIMMER.engine” ab. Wichtig ist hier die Endung .engine

Du kannst die Datei auch von hier herunterladen (sie hat dann den Namen AllesMachen.engine).

Diese Datei legt man nun in den Ordner
~/Library/TeXShop/Engines/

Jetzt öffnet man das Programm Terminal und tippt dort ein:
cd ~/Library/TeXShop/Engines/
chmod u+x WASAUCHIMMER.engine
Ersetze hierbei WASAUCHIMMER durch den Dateinamen, den du für die Engine gewählt hast.

Jetzt muss TeXShop neu gestartet werden. Nach dem Neustart kann man rechts neben dem “Setzen”-Knopf die Engine WASAUCHIMMER auswählen. Ist diese ausgewählt, und man drückt auf den “Setzen”-Knopf, wird unsere eigene Engine ausgeführt.

Erklärung zum Script:
Zeile 1: sagt, dass es ein Shell-Script ist
Zeile 2: fängt den Dateinamen ab und entfernt die Endung .tex
Zeile 3: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Zeile 4: ein BibTeX-Lauf wird durchgeführt
Zeile 5: Das Abkürzungsverzeichnis wird erstellt (nomencl)
Zeile 6: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Zeile 7: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Zeile 8: ein LaTeX-Lauf wird durchgeführt (pdflatex)

Das Script macht also all die Läufe, die ich oben erwähnt habe automatisch hintereinander weg durch. Find ich echt super! Natürlich kann das Script an eure individuellen Anforderungen angepasst werden.

Übrigens funktioniert das Script auch mit Kile unter Ubuntu.

Posted in Mac OSX | Tagged , | 11 Comments
« Older