Sådan monteres eksternt Linux-filsystem eller bibliotek ved hjælp af SSHFS over SSH


Hovedformålet med at skrive denne artikel er at give en trinvis vejledning i, hvordan man monterer eksternt Linux-filsystem ved hjælp af SSHFS-klient over SSH.

Denne artikel er nyttig for de brugere og systemadministratorer, der ønsker at montere eksternt filsystem på deres lokale systemer til ethvert formål. Vi har praktisk talt testet ved at installere SSHFS-klienten på et af vores Linux-system og med succes monterede eksterne filsystemer.

Inden vi fortsætter installationen, skal vi forstå SSHFS, og hvordan det fungerer.

Hvad er SSHFS?

SSHFS står for (Secure SHell FileSystem) -klient, der gør det muligt for os at montere eksternt filsystem og interagere med fjernmapper og filer på en lokal maskine ved hjælp af SSH File Transfer Protocol (SFTP).

SFTP er en sikker filoverførselsprotokol, der giver filadgang, filoverførsel og filhåndteringsfunktioner via Secure Shell-protokollen. Fordi SSH bruger kryptering, mens de overfører filer over netværket fra en computer til en anden computer, og SSHFS leveres med indbygget kernemodul FUSE (Filesystem in Userspace), der gør det muligt for ikke-privilegerede brugere at oprette deres filsystem uden at ændre kernekoden.

I denne artikel viser vi dig, hvordan du installerer og bruger SSHFS-klient på enhver Linux-distribution til at montere eksternt Linux-filsystem eller bibliotek på en lokal Linux-maskine.

Som standard findes der ikke sshfs-pakker på alle større Linux-distributioner, du skal aktivere epel-lager under dine Linux-systemer for at installere sshfs ved hjælp af Yum-kommandoen med deres afhængigheder.

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

Når sshfs-pakken er installeret, skal du oprette et mount point-bibliotek, hvor du vil montere dit eksterne filsystem. For eksempel har vi oprettet monteringsmappe under /mnt/tecmint .

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

Når du har oprettet din monteringspunktmappe, skal du køre følgende kommando som en rootbruger for at montere eksternt filsystem under /mnt/tecmint . I dit tilfælde ville monteringsmappen være noget.

Den følgende kommando monterer fjernmappe kaldet /home/tecmint under /mnt/tecmint i det lokale system. (Glem ikke at udskifte x.x.x.x med din IP-adresse og monteringspunkt).

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

Hvis din Linux-server er konfigureret med SSH-nøglebaseret autorisation, skal du angive stien til dine offentlige nøgler som vist i følgende kommando.

# 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]

Hvis du har kørt ovenstående kommando uden nogen fejl, vil du se listen over eksterne filer og mapper monteret under /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

Hvis du kører df -hT-kommandoen, vil du se det eksterne filsystems monteringspunkt.

# 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

For at montere eksternt filsystem permanent skal du redigere filen kaldet /etc/fstab . For at gøre det skal du åbne filen med din yndlingseditor.

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

Gå til bunden af filen og tilføj følgende linje til den, og gem filen og afslut. Nedenstående postmonterede eksterne serverfilsystem med standardindstillinger.

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

Sørg for, at du har SSH adgangskodeløst login på plads mellem servere for automatisk montering af filsystem under genstart af systemet ..

Hvis din server er konfigureret med SSH-nøglebaseret autorisation, skal du tilføje denne linje:

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

Dernæst skal du opdatere fstab-filen for at afspejle ændringerne.

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

For at afmontere det eksterne filsystem skal du udstede følgende kommando, det vil afmontere det eksterne filsystem.

# umount /mnt/tecmint

Det er alt for nu, hvis du har problemer eller har brug for hjælp til montering af eksternt filsystem, bedes du kontakte os via kommentarer, og hvis du føler, at denne artikel er meget nyttig, så del den med dine venner.