Cara menyimpan fail dan direktori disegerakkan di seluruh peranti yang berbeza menggunakan syncthing pada linux

Cara menyimpan fail dan direktori disegerakkan di seluruh peranti yang berbeza menggunakan syncthing pada linux

Syncthing ditakrifkan sebagai program penyegerakan fail berterusan: Ia boleh digunakan untuk menyimpan fail dan direktori disegerakkan di seluruh peranti atau "nod". Aplikasi ini menggunakan TLS sebagai kaedah penyulitan, dan ia bersama -sama dengan protokol, perisian sumber bebas dan terbuka. Semasa menggunakan Syncthing, data kami tetap pada peranti kami, dan dipindahkan terus ke destinasi tanpa menyampaikan pada pelayan pusat (rakan sebaya). Dalam tutorial ini, kita akan melihat cara memasang, mengkonfigurasi dan menggunakan Syncthing pada Linux.

Dalam tutorial ini anda akan belajar:

  • Cara memasang syncthing pada pengagihan linux yang paling banyak digunakan
  • Cara menyiapkan firewall untuk syncthing berfungsi dengan betul
  • Cara berkongsi dan menyimpan direktori disegerakkan di dua peranti
  • Cara Austostart Daemon Syncthing secara automatik pada Log Masuk Pengguna
Logo Syncthing

Keperluan perisian

Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Pengedaran bebas
Perisian Penyegerakan
Yang lain Keizinan akar
Konvensyen # - Memerlukan komando linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$-memerlukan komando Linux yang diberikan sebagai pengguna yang tidak berkadar biasa

Pemasangan



Pada dasarnya terdapat dua kaedah yang boleh kita gunakan untuk memasang Syncthing dalam pengedaran Linux kegemaran kami: Kami boleh menggunakan versi yang dibungkus di repositori asli, atau kami boleh memuat turun tarball dari laman web Syncthing rasmi. Di samping itu, hanya jika menggunakan Debian atau Ubuntu, kami boleh menambah repositori syncthing rasmi sebagai sumber perisian tambahan dan memasang pakej daripadanya.

Memasang versi asli

Syncthing boleh didapati di repositori asli pengagihan Linux yang paling banyak digunakan, seperti Fedora, Debian/Ubuntu, dan Archlinux, oleh itu kami dapat dengan mudah memasangnya dengan Pengurus Pakej Kegemaran kami. Ini selalu menjadi cara yang disyorkan untuk mendapatkan perisian; Satu -satunya masalah ialah, terutamanya pada pengagihan seperti Debian "stabil", repositori boleh mengandungi versi yang sudah lapuk dari pakej. Untuk memasang syncthing di fedora, kita boleh menggunakan DNF Pengurus Pakej, dan mengeluarkan arahan berikut:

$ sudo DNF memasang syncthing 

Pada Debian dan banyak derivatifnya, sebaliknya, kita boleh menjalankan:

$ sudo apt pemasangan syncthing 

Di Archlinux kita boleh menggunakan Pacman Untuk memasang pakej Syncthing, yang merupakan sebahagian daripada repositori "Komuniti". Mendapatkan perisian itu hanya masalah melancarkan emulator terminal kami dan lari:

$ sudo pacman -sy syncthing 

Memuat turun tarball



Kaedah kedua memasang syncthing terdiri daripada memuat turun tarball linux khusus dari bahagian muat turun laman rasmi. Kita harus memuat turun arkib yang mengandungi versi yang serasi dengan seni bina sistem kami. Sekiranya kami menggunakan Debian atau Ubuntu, kami juga boleh menambah repositori rasmi ke sumber perisian kami, dan kemudian pasang menggunakannya Apt.

Menyediakan firewall

Sebelum kita menjalankan syncthing, untuk berfungsi dengan betul, kita mesti menyediakan beberapa peraturan firewall untuk membolehkan trafik masuk melalui pelabuhan tertentu. Versi terkini Firewalld dan Pengurus Firewall UFW, sudah datang dengan perkhidmatan pra-konfigurasi untuk Syncthing (di sini dengan perkataan "Service" yang kami maksudkan satu set peraturan yang ditetapkan). Jika menggunakan firewalld, untuk mengaktifkan perkhidmatan, dan dengan itu untuk membolehkan lalu lintas melalui pelabuhan yang diperlukan), kita harus menjalankan:

$ sudo firewall-cmd --permanent --add-service = syncthing && sudo firewall-cmd-reload 

Perhatikan bahawa dengan arahan di atas, kerana tiada zon ditentukan, perkhidmatan akan ditambah kepada "lalai". Sekiranya kita mahu menambahkan perkhidmatan ke zon tertentu, kita harus menentukannya dengan --Kawasan pilihan, lulus nama zon sebagai hujah. Untuk mengumpulkan maklumat mengenai perkhidmatan ini, dan lihat pelabuhan apa yang disertakan di dalamnya, kita boleh menjalankan:

$ sudo firewall-cmd--info-service = custom 

Output arahan di atas adalah yang berikut:

Pelabuhan Syncthing: 22000/TCP 21027/UDP Protokol: Sumber-Ports: Modul: Destinasi: Termasuk: Pembantu: 


Seperti yang dapat kita lihat, pelabuhan "terlibat" dalam perkhidmatan adalah 22000/TCP dan 21027/UDP. Jika kita menggunakan UFW (firewall tidak rumit), untuk mengaktifkan perkhidmatan, kita harus menjalankan:

$ sudo ufw membenarkan syncthing 

Menggunakan Syncthing

Untuk memulakan Daemon Syncthing, yang perlu kita lakukan ialah memohon binari Syncthing dari terminal kami:

$ syncthing 

Syncthing dilengkapi dengan antara muka web yang boleh digunakan untuk menguruskan aplikasi, menambah direktori bersama dan peranti jauh. Sebaik sahaja kita menjalankan arahan di atas, daemon syncthing dilancarkan, dan tab pelayar web dibuka secara automatik ke 127.0.0.1: 8384 alamat, di mana antara muka dapat dicapai.

Direktori dikongsi syncthing lalai adalah ~/Sync; Ia dan semua yang lain yang harus disegerakkan, dipaparkan di lajur kiri antara muka. Di lajur yang betul, sebaliknya, kita dapat melihat maklumat mengenai syncthing peranti sedang berjalan, dan senarai peranti jauh yang berkaitan. Dalam kes kami senarai masih kosong:

Antara muka Web Syncthing Antara Muka Web Syncthing

Untuk menambah mesin jauh dan kongsi direktori dengannya, apa yang perlu kita lakukan ialah menukar ID peranti. Untuk memeriksa ID peranti, kami boleh mengklik butang "Tindakan" di bahagian atas sebelah kanan antara muka web, dan klik pada "Tunjukkan ID". ID peranti semasa akan dipaparkan bersama -sama dengan kod QRCode Koresponden:

Pengesahan peranti

Untuk permohonan berfungsi dengan betul, kedua -dua (atau lebih peranti) harus mengetahui ID masing -masing. Di bahagian seterusnya kita akan melihat cara menambah peranti jauh.

Menambah peranti

Untuk mula menyegerakkan direktori, kita perlu menambah peranti jauh ke konfigurasi kami. Demi tutorial ini, saya akan menggunakan mesin Linux di mana kami memasang syncthing sebagai "sumber" penyegerakan, manakala sistem terpencil akan menjadi peranti Android (Syncthing boleh dipasang dengan mudah dari Google Play Store); Kedua -dua peranti mesti disambungkan ke LAN yang sama.

Kami klik pada butang "Tambah Peranti Jauh" di sebelah kanan bawah antara muka web. Pada tab penumbuk tetingkap popup yang akan dibuka, kita perlu memasuki ID peranti pendamping, dan nama mesra manusia pilihan:



Tambah peranti

Seperti yang anda lihat, jika penemuan auto berfungsi sebagaimana mestinya, peranti syncthing yang lain di LAN harus ditemui secara automatik dan dilaporkan di bawah senarai "peranti berdekatan". Dalam kes sedemikian yang perlu kita lakukan ialah mengklik pada
pautan koresponden, dan medan input ID akan diisi secara automatik.

Di tab kedua, "Berkongsi", kita boleh memilih direktori apa yang kita ingin kongsi dengan peranti pendamping. Dalam kes ini, kami memilih lalai:

Tambah perkongsian peranti

Satu perkara yang mudah dilakukan, adalah untuk memeriksa kotak semak "Auto Accept": Dengan cara ini sistem tidak akan mendorong kami untuk mengesahkan jika kami ingin menerima penyegerakan direktori yang ditawarkan oleh sistem jauh, tetapi ia akan menciptakannya secara automatik.



Tab ketiga mengandungi "Tetapan Lanjutan". Di sini kita boleh memilih untuk memasukkan alamat statik untuk peranti jauh, jika ia mempunyai penemuan dan penemuan dinamik tidak berfungsi. Kami juga boleh memilih had kadar masuk dan keluar untuk peranti, dan data apa yang harus dimampatkan (semua data vs metadata sahaja - lalai).

Tambah peranti lanjutan

Setelah selesai, kita boleh mengklik butang "Simpan". Peranti terpencil harus muncul dalam senarai di halaman utama. Pada peranti lain, kami melakukan operasi yang sama (perhatikan bahawa pada aplikasi Android, dengan mengklik menu "Hamburger", kami mempunyai pilihan untuk menggunakan antara muka web) dan tambahkan ID peranti "Sumber" kami. Sebaik sahaja kedua -dua peranti dipasangkan dengan betul status mereka harus mula disegerakkan. Sebaik sahaja proses penyegerakan selesai, mereka akan dilaporkan sebagai "terkini":

Peranti Jauh

Pada masa ini penyegerakan (bi-arah) kami perlu siap, dan direktori akan disimpan selaras dengan kedua-dua peranti.

Autostart Daemon Syncthing



Untuk membuat daemon syncthing bermula secara automatik, kita boleh menggunakan SystemD, iaitu pengurus linux init. Dalam kes ini kita akan memulakannya sebagai perkhidmatan per-pengguna, jadi kita tidak memerlukan keistimewaan pentadbiran. Apabila perkhidmatan dikonfigurasikan dengan cara ini, ia akan dimulakan hanya apabila pengguna log masuk.

Perkara pertama yang ingin kami lakukan ialah menyalin fail perkhidmatan Systemd ke dalam direktori yang sesuai. Jika kami memasang syncthing dari repositori asli pengedaran Linux kami, fail tersebut mestilah: /usr/lib/systemd/user/syncthing.perkhidmatan; Sekiranya kami memuat turun tarball dari tapak Syncthing rasmi, fail itu harus dijumpai di dalam ETC/LINUX-SYSTEMD/USER direktori.

Kami mencipta ~/.konfigurasi/sistem/pengguna Direktori jika ia belum wujud, dan salin fail di dalamnya:

$ mkdir -p ~/.config/systemd/user && cp/usr/lib/systemd/user/syncthing.perkhidmatan ~/.konfigurasi/sistem/pengguna 

Sebaik sahaja fail itu ada, kami menjalankan arahan berikut untuk membolehkan perkhidmatan:

$ Systemctl -ENABLE SYNCTHING.perkhidmatan 

Kesimpulan

Pada tutorial ini, kami belajar cara memasang dan mengkonfigurasi Syncthing, aplikasi yang sangat segenggam yang membolehkan kami menyimpan satu atau lebih direktori yang disegerakkan antara pelbagai peranti, tanpa perlu menggunakan pelayan "pusat". Kami melihat cara memasang aplikasi, bagaimana untuk menyediakan firewall untuk membolehkan lalu lintas melalui pelabuhan yang diperlukan, bagaimana untuk berkongsi direktori antara dua peranti dan bagaimana untuk mengendalikan daemon syncthing secara automatik apabila pengguna log masuk.

Tutorial Linux Berkaitan:

  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Cara Menyiapkan Pelayan OpenVPN di Ubuntu 20.04
  • Menguasai Gelung Skrip Bash
  • Cara Dual Boot Kali Linux dan Windows 10
  • Perkara yang perlu dipasang di Ubuntu 22.04
  • Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
  • Fail Konfigurasi Linux: 30 teratas yang paling penting
  • Muat turun linux