Poiché mi piace cercare VPS economici e devo cambiare spesso server, il trasferimento del sito web è diventato una cosa comune. Per i dati di siti Web di grandi dimensioni, è meglio trasferire i dati direttamente tra sale computer. I tre strumenti di comando comunemente utilizzati Rsync, SCP e Tar possono aiutarci a risolvere rapidamente il riposizionamento del sito Web remoto VPS e la sincronizzazione dei dati.
Tuttavia, grazie al promemoria del blog Xiao Z, oltre a utilizzare gli strumenti di comando per ottenere il trasferimento dei dati, possiamo anche utilizzare il montaggio del disco rigido per risolvere il problema della migrazione dei dati. Utilizzando NFS, il protocollo del file system distribuito Network File System, possiamo montare in remoto le directory di diversi host VPS, rendendo molto più conveniente la copia dei file.
GlusterFS è il cuore di Gluster, la soluzione di storage Scale-Out. Si tratta di un file system distribuito open source con forte scalabilità orizzontale, in grado di supportare capacità di storage multi-PB ed elaborare migliaia di client attraverso l'espansione. GlusterFS viene generalmente utilizzato come soluzione di archiviazione di file a livello aziendale, ma possiamo anche utilizzare GlusterFS per condividere lo spazio di archiviazione tra diversi host VPS.
L'ultimo è samba. Lo scopo principale dello sviluppo iniziale di SAMBA era quello di comunicare la condivisione tra due diverse piattaforme operative, Windows e Unix. Samba è semplice da configurare e intuitivo da utilizzare. Il montaggio remoto NFS, l'archiviazione condivisa GlusterFS e i server condivisi Samba possono essere utilizzati anche per la collaborazione di file, il mirroring dei server, ecc. In breve, la scalabilità è molto elevata.
Questo articolo condividerà brevemente i metodi operativi del montaggio remoto NFS, dell'archiviazione condivisa GlusterFS e del server condiviso Samba. Per ulteriori informazioni sull'archiviazione cloud e sugli strumenti webmaster, puoi anche imparare:
- Nextcloud è una scelta eccellente per l'archiviazione cloud personale: metodo di installazione automatica con un clic ed esperienza di utilizzo del disco cloud
- Lsyncd crea la sincronizzazione mirror-use Lsyncd per ottenere la sincronizzazione in tempo reale tra server locali e remoti
- Linux VPS monta Google Drive e Dropbox realizza la sincronizzazione e il backup dei dati dell'host VPS
1. Montaggio remoto NFS
Ambiente demo, server A: 172.104.184.98, client B: 107.161.18.176 Se non hai un VPS, puoi dare un'occhiata all'elenco degli host VPS che ho utilizzato: VPS host ranking list.
Le operazioni di comando rilevanti sono le seguenti:
#在两台VPS上安装执行安装
sudo apt-get install -y nfs-kernel-server
#在A上创建文件夹
mkdir -p /media/wzfou/asus
#在A上编辑并添加授权B读写
vim /etc/exports
/media/wzfou/asus 107.161.18.176(rw,no_root_squash,async)
#在A上重启
sudo systemctl restart nfs-server.service
#在B上创建文件夹
sudo mkdir -p /home/wzfou/share
#在B上将刚刚创建的文件夹挂载到A上共享文件夹
sudo mount -t nfs 172.104.184.98:/media/wzfou/asus /home/wzfou/share
Se non viene visualizzato alcun messaggio, significa che il montaggio ha avuto esito positivo.
Ora i file condivisi su A e B sono stati montati e sincronizzati in tempo reale. Puoi vedere la sincronizzazione bidirezionale caricando o eliminando file nella cartella condivisa.
2. Archiviazione condivisa GlusterFS
2.1 Archivio GlusterFS
Debian:
sudo apt-get install -y lsb-release sudo apt-get install -y apt-transport-https
Aggiungi la chiave pubblica per il repository GlusterFS.
wget -O - http://download.gluster.org/pub/gluster/glusterfs/LATEST/rsa.pub | sudo apt-key add - echo deb https://download.gluster.org/pub/gluster/glusterfs/LATEST/Debian/$(lsb_release -sc)/apt $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/gluster.list
Ubuntu 16.04/14.04:
sudo apt-get install -y software-properties-common sudo add-apt-repository ppa:gluster/glusterfs-3.8
2.2 Installa GlusterFS
Aggiorna la cache del repository.
sudo apt-get update
Installa il pacchetto GlusterFS.
sudo apt-get install -y glusterfs-server
Avvia il servizio glusterfs-server.
sudo service glusterfs-server start
Conferma se il servizio glusterfs è in esecuzione.
sudo service glusterfs-server status
Il seguente comando viene eseguito sul server per aggiungere il nodo client (107.161.18.176).
raj@gluster1:~$ sudo gluster peer probe 107.161.18.176 peer probe: success.
Conferma lo stato.
sudo gluster peer status
Elenca i nodi.
sudo gluster pool list
Configura firewall. Disabilita il firewall o aggiungi l'IP del client all'intervallo consentito.
sudo iptables -I INPUT -p all -s <ip-address> -j ACCEPT
L'installazione riuscita è la seguente:
2.3 Creare un volume di archiviazione condiviso
Ora dobbiamo creare il volume di archiviazione condiviso. Innanzitutto, esegui le seguenti operazioni sul server:
#创建文件夹
sudo mkdir -p /data/gluster/gvol0
#创建共享卷volume,并分别挂载服务端(139.162.175.85)和客户端(107.161.18.176)
sudo gluster volume create gvol0 replica 2 139.162.175.85:/data/gluster/gvol0 107.161.18.176:/data/gluster/gvol0 force
#启用卷
sudo gluster volume start gvol0
#查看卷
sudo gluster volume info gvol0
Ora vai sul client (107.161.18.176) e monta il server (139.162.175.85) Il comando è il seguente:
#安装客户端
apt-get install -y glusterfs-client
#创建文件夹
mkdir -p /mnt/glusterfs
#挂载服务端(139.162.175.85)
mount -t glusterfs 139.162.175.85:/gvol0 /mnt/glusterfs
#开机自动挂载
vim /etc/fstab
139.162.175.85:/gvol0 /mnt/glusterfs glusterfs defaults,_netdev 0 0
Esegui il comando: df -hP /mnt/glusterfs
, puoi vedere che il montaggio è riuscito.
Puoi anche vederlo usando il comando df.
Ora puoi realizzare spazio di archiviazione condiviso tra diversi host VPS e puoi vedere la sincronizzazione quando aggiungi o modifichi file.
3. Samba realizza la condivisione tra Linux e Windows
I due metodi di condivisione sopra menzionati sono adatti a Linux, quindi come condividono Windows e Linux? Il metodo più popolare attualmente è attraverso un protocollo di condivisione file di rete multipiattaforma: SMB/CIFS. Windows supporta nativamente SMB/CIFS e Linux implementa anche il protocollo SMB/CIFS tramite il software open source Samba.
3.1 Installa samba
sudo apt-get install samba
3.2 Crea directory condivisa
// 创建的目录即之后能够在Windows主机上直接访问的目录。
// 例如:在用户wzfou的主目录下新建share文件夹为共享目录
mkdir /home/wzfou/smbshare
// 由于Windows下的文件夹需可读可写可执行,需更改权限为777
sudo chmod 777 /home/wzfou/smbshare
3.3 Modifica il file di configurazione di samba
// 修改 /etc/samba/smb.conf
sudo vim /etc/samba/smb.conf
// 在smb.conf文件最后加上以下内容
[condivisione]
percorso = /home/wzfou/smbshare
pubblico = sì
scrivibile = sì
utenti validi = wzfou
crea maschera = 0644
forza modalità di creazione = 0644
maschera directory = 0755
forza modalità directory = 0755
disponibile = sì
La descrizione di smb.conf è la seguente:
(1) [condivisione] indica l'alias della cartella condivisa e questo alias verrà utilizzato direttamente in seguito.
(2) Le impostazioni di forza la modalità di creazione
e forza la modalità directory
sono causate dalle diverse autorizzazioni predefinite di file e cartelle in Windows e Linux I file appena creati in Windows sono eseguibili. i suoi permessi sui file devono essere impostati obbligatoriamente.
(3) utenti validi è impostato sul tuo nome utente Linux corrente, ad esempio, il mio è wzfou, perché quando apri una cartella condivisa per la prima volta, devi verificare le autorizzazioni.
3.4 Imposta la password di accesso
// 新建/etc/samba/smbpasswd文件
sudo touch /etc/samba/smbpasswd
// 根据3.3设置的valid users,设置用户密码
// wzfou 替换为你在3.3中设置的用户名
sudo smbpasswd -a wzfou
//输入两次密码后,会提示 Added user wzfou. 表示设置成功
// 若用户名非当前登录系统的用户名,可能会提示Failed
3.5 Avvia il server Samba
sudo /etc/init.d/samba restart
3.6 Verifica se la condivisione ha avuto successo
sudo apt-get install smbclient
smbclient -L //xx.xx.xx.xx/share
//还记得吗?share为3.3中设置的共享文件夹的别名
//如果共享成功,将要求输入之前设置的密码
3.7 Usare samba su Windows e Linux
Esplora risorse->Connetti unità di rete. Il formato di input è: il nome della configurazione dell'indirizzo IP, quindi inserire la password dell'account e la connessione ha esito positivo.
Se utilizzi Windows 7 e potresti non riuscire a connetterti a Samba, puoi adottare i seguenti metodi per risolvere il problema:
1. Modificare la politica di sicurezza locale: eseguire secpol.msc per aprire il modulo "Politica di sicurezza locale", fare clic su "Politica locale" - "Opzioni di sicurezza" e modificare il valore di "Sicurezza di rete: Livello di autenticazione di LAN Manager" su "Invia LM e NTLM: utilizza la sicurezza della sessione NTLMv2 se negoziata", semplicemente OK fino in fondo.
2. Modificare il registro: modificare il valore di LmCompatibilityLevel in HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa su 1.
Per Linux, accedervi tramite l'indirizzo smb://<indirizzo-IP-server-samba>/share
in Thunar.
4. Riepilogo
Tra i metodi di cartella condivisa Linux, il metodo di montaggio remoto NFS è il più conveniente, particolarmente adatto per la migrazione dei dati del sito Web tra diversi server host VPS. Una volta che il montaggio remoto ha avuto successo, possiamo essere convenienti quanto copiare i dati localmente di tre strumenti di comando: Rsync, SCP e Tar: risolvono rapidamente il riposizionamento del sito Web remoto VPS e la sincronizzazione dei dati e sono più convenienti.
Il metodo GlusterFS per la creazione di volumi condivisi è particolarmente adatto per i server cluster. Il file system del cluster GlusterFS può essere applicato anche allo storage distribuito Docker a livello aziendale. Samba realizza la condivisione di file tra Linux e Windows In precedenza abbiamo condiviso il tutorial NextCloud sull'installazione di Raspberry Pi: condivisione LAN privata su cloud domestico. Infatti, possiamo anche usare Samba per condividere Raspberry Pi con altri dispositivi.