Versionshantering i Ubuntu

Unix
Ett enkelt sätt att få versionshantering av viktiga filer i Ubuntu är att länka in dem emot Dropbox.

Visningar:

404

Betyg:

0
(0)

Svårighetsgrad:

Enkelt

Tidsåtgång:

15-20min

För den här guiden behöver du

  • Dropboxkonto
  • Ubuntu




Inledning

En del filer, t.ex. konfigurationsfilerna för Home Assistant, ändrar man såpass ofta att det kan vara skönt att ha versionshantering på dem – så att man enkelt kan backa till en tidigare version ifall det skulle behövas.
Ett enkelt sätt att lösa det är att länka in dem emot Dropbox. På så vis kan man enkelt bläddra bland tidigare versioner och snabbt återställa till önskad version via dropbox.com.

Om du, precis som jag, har en hel del filer i din Dropbox kan det vara ganska skönt att slippa få allt nersynkat till din Ubuntuserver. Ett tips isåfall är att registrera ett nytt Dropboxkonto för den här manövern, och sedan dela den aktuella mappen till ditt ordinarie konto.

Ladda hem och installera Dropbox

För min del gick det inte att ansluta emot siten dropbox.com förrän jag gjort ett pingtest emot den, så vi börjar med det:

ping dropbox.com

Kör sen detta kommando för att ladda ner och packa upp installationsfilen:

cd ~ && wget -O - "https://dropbox.com/download?plat=lnx.x86_64" | tar xzf -

Starta installationen genom att skriva:

~/.dropbox-dist/dropboxd

Du kommer nu att se något i stil med:

This computer isn't linked to any Dropbox account...
Please visit https://www.dropbox.com/cli_link_nonce?nonce=fb435chy53kab523kskafc0365e2 to link this device.
Now open the browser and navigate to the above link to connect system with your dropbox account.

Kopiera adressen du får i meddelandet och surfa till den ifrån din arbetsdator.

Efter att du får följande text i konsollen är installationen klar:

This computer is now linked to Dropbox. Welcome Simon

Tryck nu ctrl + c för att avsluta installationsprogrammet.

Nu är det dags att ladda hem ett pythonskript som gör att du kan kommunicera med Dropboxinstansen:

sudo wget -O /usr/local/bin/dropbox "https://www.dropbox.com/download?dl=packages/dropbox.py"

Gör skriptet exekverbart med detta kommando:

sudo chmod +x /usr/local/bin/dropbox

Autostarta Dropbox

Om du är ovan med att arbeta i Unixbaserade operativsystem bör du läsa wikiartikeln ”Några enkla grunder i Unix” innan detta steg.

Öppna filen /etc/systemd/system/dropbox.service för redigering:

sudo vi /etc/systemd/system/dropbox.service

Skriv detta i filen:
Observera att du måste byta ut [USERNAME] emot det användarnamn du använder i Ubuntu.

[Unit]
Description=Dropbox Service
After=network.target

[Service]
ExecStart=/bin/sh -c '/usr/local/bin/dropbox start'
ExecStop=/bin/sh -c '/usr/local/bin/dropbox stop'
PIDFile=${HOME}/.dropbox/dropbox.pid
User=[USERNAME]
Group=[USERNAME]
Type=forking
Restart=on-failure
RestartSec=5
StartLimitInterval=60s
StartLimitBurst=3

[Install]
WantedBy=multi-user.target

Skriv dessa kommandon för att aktivera dropbox som systemtjänst och starta den:

sudo systemctl daemon-reload

sudo systemctl enable dropbox

sudo systemctl start dropbox

Länka in filerna till Dropboxkatalogen

Gå till Dropboxmappen (~ är en genväg till den aktuella användarens katalog):

cd ~/Dropbox/

Skapa en mapp att placera filerna i:

mkdir ubuntuBackups

Skapa en mapp för varje grej du vill länka in, i mitt fall ska jag endast länka in Hass.io:

mkdir ubuntuBackups/hassio

Nu är det dags att länka in dina filer emot den aktuella mappen. Jag har valt att länka in samtliga konfigurationsfiler ifrån Home Assistant:

ln -s /usr/share/hassio/homeassistant/automations.yaml ~/Dropbox/ubuntucBackups/hassio/automations.yaml

ln -s /usr/share/hassio/homeassistant/configuration.yaml ~/Dropbox/ubuntucBackups/hassio/configuration.yaml

ln -s /usr/share/hassio/homeassistant/customize.yaml ~/Dropbox/ubuntucBackups/hassio/customize.yaml

ln -s /usr/share/hassio/homeassistant/groups.yaml ~/Dropbox/ubuntucBackups/hassio/groups.yaml

ln -s /usr/share/hassio/homeassistant/home-assistant.log ~/Dropbox/ubuntucBackups/hassio/home-assistant.log

ln -s /usr/share/hassio/homeassistant/known_devices.yaml ~/Dropbox/ubuntucBackups/hassio/known_devices.yaml

ln -s /usr/share/hassio/homeassistant/scripts.yaml ~/Dropbox/ubuntucBackups/hassio/scripts.yaml

ln -s /usr/share/hassio/homeassistant/secrets.yaml ~/Dropbox/ubuntucBackups/hassio/secrets.yaml

Dina konfigurationsfiler är nu inlänkade emot Dropbox med så kallade ”symbolic links” vilket innebär att de fortsätter att finnas på sin ursprungliga plats men speglas in emot dropboxkatalogen.

Hur bra var den här guiden?

Klicka på en stjärna för att betygsätta

Betyg 0 / 5. Antal röster 0

Bli först med att betygsätta denna guide!

Eftersom du tyckte den här guiden var bra...

Följ oss på sociala medier, så missar du inte nästa guide!

Jag beklagar att du inte var nöjd med guiden!

Hjälp mig att göra bättre guider i framtiden.

Vad saknades / vad var fel?

2 kommentarer till “Versionshantering i Ubuntu”

  1. Hej,
    Jag försöker följa din guide med att köra backups mot Dropbox.
    Men steget där man skall autostart Dropbox funkar inte för mig.
    Det går bra ändra fram till sista kommandot.

    fredda@Fredda-Hassio:~$ sudo systemctl start dropbox
    Job for dropbox.service failed because the control process exited with error code.
    See ”systemctl status dropbox.service” and ”journalctl -xe” for details.

    Förstår inte riktigt hur jag skall kunna felsök detta fel.
    Är det någon som kan hjälpa mig?

    Mvh,
    Fredrik

    1. Fredrik, det är bara för tydligheten att starta tjänsten dropbox som inte fungerar. Har du testat de kommandona som föreslås och sett vad de ger?
      Jag är tyvärr inte särskilt bevandrad i Unixvärlden så jag har inte några tips att ge. Jag har fått idéer om vad jag vill göra och sen sökt på hur man gör det, men tyvärr brukar guider för Unixvärlden vara under all kritik.

Lämna ett svar