SSD Nodes Learn 🎉 VPS $5.50/மாதம் முதல்
கல்வி வழிகாட்டிகள் Matt Connorஆல் Matt Connor · புதுப்பிக்கப்பட்டது 2026-08-13

VPS-க்கு சிறந்தது எது: Syncthing அல்லது Nextcloud?

Syncthing என்பது peer-to-peer தொழில்நுட்பம், Nextcloud என்பது server அடிப்படையிலான தளம். உங்கள் VPS-க்கு எது பொருத்தமானது மற்றும் இவை இரண்டுமே ஏன் பேக்கப் கிடையாது என்பதை அறியுங்கள்.

Syncthing மற்றும் Nextcloud: முடிவெடுக்க உதவும் அடிப்படை வேறுபாடு

Syncthing மற்றும் Nextcloud ஆகியவற்றுக்கு இடையேயான வேறுபாடு ஒரு கட்டமைப்பு சார்ந்த மாற்றத்தில் உள்ளது; மற்ற அனைத்து அம்சங்களும் இதிலிருந்தே உருவாகின்றன. Syncthing என்பது peer-to-peer தொழில்நுட்பம் சார்ந்தது. இதில் ஒவ்வொரு சாதனமும் முழு கோப்புறையையும் (folder) வைத்திருக்கும், எந்த ஒரு நகலும் முதன்மையானது (authoritative) என்று கருதப்படாது. Nextcloud என்பது ஒரு server-ஐ அடிப்படையாகக் கொண்டது. இதில் ஒரு இயந்திரம் கோப்புகளைச் சேமித்து வைத்திருக்கும், பயனர் கணக்குகள் (user accounts) அவற்றைக் கட்டுப்படுத்தும், மேலும் client-கள் அந்த கோப்புகளின் நகல்களைத் தரவிறக்கம் செய்துகொள்ளும்.

இதன் காரணமாகவே, Syncthing-ல் share link வசதியோ அல்லது கோப்புகளை browser மூலம் பார்க்கும் வசதியோ இல்லை. இதில் தரவுகளை வழங்க மையப்படுத்தப்பட்ட நகல் (central copy) எதுவும் இல்லாததால், browser மூலம் அணுகுவதற்கு எதுவும் இல்லை. Nextcloud இந்த இரண்டு வசதிகளையும் வழங்குகிறது; இதைச் செய்வதற்கு அதற்கு PHP runtime, database server, web server மற்றும் TLS (transport layer security)-க்கான reverse proxy ஆகியவை தேவைப்படுகின்றன.

பயன்படுத்தும் அனைத்து சாதனங்களும் உங்களுடையதாக இருந்தால் Syncthing-ஐத் தேர்ந்தெடுக்கவும். கோப்புகளை browser மூலமாகவோ அல்லது பிற நபர்கள் மூலமாகவோ அணுக வேண்டிய தேவை இருந்தால் Nextcloud-ஐத் தேர்ந்தெடுக்கவும்.

ஒவ்வொரு வடிவமைப்பிலும் VPS உண்மையில் என்ன செய்கிறது

Nextcloud இயங்கும் ஒரு VPS உங்கள் தரவின் இருப்பிடமாகச் செயல்படுகிறது. உங்கள் மடிக்கணினியில் உள்ள உள்ளூர் நகலை நீக்கினாலும், கோப்பு server-ல் அப்படியே இருக்கும், ஏனெனில் server-தான் எப்போதும் மூலத் தரவைக் கொண்டிருக்கும்.

Syncthing இயங்கும் ஒரு VPS வேறு ஒரு பணியைச் செய்கிறது: இது எப்போதும் இயங்கிக்கொண்டிருக்கும் ஒரு peer ஆகும். ஒரே நேரத்தில் ஆன்லைனில் இருக்கும் இரண்டு சாதனங்களுக்கு இடையே Syncthing நேரடியாகத் தரவை மாற்றுகிறது. எனவே, ஒரே நேரத்தில் ஆன்லைனில் வராத இரண்டு மடிக்கணினிகள் ஒருபோதும் sync ஆக முடியாது, நீங்கள் எவ்வளவு நேரம் காத்திருந்தாலும் இதுவே நிலை. உறங்காத ஒரு VPS-ல் மூன்றாவது peer-ஐச் சேர்த்தால் இந்தப் பிரச்சினை தீர்ந்துவிடும். மடிக்கணினி A காலை 09:00 மணிக்குத் தரவை அனுப்பும் (push), மடிக்கணினி B இரவு 22:00 மணிக்குத் தரவைப் பெற்றுக்கொள்ளும் (pull), இடையில் அந்த folder-ஐ VPS பாதுகாத்து வைத்திருக்கும்.

இது உண்மையிலேயே பயனுள்ள ஒரு பங்களிப்பாகும், மேலும் இது "Dropbox-க்கு மாற்றீடு" என்று கூறுவதை விடக் குறைவான கோரிக்கையே ஆகும். Syncthing ஒருபோதும் நீங்கள் வாடிக்கையாளருக்கு அனுப்பக்கூடிய link-ஐ வழங்காது. உங்கள் தேவை அதுவாக இருந்தால், இத்துடன் நிறுத்திவிட்டு, அதற்குப் பதிலாக self-hosted Dropbox மாற்றுகளின் தொகுப்பை வாசிக்கவும்.

சிறிய VPS-ல் ஒவ்வொன்றிற்கும் ஆகும் செலவு

Syncthing என்பது ஒரே ஒரு Go binary ஆகும். இது ஒரு socket-ல் இயங்கி, உங்கள் கோப்புகளின் குறியீட்டை (index) ஒரு local database-ல் வைத்திருக்கும்; இதுவே அதன் முழுமையான கட்டமைப்பு. 2.0 பதிப்பிலிருந்து, அந்த குறியீடு LevelDB-க்கு பதிலாக SQLite-ஆக மாற்றப்பட்டுள்ளது. எனவே, 1.x பதிப்பிலிருந்து மேம்படுத்தும்போது, முதல்முறை தொடங்கும் போது ஒருமுறை மட்டும் தரவு மாற்றம் (migration) நடைபெறும். பெரிய கோப்புத் தொகுப்புகளைக் கையாளும்போது இந்த மாற்றம் நீண்ட நேரம் எடுக்கலாம். அது முடிவடையும் வரை காத்திருக்கவும். இதற்கு மேல் எதையும் நிறுவவோ அல்லது patch செய்யவோ தேவையில்லை.

Nextcloud-க்கு கூடுதல் வசதிகள் தேவை. ஆகஸ்ட் 2026 நிலவரப்படி, Nextcloud 35 ஆனது PHP 8.3 முதல் 8.5 வரையிலான பதிப்புகளை ஆதரிக்கிறது. இதன் பின்புலத்தில் MariaDB அல்லது PostgreSQL இயங்க வேண்டும், மேலும் Apache 2.4 அல்லது nginx உடன் php-fpm மூலம் இது வழங்கப்பட வேண்டும். நிர்வாக கையேடு "ஒரு process-க்கு குறைந்தபட்சம் 512MB RAM" இருக்க வேண்டும் என்று பரிந்துரைக்கிறது, மேலும் php-fpm ஒரே நேரத்தில் பல worker process-களை இயக்குகிறது.

1 GB RAM கொண்ட VPS-ல், Syncthing தாராளமாக இயங்கும், ஆனால் Nextcloud-க்கு இட நெருக்கடி ஏற்படும். இதற்காக Nextcloud தவறான தேர்வு என்று அர்த்தமல்ல. இது அதிக பொறுப்புள்ள ஒரு அமைப்பாகும்; இதில் ஒன்றை மட்டும் பராமரிப்பதற்குப் பதிலாக நான்கு கூறுகளை நீங்கள் தொடர்ந்து புதுப்பிக்க வேண்டியிருக்கும். Docker, TLS மற்றும் backups உள்ளடக்கிய Nextcloud on a VPS வழிகாட்டி-ல் கூறப்பட்டுள்ள container முறை, இந்தச் சுமையைக் கையாள்வதற்கான எளிதான வழியாகும். இதனுடன் உலாவியை அடிப்படையாகக் கொண்ட ஆவணத் திருத்த வசதியை (document editing) இணைப்பது அதன் தேவையை மேலும் அதிகரிக்கும். இதைப் பற்றி OnlyOffice மற்றும் Collabora ஒப்பீடு கட்டுரையில் 2 முதல் 4 GB RAM கொண்ட server-களுக்கான விளக்கங்கள் உள்ளன.

VPS-ல் Syncthing-ஐ நிறுவுதல்

Ubuntu-வில் syncthing தொகுப்பு உள்ளது, ஆனால் அது upstream பதிப்பை விட மிகவும் பின்தங்கியுள்ளது. எனவே, திட்டத்தின் அதிகாரப்பூர்வ களஞ்சியத்தைப் (repository) பயன்படுத்தவும்.

sudo mkdir -p /etc/apt/keyrings
sudo curl -L -o /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable-v2" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update
sudo apt-get install syncthing
syncthing --version

syncthing --version கட்டளையை இயக்கும்போது, அது syncthing v2 என்று தொடங்கும் வரியைக் காட்ட வேண்டும். அங்கு v1 என்று இருந்தால், apt இன்னும் விநியோக தொகுப்பையே (distribution package) முன்னுரிமைப்படுத்துகிறது என்று அர்த்தம். upstream களஞ்சியத்தை அதற்கு மேல் Pin செய்துவிட்டு, மீண்டும் நிறுவவும்.

printf "Package: *\nPin: origin apt.syncthing.net\nPin-Priority: 990\n" | sudo tee /etc/apt/preferences.d/syncthing.pref

இதை ஒரு சாதாரண பயனர் கணக்கின் கீழ் system service-ஆக இயக்கவும். அப்போதுதான் யாரும் login செய்யாதபோதும், கணினி தொடங்கும்போதே (boot) இது தானாக இயங்கும்.

sudo systemctl enable --now syncthing@youruser.service
systemctl status syncthing@youruser.service

systemctl status கட்டளையை இயக்கும்போது active (running) என்று காட்ட வேண்டும். கட்டமைப்பு (configuration) மற்றும் குறியீட்டு கோப்புகள் (index files) /home/youruser/.local/state/syncthing பாதையில் அமையும், மேலும் கட்டமைப்பு கோப்பு config.xml ஆகும். Syncthing 1.27 பதிப்பிற்கு முன்பு உருவாக்கப்பட்ட நிறுவல்களில் இவை ~/.config/syncthing பாதையில் இருக்கும், எனவே இயந்திரங்களுக்கு இடையே எதையும் நகலெடுக்கும் முன் இரண்டு பாதைகளையும் சரிபார்க்கவும்.

பின்பு ports-ஐத் திறக்கவும். Syncthing sync protocol-க்கு 22000/TCP-ஐயும், அதன் QUIC transport-க்கு 22000/UDP-ஐயும், உள்ளூர் கண்டறிதலுக்கு (local discovery) 21027/UDP-ஐயும் பயன்படுத்துகிறது. Discovery என்பது broadcast மற்றும் multicast-ஐப் பயன்படுத்துகிறது, இவை இணையம் வழியாகச் செயல்படாது. எனவே, VPS-ல் முதல் இரண்டு ports-ஐ மட்டும் திறந்தால் போதுமானது.

sudo ufw allow 22000/tcp
sudo ufw allow 22000/udp
sudo ufw status

ufw status கட்டளையை இயக்கும்போது இரண்டு விதிகளையும் பட்டியலிட வேண்டும். அது Status: inactive என்று காட்டினால், ufw எதையும் வடிகட்டவில்லை என்றும், உங்கள் சேவை வழங்குநரின் (provider) network firewall மட்டுமே செயல்பாட்டில் உள்ளது என்றும் அர்த்தம். பெரும்பாலான hosts-ல் இது தனிப்பட்ட கட்டுப்பாடாக இருப்பதால், அந்த panel-ஐயும் சரிபார்க்கவும். சேவை இயங்கிக்கொண்டிருக்கும்போது ஒரு remote device Disconnected நிலையில் நின்றால், இந்த இரண்டு firewall-களில் ஏதோ ஒன்று இன்னும் மூடப்பட்டிருக்கிறது என்று பொருள்.

Syncthing GUI-ஐ பொதுவெளியில் வெளியிடாமல் அணுகுதல்

Web GUI (graphical user interface) இயல்பாகவே 127.0.0.1:8384-ல் கேட்கும் (listen), எனவே இது server-லிருந்து மட்டுமே பதிலளிக்கும். GUI-ல் API (application programming interface) key இருப்பதால், server-ல் உள்ள எந்தவொரு folder path-ஐயும் மாற்றும் அதிகாரம் அதற்கு உண்டு; எனவே இந்த இயல்புநிலை பாதுகாப்புக்கு அவசியமானது.

முதற்கட்டமாக இதை பொதுவெளியில் திறக்க வேண்டாம். ஒரு network address-க்கு binding செய்வதால் என்ன நடக்கும் என்பதை ஆவணங்கள் தெளிவாகக் கூறுகின்றன: "உங்கள் கணினியின் LAN address-ஐக் குறிப்பிடுவது, உங்கள் local network-ல் உள்ள சாதனங்களுக்கு மட்டுமே அணுகலை வழங்கும் என்று அர்த்தமல்ல!" அதற்குப் பதிலாக, உங்கள் laptop-லிருந்து SSH மூலம் அந்த port-ஐ forward செய்யவும்.

ssh -L 8384:127.0.0.1:8384 youruser@your.vps.example

அந்த session இயங்கும்போது, உங்கள் local browser-ல் http://127.0.0.1:8384-ஐத் திறக்கவும். SSH session முடிந்ததும் tunnel மூடப்பட்டுவிடும், எனவே அதன் பிறகு எந்த port-ம் திறந்திருக்காது.

ஒருவேளை GUI-ஐ நேரடியாக அணுக வேண்டிய அவசியம் இருந்தால், முதலில் credentials-ஐ அமைக்கவும். Server-ல் browser இல்லாததால், command line மூலமாகவே இதைச் செய்ய வேண்டும்.

sudo systemctl stop syncthing@youruser.service
sudo -H -u youruser syncthing generate --gui-user=admin --gui-password=-
sudo systemctl start syncthing@youruser.service

-H முக்கியமானது, ஏனெனில் அது இல்லாமல் sudo root-ன் home directory-ஐப் பயன்படுத்தும், இதனால் நீங்கள் தவறான config.xml-ஐத் திருத்த நேரிடும். Password மதிப்பிற்கு ஒரு dash (-) குறியீட்டைப் பயன்படுத்தினால், syncthing generate standard input-லிருந்து password-ஐப் பெற்றுக்கொள்ளும். இது உங்கள் shell history-ல் password சேமிக்கப்படுவதைத் தவிர்க்கும், மேலும் கோப்பில் எழுதப்படுவதற்கு முன்பே அந்த மதிப்பு hash செய்யப்படும். நீங்கள் login செய்த பிறகு, GUI settings-ல் HTTPS-ஐ இயக்கவும்.

Syncthing உங்கள் தவறுகளை ஏன் பரப்புகிறது

Syncthing FAQ, காப்புப்பிரதி (backup) குறித்த கேள்விக்கு இவ்வாறு பதிலளிக்கிறது: "Syncthing ஒரு சிறந்த காப்புப்பிரதி செயலி அல்ல, ஏனெனில் உங்கள் கோப்புகளில் செய்யப்படும் அனைத்து மாற்றங்களும் (திருத்தங்கள், நீக்குதல்கள் போன்றவை) உங்கள் அனைத்து சாதனங்களுக்கும் பரப்பப்படும்."

உங்கள் மடிக்கணினியில் தற்செயலாக ஒரு கோப்புறையை நீக்கினால், Syncthing தான் வடிவமைக்கப்பட்டபடியே செயல்படும். அது அந்த கோப்புறையை எல்லா இடங்களிலும் சில நொடிகளில் நீக்கிவிடும். Sync என்பது உடன்படிக்கையைக் குறிக்கிறது, ஒரு கோப்பு நீக்கப்பட வேண்டும் என்பதும் அந்த உடன்படிக்கையில் அடங்கும்.

கோப்பு பதிப்புமுறை (file versioning) இதற்கான தீர்வாகும், ஆனால் நீங்கள் அதைச் செயல்படுத்தாத வரை அது முடக்கப்பட்டிருக்கும். ஆவணங்களின்படி, பதிப்புமுறை "இயல்பாகவே 'no file versioning' என்று இருக்கும், அதாவது கோப்புகளின் பழைய பிரதிகள் எதுவும் சேமிக்கப்படாது." ஒவ்வொரு கோப்புறைக்கும் நான்கு உத்திகள் உள்ளன. Trash Can என்பது தொலைநிலை மாற்றத்தால் நீக்கப்பட்ட அல்லது மாற்றப்பட்ட ஒவ்வொரு கோப்பின் ஒரு பிரதியை வைத்திருக்கும். Simple என்பது ஒரு கோப்பிற்கு குறிப்பிட்ட எண்ணிக்கையிலான பழைய பதிப்புகளை வைத்திருக்கும். Staggered என்பது காலப்போக்கில் வரலாற்றைச் சுருக்கும்; ஒரு நாளுக்கு மணிநேரப் பிரதிகள், ஒரு மாதத்திற்கு தினசரிப் பிரதிகள் என இது சேமிக்கும். External என்பது ஒவ்வொரு முடிவையும் நீங்கள் எழுதும் ஒரு கட்டளைக்கு விட்டுவிடும். பழைய பிரதிகள் பகிரப்பட்ட கோப்புறைக்குள் உள்ள .stversions அடைவுக்குச் செல்லும்.

VPS peer-ல் Staggered-ஐ அமைத்துவிட்டு, மடிக்கணினிகளில் பதிப்புமுறையை முடக்கி வைக்கவும். எப்போதும் இயங்கிக்கொண்டிருக்கும் peer வரலாற்றைப் பராமரிக்கும், மடிக்கணினிகள் சுமையாக இல்லாமல் இருக்கும்.

Nextcloud இதைச் சிறப்பாகக் கையாள்கிறது, ஆனாலும் அதுவும் ஒரு காப்புப்பிரதி கிடையாது. நீக்கப்பட்ட கோப்புகள் குப்பைத் தொட்டிக்குச் செல்லும் மற்றும் திருத்தங்கள் Versions செயலி மூலம் சேமிக்கப்படும், ஆனால் வட்டு நிரம்பும்போது இவை இரண்டும் தானாகவே நீக்கப்படும். உங்கள் மடிக்கணினியில் கோப்புகளை மறைகுறியாக்கம் (encrypt) செய்யும் ஒரு செயல்முறை அந்த மறைகுறியாக்கப்பட்ட பதிப்புகளை ஒத்திசைக்கும், நல்ல பிரதிகள் அவற்றின் கால அட்டவணைப்படி நீக்கப்படும்.

எந்தவொரு கருவியாக இருந்தாலும், அதன் அடியில் ஒரு உண்மையான காப்புப்பிரதி தேவை: தனிப்பட்ட நிரல் மூலம் எடுக்கப்பட்ட snapshots, ஒத்திசைவு கிளையண்டால் அணுக முடியாத இடத்தில் சேமிக்கப்பட வேண்டும், மேலும் மீட்டெடுப்பு சரியாகச் செயல்படுகிறதா என்பதை அறிய குறைந்தபட்சம் ஒருமுறை அதைச் சோதிக்க வேண்டும். restic மற்றும் BorgBackup ஒப்பீடு எந்தக் கருவியை தரவு அடைவுக்குப் பயன்படுத்த வேண்டும் என்பதை விளக்குகிறது.

இரண்டுக்கும் இடையே உள்ள மோதல்கள் (conflicts) எவ்வாறு வேறுபடுகின்றன

இரண்டு ஒத்திசைவுகளுக்கு (syncs) இடையே ஒரே கோப்பில் இரு தரப்பிலும் மாற்றங்கள் செய்யப்படும்போது, இரண்டு கருவிகளும் ஒரு conflict கோப்பை உருவாக்குகின்றன. இதில் யார் அதைப் பார்க்கிறார்கள் என்பதுதான் வேறுபாடு.

Syncthing, தோல்வியடைந்த நகலை <filename>.sync-conflict-<date>-<time>-<modifiedBy>.<ext> என மறுபெயரிடுகிறது. மாற்றப்பட்ட நேரம் (modification time) பழையதாக உள்ள நகல் தோல்வியடைகிறது. நேரங்கள் ஒன்றாக இருக்கும்போது, device ID-ன் முதல் 63 பிட்களில் அதிக மதிப்புள்ள சாதனம் தோல்வியடைகிறது; இது தன்னிச்சையானது என்றாலும், அனைத்து peer-களிலும் ஒரே முடிவையே தரும். அடுத்து மக்கள் எதிர்பாராத பகுதி இதுதான்: அந்த கோப்புகள் "உருவாக்கப்பட்ட பிறகு சாதாரண கோப்புகளாகவே கருதப்படுகின்றன, எனவே அவை சாதனங்களுக்கு இடையே பரப்பப்படுகின்றன". ஒவ்வொரு peer-க்கும் அந்த conflict நகல் கிடைக்கும். அதை நீக்குவது ஒருமுறை செய்யும் செயல், அது மற்ற சாதனங்களிலும் ஒத்திசைக்கப்படும், ஆனால் முதலில் உங்கள் எல்லா கணினிகளிலும் அதைக் காண்பீர்கள்.

Nextcloud desktop client, <name> (conflicted copy YYYY-MM-DD HHMMSS).<ext> என்பதை எழுதுகிறது, உதாரணமாக mydata (conflicted copy 2018-04-10 093612).txt, மேலும் முன்னிருப்பாக அது அந்த கோப்பை பதிவேற்றுவதில்லை. கிளையண்ட் கையேடு இதற்கான காரணத்தைக் கூறுகிறது: மாற்றத்தைச் செய்தவரே அதைத் தீர்க்க சிறந்த நபர், மற்ற பயனர்களுக்கு அந்த மோதலைக் காட்டுவது குழப்பத்தை மட்டுமே ஏற்படுத்தும். உங்களுக்கு இதற்கு மாறான செயல்பாடு தேவைப்பட்டால், கிளையண்டின் சூழலில் OWNCLOUD_UPLOAD_CONFLICT_FILES=1 என்பதை அமைக்கவும்.

எனவே, ஒரு Syncthing மோதல் என்பது முழு கிளஸ்டரையும் பாதிக்கும் நிகழ்வு, ஆனால் ஒரு Nextcloud மோதல் அந்தந்த desktop-ல் மட்டுமே இருக்கும்.

Folder types-கள் Syncthing-ஐ server-ல் பாதுகாப்பானதாக மாற்றுகின்றன

Syncthing-ல் மூன்று வகையான folder வகைகள் உள்ளன. VPS-ல் சரியானதைத் தேர்ந்தெடுப்பது பல வகையான விபத்துகளைத் தவிர்க்க உதவும்.

  • Send & Receive என்பது இயல்பான அமைப்பாகும். மாற்றங்கள் இரு திசைகளிலும் நகரும்.
  • Send Only என்பது cluster-லிருந்து வரும் அனைத்து மாற்றங்களையும் புறக்கணிக்கும். ஒரு சாதனம் தரவை வெளியிடுவதற்கு மட்டுமே பயன்படும் இடங்களில் இதைப் பயன்படுத்தவும். அது sync-லிருந்து விலகும்போது, GUI-ல் சிவப்பு நிற "Override Changes" பொத்தான் தோன்றும். இது உள்ளூர் நிலையில் உள்ள தரவை மற்ற அனைவருக்கும் அனுப்பும்.
  • Receive Only என்பது cluster-லிருந்து வரும் மாற்றங்களை மட்டும் ஏற்கும், உள்ளூர் மாற்றங்களை மீண்டும் அனுப்பாது. காப்பகமாக (archive) செயல்படும் VPS-ல் இதைப் பயன்படுத்தவும். அங்கு உள்ளூர் மாற்றங்களைச் செய்தால், சிவப்பு நிற "Revert Local Changes" பொத்தான் தோன்றும்.

VPS-ல் Receive Only folder-ஐ அமைத்து, அதனுடன் Staggered versioning-ஐச் செயல்படுத்தினால், அது ஒரு versioned mirror-ஆகச் செயல்படும். மடிக்கணினியில் ஒரு கோப்பை நீக்கினால், அது cluster-ன் முறையான மாற்றமாகக் கருதப்பட்டு VPS-லும் நீக்கப்படும். ஆனால், அதன் பழைய நகல் .stversions-ல் சேமிக்கப்படும், அது நிரந்தரமாக அழியாது.

எதை நீங்கள் தேர்ந்தெடுக்க வேண்டும்

கீழே உள்ள 7 வரிசைகள், மக்கள் ஏன் இந்தக் கேள்வியைக் கேட்கிறார்கள் என்பதற்கான காரணங்களை விளக்குகின்றன.

ChartWhich tool fits which job
The data behind this chart
[
  {
    "label": "Keep two of my own laptops in sync",
    "pick": "Syncthing",
    "notes": "No accounts to manage. The VPS is the peer that is always awake."
  },
  {
    "label": "Send a download link to a client",
    "pick": "Nextcloud",
    "notes": "Syncthing has no public link sharing at all."
  },
  {
    "label": "Open a file from a borrowed browser",
    "pick": "Nextcloud",
    "notes": "The Syncthing GUI shows sync state, never file contents."
  },
  {
    "label": "Sync 200 GB between machines I own",
    "pick": "Syncthing",
    "notes": "Peers transfer directly. The VPS copy is optional."
  },
  {
    "label": "Phone photo upload with a store app",
    "pick": "Nextcloud",
    "notes": "The official Syncthing Android app ended in December 2024."
  },
  {
    "label": "Calendar and contacts alongside files",
    "pick": "Nextcloud",
    "notes": "Syncthing syncs files. That is the entire feature set."
  },
  {
    "label": "1 GB VPS with nothing else to spare",
    "pick": "Syncthing",
    "notes": "One Go binary against PHP plus a database plus a web server."
  }
]

முதல் வரிசையைப் பார்க்கவும். உங்களுடைய இரண்டு மடிக்கணினிகளை (laptops) ஒத்திசைவில் (sync) வைத்திருப்பது Syncthing என்பதைச் சுட்டிக்காட்டுகிறது. ஒரு VPS எப்போதும் இயங்கிக்கொண்டிருக்கும் ஒரு peer-ஆகச் செயல்படும்போது, அது தனது பயன்பாட்டிற்கான மதிப்பை வழங்குகிறது. உலாவி (browser), இணைப்பு (link) அல்லது மற்றொரு நபர் சம்பந்தப்பட்ட ஒவ்வொரு வரிசையும் அதற்கு நேர்மாறான முடிவையே சுட்டிக்காட்டுகிறது.

Nextcloud தொடர்ந்து சிறந்த தேர்வாக இருந்தாலும், அதன் footprint உங்களை கவலைக்குள்ளாக்கினால், Seafile மற்றும் Nextcloud ஒப்பீடு என்பதை அடுத்து வாசிக்கவும். ஏனெனில், Seafile ஒரு மாறுபட்ட sync engine-ஐக் கொண்டு அதே server மாதிரியைப் பின்பற்றுகிறது.

ஒரே VPS-ல் இரண்டையும் இயக்குதல்

இவை ஒன்றையொன்று விலக்குபவை அல்ல. உங்கள் கணினிகளுக்கு இடையே கோப்புகளை நகர்த்த Syncthing-ஐயும், கோப்புகளைப் பகிரவும் நாட்காட்டிகளை (calendars) நிர்வகிக்கவும் Nextcloud-ஐயும் பயன்படுத்துவது ஒரு பொதுவான முறையாகும்.

இதைச் செய்யும்போது ஒரு விதியைக் கவனத்தில் கொள்ள வேண்டும்: Syncthing-ஐ ஒருபோதும் Nextcloud-ன் data directory-க்குச் சுட்டிக்காட்ட வேண்டாம். Nextcloud தனது database-ல் ஒவ்வொரு கோப்பையும் கண்காணிக்கும். எனவே, வெளியே இருந்து வட்டில் (disk) சேர்க்கப்படும் கோப்புகள், database-ல் பதிவாகும் வரை web interface-ல் தெரியாது. Nextcloud installation directory-லிருந்து பின்வரும் கட்டளையை இயக்கலாம்:

sudo -u www-data php occ files:scan --all

இந்தக் கட்டளை அது ஸ்கேன் செய்த கோப்புகள் மற்றும் கோப்புறைகளின் எண்ணிக்கையைக் காட்டும். இதை ஒரு timer மூலம் இயக்குவது தற்காலிகத் தீர்வே தவிர, முறையான வடிவமைப்பு அல்ல. ஒவ்வொரு கருவிக்கும் தனித்தனி directory-ஐ ஒதுக்குங்கள். இந்தச் சேவையகத்தில் எதை நிறுவலாம் என்று நீங்கள் இன்னும் முடிவு செய்யவில்லை என்றால், 2026-ல் எவற்றை self-host செய்வது என்பதற்கான வழிகாட்டி என்பது, முதலில் ஒரு sync கருவியைத் தேர்ந்தெடுப்பதை விடச் சிறந்த தொடக்கப்புள்ளியாக இருக்கும்.

FAQ

Syncthing-ஆல் Dropbox-க்கு மாற்றாக இருக்க முடியுமா?

உங்கள் சாதனங்களுக்கு இடையே கோப்புகளை ஒத்திசைக்க (sync) மட்டுமே இது உதவும். Syncthing-ல் பொதுவான பகிர்தல் இணைப்புகளோ (public share links) அல்லது பயனர் கணக்குகளோ கிடையாது. இதன் இணைய இடைமுகம் (web interface) கோப்புகளின் உள்ளடக்கத்தைக் காட்டாது, ஏனெனில் உலாவி (browser) கோருவதற்கு மையப்படுத்தப்பட்ட நகல் (central copy) எதுவும் இல்லை. அதிகாரப்பூர்வ Android செயலி, டிசம்பர் 2024 வெளியீட்டிற்குப் பிறகு நிறுத்தப்பட்டு Play Store-லிருந்து நீக்கப்பட்டுவிட்டது. எனவே, தற்போது கைபேசி ஆதரவு சமூகத்தால் பராமரிக்கப்படும் fork-ஐ மட்டுமே சார்ந்துள்ளது. நீங்கள் ஒருவருக்கு இணைப்பை அனுப்ப வேண்டும் என்றால், உங்களுக்கு ஒரு server தேவைப்படும்; அதற்கு Nextcloud அல்லது அது போன்ற ஒரு மென்பொருளைப் பயன்படுத்த வேண்டும்.

Syncthing ஒரு backup கருவியா?

இல்லை, இதைத் திட்டக் குழுவே நேரடியாகக் குறிப்பிடுகிறது. கோப்புகளை நீக்கினால் அல்லது மாற்றினால், அது அனைத்து சாதனங்களிலும் உடனடியாகப் பிரதிபலிக்கும். எனவே, தவறுதலாக ஒரு கோப்பை நீக்கினால், அது சில நொடிகளில் எல்லா இடங்களிலும் நீக்கப்பட்டுவிடும். ஒவ்வொரு கோப்புறைக்கும் (folder) file versioning வசதியை, குறிப்பாக எப்போதும் இயங்கும் ஒரு peer-ல் Staggered முறையில் அமைப்பதன் மூலம், .stversions கோப்பகத்தின் வழியாக கோப்புகளை மீட்டெடுக்கும் வாய்ப்பைப் பெறலாம். இது தனிப்பட்ட சேமிப்பகத்தில் தனித்தனி கருவி மூலம் எடுக்கப்படும் snapshots-க்கு மாற்றாகாது.

Syncthing web GUI-ல் என்னால் ஏன் கோப்புகளைப் பார்க்க முடியவில்லை?

ஏனெனில், இந்த GUI என்பது ஒத்திசைவு நிலையை நிர்வகிக்கும் கட்டுப்பாட்டுப் பலகமே தவிர, கோப்பு உலாவியல்ல (file browser). இது கோப்புறைகள், சாதனங்கள், பரிமாற்ற முன்னேற்றம் மற்றும் முரண்பாடுகளின் எண்ணிக்கையை மட்டுமே காட்டும்; கோப்புகளின் உள்ளடக்கத்தை பட்டியலிடவோ அல்லது திறக்கவோ செய்யாது. இது peer-to-peer வடிவமைப்பால் ஏற்படுகிறது: உங்கள் கோப்புகள் உங்கள் சாதனங்களில் மட்டுமே இருக்கும், VPS-ல் உள்ள GUI அவற்றை நகர்த்தும் பணியை மட்டுமே நிர்வகிக்கும்.

VPS-ல் Syncthing-க்கு எந்தெந்த ports திறக்கப்பட வேண்டும்?

sync protocol-க்கு 22000/TCP மற்றும் QUIC transport-க்கு 22000/UDP தேவை. 21027/UDP போர்ட் local discovery-க்காக broadcast மற்றும் multicast மூலம் செயல்படுகிறது. இது இணையம் வழியாகச் செயல்படாது என்பதால், பொதுவான server-ல் இதை மூடி வைக்கவும். GUI-ஐ 8384 போர்ட்டில் 127.0.0.1-உடன் பிணைத்து (bind), SSH tunnel வழியாக அணுகவும். உங்கள் சேவை வழங்குநரின் network firewall மற்றும் ufw ஆகிய இரண்டையும் சரிபார்க்கவும், ஏனெனில் இவை தனித்தனி கட்டுப்பாடுகள் ஆகும்.

ஒரே VPS-ல் Syncthing மற்றும் Nextcloud-ஐ இயக்க முடியுமா?

ஆம், 2 GB RAM அல்லது அதற்கு மேற்பட்ட திறன் கொண்ட கணினியில் இதைச் செய்வது சாத்தியமே. அவற்றின் கோப்பகங்களை (directories) தனித்தனியாக வைத்திருக்கவும். Nextcloud தனது தரவுத்தளத்தில் (database) கோப்புகளை அட்டவணைப்படுத்துகிறது. எனவே, Syncthing மூலம் Nextcloud சேமிப்பகத்தில் எழுதப்படும் கோப்புகள், occ files:scan இயங்கும் வரை அதன் இணைய இடைமுகத்தில் தெரியாது. இரண்டு கருவிகளும் ஒரே கோப்பகத்தில் எழுதினால், அவை எதிர்பாராத முரண்பாட்டு கோப்புகளை (conflict files) உருவாக்கும்.