Kako montirati udaljeni Linux datotečni sustav ili direktorij pomoću SSHFS-a preko SSH-a


Glavna svrha pisanja ovog članka je pružiti detaljni vodič za montiranje udaljenog Linux datotečnog sustava pomoću SSHFS klijenta preko SSH-a.

Ovaj je članak koristan za one korisnike i administratore sustava koji žele instalirati udaljeni datotečni sustav na svoje lokalne sustave u bilo koje svrhe. Praktično smo testirali instaliranjem SSHFS klijenta na jedan od naših Linux sustava i uspješno montiranim udaljenim datotečnim sustavima.

Prije daljnje instalacije, shvatimo kako SSHFS i kako to funkcionira.

Što je SSHFS?

SSHFS je kratica za (Secure SHell FileSystem) klijent koji nam omogućuje montiranje udaljenog datotečnog sustava i interakciju s udaljenim direktorijima i datotekama na lokalnom računalu pomoću SSH protokola za prijenos datoteka (SFTP).

SFTP je sigurni protokol za prijenos datoteka koji omogućuje pristup datotekama, prijenos datoteka i značajke upravljanja datotekama preko protokola Secure Shell. Budući da SSH koristi šifriranje tijekom prijenosa datoteka putem mreže s jednog računala na drugo računalo, a SSHFS dolazi s ugrađenim modulom jezgre FUSE (datotečni sustav u korisničkom prostoru) koji omogućuje svim neprivilegiranim korisnicima stvaranje svog datotečnog sustava bez mijenjanja kôda jezgre.

U ovom ćemo vam članku pokazati kako instalirati i koristiti SSHFS klijent na bilo kojoj Linux distribuciji za postavljanje udaljenog Linux datotečnog sustava ili direktorija na lokalni Linux stroj.

Prema zadanim postavkama sshfs paketi ne postoje na svim glavnim distribucijama Linuxa, morate omogućiti epel spremište pod vašim Linux sustavima da biste instalirali sshfs uz pomoć Yum naredbe s njihovim ovisnostima.

# yum install sshfs
# dnf install sshfs              [On Fedora 22+ releases]
$ sudo apt-get install sshfs     [On Debian/Ubuntu based systems]

Jednom kada se sshfs paket instalira, morate stvoriti direktorij točke montiranja u koji ćete montirati svoj udaljeni datotečni sustav. Na primjer, kreirali smo direktorij za montiranje pod /mnt/tecmint .

# mkdir /mnt/tecmint
$ sudo mkdir /mnt/tecmint     [On Debian/Ubuntu based systems]

Jednom kada ste kreirali svoj direktorij točke montiranja, sada pokrenite sljedeću naredbu kao root korisnik za montiranje udaljenog datotečnog sustava pod /mnt/tecmint . U vašem slučaju direktorij za montiranje bio bi bilo što.

Sljedeća naredba će montirati udaljeni direktorij pod nazivom /home/tecmint pod /mnt/tecmint u lokalnom sustavu. (Ne zaboravite zamijeniti x.x.x.x sa svojom IP adresom i točkom montiranja).

# sshfs [email :/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other [email :/home/tecmint/ /mnt/tecmint     [On Debian/Ubuntu based systems]

Ako je vaš Linux poslužitelj konfiguriran s autorizacijom zasnovanom na SSH ključu, tada ćete trebati odrediti put do vaših javnih ključeva kao što je prikazano u sljedećoj naredbi.

# sshfs -o IdentityFile=~/.ssh/id_rsa [email :/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa [email :/home/tecmint/ /mnt/tecmint     [On Debian/Ubuntu based systems]

Ako ste gornju naredbu uspješno pokrenuli bez ikakvih pogrešaka, vidjet ćete popis udaljenih datoteka i direktorija montiranih pod /mnt/tecmint .

# cd /mnt/tecmint
# ls
 ls
12345.jpg                       ffmpeg-php-0.6.0.tbz2                Linux                                           news-closeup.xsl     s3.jpg
cmslogs                         gmd-latest.sql.tar.bz2               Malware                                         newsletter1.html     sshdallow
epel-release-6-5.noarch.rpm     json-1.2.1                           movies_list.php                                 pollbeta.sql
ffmpeg-php-0.6.0                json-1.2.1.tgz                       my_next_artical_v2.php                          pollbeta.tar.bz2

Ako pokrenete df -hT naredbu, vidjet ćete udaljenu točku montiranja sustava datoteka.

# df -hT
Filesystem                          Type        Size  Used Avail Use% Mounted on
udev                                devtmpfs    730M     0  730M   0% /dev
tmpfs                               tmpfs       150M  4.9M  145M   4% /run
/dev/sda1                           ext4         31G  5.5G   24G  19% /
tmpfs                               tmpfs       749M  216K  748M   1% /dev/shm
tmpfs                               tmpfs       5.0M  4.0K  5.0M   1% /run/lock
tmpfs                               tmpfs       749M     0  749M   0% /sys/fs/cgroup
tmpfs                               tmpfs       150M   44K  150M   1% /run/user/1000
[email :/home/tecmint fuse.sshfs  324G   55G  253G  18% /mnt/tecmint

Da biste trajno montirali udaljeni datotečni sustav, morate urediti datoteku koja se zove /etc/fstab . Da biste to učinili, otvorite datoteku s omiljenim uređivačem.

# vi /etc/fstab
$ sudo vi /etc/fstab     [On Debian/Ubuntu based systems]         

Idite na dno datoteke i dodajte joj sljedeći redak te spremite datoteku i izađite. Sustav datoteka udaljenog poslužitelja s donjim unosom montira sa zadanim postavkama.

sshfs#[email :/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 0 0

Obavezno postavite SSH prijavu bez lozinke između poslužitelja za automatsko montiranje datotečnog sustava tijekom ponovnog pokretanja sustava.

Ako je vaš poslužitelj konfiguriran s autorizacijom na temelju SSH ključa, dodajte ovaj redak:

sshfs#[email :/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 0 0

Dalje, trebate ažurirati fstab datoteku kako bi odražavala promjene.

# mount -a
$ sudo mount -a   [On Debian/Ubuntu based systems]

Da biste demontirali udaljeni datotečni sustav, jun izdajte sljedeću naredbu koja će demontirati udaljeni datotečni sustav.

# umount /mnt/tecmint

To je za sada sve, ako se suočavate s bilo kakvim poteškoćama ili vam je potrebna bilo kakva pomoć u postavljanju udaljenog datotečnog sustava, kontaktirajte nas putem komentara i ako smatrate da je ovaj članak vrlo koristan, podijelite ga sa svojim prijateljima.