Shell-Konfigurationen auf mehreren Computern synchron halten

8

Ich bin ein ziemlich aktiver Befehlszeilenbenutzer und habe überall Shellkonten. MacBooks, Linux-Desktop-Maschinen, Linux-Server, Cygwin auf XP, Sie nennen es.

Wie kann ich meine Shell-Konfiguration ( .bashrc , .vimrc usw.) über alle diese Maschinen synchronisieren, indem Sie die begrenzten Tools verwenden, die auf allen Plattformen verfügbar sind?

Ich habe rsync in einer ziemlich eingeschränkten Weise verwendet, die das manuelle Kopieren einiger Dateien erfordert, wenn ich sie brauche, aber ich möchte eine Standardmethode für die Einrichtung derselben grundlegenden Shell-Umgebung auf all meinen Maschinen. Sagen Sie mir Ihre Shell-Account-Management-Strategie.

    
mustpax 20.10.2008, 12:30
quelle

3 Antworten

12

Ich habe einen Ordner in Dropbox mit globalen, pro Betriebssystem und pro Shell-Shell-Konfigurationen:

%Vor%

bashrc wird auf jeder Maschine geladen, bashrc-Linux , bashrc-Darwin werden auf ihren jeweiligen Betriebssystemen geladen, und einige Konfigurationen sind für einzelne Maschinen spezifisch. (Darwin ist übrigens der BSD-ähnliche Kernel von OS X.)

Was alles zusammenhält, ist die Datei bashbootstrap . Es lädt jede anwendbare Konfigurationsdatei in der Reihenfolge der zunehmenden Spezifität, dies ermöglicht pro Betriebssystem und Maschinenüberschreibungen einen höheren Vorrang. Darüber hinaus überspringen wir stillschweigend fehlende Konfigurationsdateien. Sie müssen keine leeren Konfigurationsdateien für jede Ihrer Maschinen erstellen, um das Skript glücklich zu machen.

Auf einem neuen Rechner, nach der Installation von Dropbox auf ~/Dropbox , entferne ich den Standardcode .bashrc und verbinde stattdessen einfach die Bootstrap-Datei an ihrer Stelle:

%Vor%

Oh, und hier sind die Inhalte der Datei bashbootstrap :

%Vor%

Eine letzte Anmerkung, dieses Skript bietet auch drei bequeme Aliase zum Bearbeiten Ihrer Bash-Konfigurationsdateien, ohne sich merken zu müssen, wo sie gespeichert sind.

  • editbashrc : Bearbeiten Sie die globale Konfigurationsdatei.
  • editosbashrc : Bearbeiten Sie die betriebssystemspezifische Konfigurationsdatei.
  • editlocalbashrc : Bearbeiten Sie die maschinenspezifische Konfigurationsdatei.

Ich habe das nur auf Bash getestet, aber es könnte bei anderen Bash-ähnlichen Shells funktionieren. Aber, wie sie sagen, Ihre Meilenzahl kann variieren.

Ich habe einen Blogeintrag über diese hier gemacht.

    
mustpax 29.07.2011, 16:18
quelle
2

Ich habe in der Vergangenheit die Versionskontrolle dafür verwendet ( svn , mercurial usw.). Sie können Ihren eigenen Server einrichten oder einen gehosteten Server verwenden. Dropbox funktioniert auch.

    
ejgottl 20.10.2008 12:41
quelle
0

Wenn Sie Zugriff auf die Quellcodeverwaltung haben, würde ich sie einfach einchecken. Auf diese Weise können Sie sie über mehrere Computer hinweg synchronisieren und bei Bedarf vergleichen / zurücksetzen. Wenn Sie CVS / SVN bei der Arbeit nicht haben, sind freie Wahlen verfügbar.

    
Mike Reedell 20.10.2008 12:42
quelle