Úplně automatická synchronizace vždy znamená nějak vyřešit, co se má stát, když se na každém z počítačů jeden soubor modifikuje jinak. Což se může snadno stát, a pokud připustíme možnost běhu offline, zabránit tomu technicky nejde.
Klíčovou otázkou je taky, co všechno synchronizovat. Seznam nainstalovaných aplikací by neměl být problém. Asi nechcete úplně synchronizovat nastavení k specifickému hardware, možná ani nastavení obrazovek a jejich rozlišení.
Externí SSD může být řešení (a technicky řeší problém s modifikací na obou stranách – to se zde nestane), vidím tu pár „ale“:
* Rychlost – pokud bude připojené přes USB, přidá se tam latence. Nejspíš to nebude horší než HDD (aspoň dokud nebudete vytěžovat i jiné USB na stejném USB controlleru), ale může to být znát.
* Bezpečnost – vyžaduje mít povolený boot z USB.
* Konfigurace specifické pro hardware.
Další možnost je mít nějaké skripty, které udělají, co je potřeba, a ty si třeba verzovat v Gitu. Skripty by měly být idempotentní, tzn. pokud je spustím podruhé, nic se nestane. Změnu na obou stranách to řeší celkem rozumně (musel byste to udělat vědomě, a pokud to uděláte, Git to vyřeší nebo udělá konflikt a bude chtít zvolit řešení). Rozdílný hardware to taky řeší – prostě si budete sdílet jen to, co potřebujete. Lze na to použít jak speciální nástroje (např. Ansible), tak je možné si vystačit s obyčejnými Bashovými skripty. Ale vyžaduje to nějakou ruční práci.
Pak tu jsou nástroje na automatickou synchronizaci na pozadí jako Dropbox (centralizovaný) a Syncthing (decentralizovaný). Záleží, jak je použijete a co všechno tím budete synchronizovat. Nedoporučuju tím ale synchronizovat ani celé /etc ani nastavení běžících programů v domovském adresáři. Celkově bych na podobná řešení byl velmi opatrný a nevím, jestli bych to zde použil. Tyto nástroje na pozadí synchronizují soubor po souboru. S trochou smůly v případě synchronizace celého /etc nemusíte nabootovat (zvlášť pokud počítač vypnete v nevhodnou chvíli) a v případě synchronizace nastavení běžících aplikací můžete způsobit těmto aplikacím problémy nebo naopak vám tyto aplikace mohou synchronizované soubory zpátky přepsat.
Podobně dopadnete s rsyncem, akorát s o něco menším rizikem, pokud jej budete spouštět ručně, přestože si můžete částečně pohlídat, aby běžel ve vhodnou chvíli. Já bych to tak ale dělat upřímně nechtěl.