« 上一篇下一篇 »

远程HFS云主机ssh挂载远程目录

    什么是 远程HFS?
SSHFS(Secure SHell FileSys云端m)是一个客户端,能够让咱们经过 SSH 文件传输协议(SFTP)挂载长途的文件体系而且在本地机器上和长途的目录和文件进行远程。
SFTP 是一种经过 SSH 协议供给文件访/问、文件传输云端件办理功用的安全文件传输协议。由于 SSH 在网络中从一台电脑到另一台电脑传输文件的时分运用数据加密通道,而且 SSHFS 内置在 FUSE(用户空间的文件体系)内核模块,答应任何非特权用户在不修正内核代码的状况下创立他们自己的文件体系。
     在这篇文章中,咱们将会向你展现在恣意 Linux 发行版上怎么装置而且运用 SSHFS 客户端,在本地 Linux 机器上挂载长途的 Linux 文件体系或许目录。

为了像本地访/问云端主机上的目录,一般咱们会在云端主机上运用nfs来导出目录,并在本地主机上mount这个nfs文件体系。假如是Windows体系,则运用cifs或samba的方法来访/问。
但可能咱们疏忽了一个远程云端最通用的东西:ssh。其实许多和长途远程的行为,根据ssh都能完结,即使是完成像NFS相同的功用。
怎么经过ssh来挂载长途目录远程求装置fuse-sshfs包,这个包在epel中供给。运用fuse-sshfs包供给的sshfs东西能够根据ssh直接挂载长途目录远程必像NFS相同还要export。
$ yum -y install fuse-sshfs
$ rpm -ql fuse-sshfs
/usr/bin/sshfs
/usr/share/doc/fuse-sshfs-2.5
/usr/share/doc/fuse-sshfs-2.5/AUTHORS
/usr/share/doc/fuse-sshfs-2.5/COPYING
/usr/share/doc/fuse-sshfs-2.5/ChangeLog
/usr/share/doc/fuse-sshfs-2.5/FAQ.txt
/usr/share/doc/fuse-sshfs-2.5/NEWS
/usr/share/doc/fuse-sshfs-2.5/README
/usr/share/man/man1/sshfs.1.gz
例如,挂载192.168.100.150上的根目录"/"到本地的/mnt上。留意:只能挂载长途目录,像普通文件、块设备(如/dev/sda2)等无远程载。
sshfs root@192.168.100.150:/ /mnt

t

如此一来,今后能够直接访/问本地/mnt来访/问云端的根目录。例如仿制文件、移动文件、新建文件等等操作。
假如要卸云端载点。直接umount即可。
umount /mnt
比较于NFS,sshfs更简练,它是根据fuse模块来完成的,能够以为sshfs所挂载的文件体系是fuse文件体系的一种完成。所谓fuse文件体系,它全称为filesystem in userspace,显然,它是用户空间的文件体系(其实是一个虚拟文件体系),其功用十分强壮,可用于完成自己的文件体系。具体信息能够sshfs -h,man sshfs,man fusermount,man mount.fuse。
可是NFS比sshfs要完好的多,nfs毕竟是"小型"分布式文件体系,对数据的一致性、完好性完成的都比较完美,访/问权限操控也比sshfs要丰富的多。
总的来说,sshfs能够暂时用来快速访/问长途文件。
更具体的s远程fs,参见下面的
怎么运用 SSHFS 经过 SSH 挂载长途云端Linux 文件体系远程目录
写这篇文章的首要意图就是供给一步一步的指导,关于怎么运用 SSHFS 经过 SSH 挂载长途的 Linux 文件体系或目远程
这篇文章关于那些无论出于什么意图,期望在他们本地的体系中挂载云端的文件体系的用户或许体系办理员有协助。咱们经过 Linux 体系中的一个装置了 SSHFS 客户端进行实践测验,而且成功的挂载了长途的文件体系。
在咱们进一步装置之前远程咱们了解一下 SSHFS 的相关内容,以及它是怎么作业的。
S云端fs 挂载长途的 Linux 文件体系或许目录
什么是 远程HFS?
SSHFS(Secure SHell FileSys云端m)是一个客户端,能够让咱们经过 SSH 文件传输协议(SFTP)挂载长途的文件体系而且在本地机器上和长途的目录和文件进行远程。
SFTP 是一种经过 SSH 协议供给文件访/问、文件传输云端件办理功用的安全文件传输协议。由于 SSH 在网络中从一台电脑到另一台电脑传输文件的时分运用数据加密通道,而且 SSHFS 内置在 FUSE(用户空间的文件体系)内核模块,答应任何非特权用户在不修正内核代码的状况下创立他们自己的文件体系。
在这篇文章中,咱们将会向你展现在恣意 Linux 发行版上怎么装置而且运用 SSHFS 客户端,在本地 Linux 机器上挂载长途的 Linux 文件体系或许目录。
过程 1:在 Linu远程体系上装置 SSHFS
默许状况下,sshfs 包不存在所有的云端 Linux 发行版中,你需求在你的 Linux 体系中启用 epel 库房,在 Yum 指令行的协助下装置 SSHFS 及其依靠。
#yum install sshfs
# dnf install sshfs 【在Fedora22+发行版上】
$ sudoapt-get install sshfs 【根据Debian/Ubuntu的体系】
过程 2:创立 SSHFS 挂载目录
当你装置 SSHFS 包之后,你需求创立一个挂载点目录,在这儿你即将挂载你的长途文件体系。例如,咱们在 /mnt/tecmint 下创立挂载目录。
#mkdir/mn远程tecmint
$ sudomkdir/mnt/tecmint云端根据Debian/Ubuntu的体系】
过程 3:运用 SSHFS 挂载长途的文件体系
当你现已创立你的挂载点目录之后,现在运用 root 用户运行下面的指令行,在 /mnt远程ecmint 目录下挂载长途的文件体系。视你的状况挂载目录能云端任何目录。
下面的指令即将会在本地的 /mnt/tecmint 目远程挂载一个叫长途的一个 /home/tecmint 目录。(不要忘了运用你的 IP 地址和挂载点替换 x.x.x.x)。远程sshfs tecmint@x.x.x.x:/home/te云端int/ /mnt/tecmint
$ sudo sshfs -o allow_other tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint 【根据Debian/Ubuntu的体系】
假如你的 Linux 服务器配置为根据 SSH 密钥授权,那么你将需求运用如下所示的指令行指定你的公共密钥的途径。
# sshfs -o IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint 【根据Debian/Ubuntu的体系】
过程 4:验证长途的文件体系挂载成功
假如你现已成功的运行了上面的指令而且没有任何错误,你将会看到挂载在 /mnt/tecmint 目录下的长途远程件和目录的列表
#cd/mnt/tecmint
#ls
[root@ 云端cmint]#ls
12345.jpg ffmpeg-php-0.6.0.tbz2Linux 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
过程 5:运用 df -hT 指令查看挂载点
假如你运行 df -hT指令,你将会看到长途文件体系的挂载点。
#df-hT
样本输出:
FilesystemTypeSizeUsedAvailUse%Mounted on
udev devtmpfs 730M073远程0%/dev
tmpfs tmpfs 150M4.9M145M4%云端un
/dev/sda1 ext4 31G5.5G24G19%/
tmpfs tmpfs 749M216K748M1%/dev/shm
tmpfs tmpfs 5.0M4.0K5.0M1%/run/lock
tmpfs tmpfs 749M0749M0%/sys/fs/cgroup
tmpfs tmpfs 150M44K150M1%/run/user/1000
tecmint@192.168.0.102:/home/tecmint fuse.sshfs 324G55G253G18%/mnt/tecmint
过程 6:永久挂载长途文件体系
为了永久的挂载长途的文件体系,你需求修正一个叫 /etc/fstab 的文件。照着做,运用你最喜欢的编辑器翻开文件。
#vi/etc/fstab
$ sudovi/etc/fstab 【根据Debian/Ub远程tu的体系】
移动到文件的底部而且增加下面的一行,保存文件并退出。云端条目表明运用默许的设置挂载长途的文件体系。
sshfs#tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 00
保证服务器之间答应 SSH 无暗码登录,这样体系重启之后才干主动挂载文件远程。
假如你的服务器配置为根据 SSH 密钥的认证方法,请参加如下行云端shfs#tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 00
接下来,你需求更新 fstab 文件使修正生效。
#mount-a
$ sudomount-a 【根据Debian/Ubuntu的体系】
过程 7:卸载长途的文件体系
为了卸载长途的文件体系,只需求宣布以下的指令即可。
#umount/mnt/tecmint
目前为止就这样了,假如你在挂载长途文件体系的时分遇到任何问题或许需求任何协助,请经过谈论联络咱们,假如你感觉这篇文章十分有用,请共享给你的朋友们。