使用sshfs挂载远程服务器目录

作者: hellojammyPlus | 来源:发表于2016-11-24 10:03 被阅读1871次

点击访问原文
您还可以加入全栈技术交流群(QQ群号:254842154)


服务器日志查看,是开发人员和服务器运维人员在工作中经常会遇到的一件事情,只有一台服务器时,比较好办,直接登录服务器使用tail -f file-path 命令就可以实时查看到日志文件的输出。当有负载的需要,服务器多了之后,就会比较麻烦,为了查找一个问题的日志可能需要登录多台服务器。今天给大家介绍一种借助sshfs,非常简单的日志文件挂载方案,可以方便大家查看服务器日志文件。

sshfs介绍

sshfs是基于fuse构建的ssh文件系统客户端程序,通过它远程主机的配置无需作任何改变,就可以透过SSH协议来挂载远程文件系统了,非常方便及安全。

sshfs的安装,在centOS中的安装命令如下:

yum -y install sshfs

挂载

sshfs的远程文件挂载,需要结合ssh免密码登录一起实施。假设现在有A、B、C三台服务器的日志,需要挂载到D服务器。首先需要将D服务器的公钥写入A、B、C三台服务器。配置方法参见我之前的文章

把远程服务器的 /mydata/logs/目录下的所有文件,挂载到D服务器,在D服务器的/mydata/logs/目录下为每个服务器建一个目录。(ip_address_A代表A服务器的ip地址,需要自行替换)

//把A服务器的 /mydata/logs/ 目录 挂载到 D服务器的 /mydata/logs/A/ 目录

sshfs root@ip_address_A:/mydata/logs/ /mydata/logs/A/

其他两台服务器的挂载方法一样。挂载成功后,可以使用 mount命令查看挂载情况:

mount -l

可以看到挂载的情况:

root@ip_address_A:/mydata/logs/on /mydata/logs/A type fuse.sshfs (rw,nosuid,nodev)

root@ip_address_B:/mydata/logs/on /mydata/logs/B type fuse.sshfs (rw,nosuid,nodev)

root@ip_address_C:/mydata/logs/on /mydata/logs/C type fuse.sshfs (rw,nosuid,nodev)

也可以使用df -h命令查看磁盘的挂载情况。另外,想要开机自动挂载目录,可以编辑/etc/fstab文件,加入以下几行:

sshfs#root@ip_address_A:/mydata/logs/ /mydata/logs/A fuse defaults,auto,allow_other 0 0

sshfs#root@ip_address_B:/mydata/logs/ /mydata/logs/B fuse defaults,auto,allow_other 0 0

sshfs#root@ip_address_C:/mydata/logs/ /mydata/logs/C fuse defaults,auto,allow_other 0 0

其中,allow_other参数代表该设置对其他用户也生效。也必须先把ssh自动登录配置好了,让root用户能够使用root身份登录远程主机。配置方法参见我之前的文章

挂载成功后,就可以在服务器D直接查看所有服务器的日志了,在D服务器的/mydata/logs/目录输入以下命令。(假设A、B、C三台服务器的/mydata/logs/目录下都有log.txt这个文件)

tail -f */log.txt

日志的输出中,会标出日志是在哪台服务器的,例如:

==> A/log.txt <==
get log message from A

假如只想查看日志中包含关键字 a b c的日志,可以这样查看

 tail -f */log.txt | grep 'a b c'

日志的输出会有一定的延时。
需要注意的是,取消挂载时,不要直接删除挂载目录,请使用以下命令取消挂载:

fusermount -u /mydata/logs/A

或者直接使用umount命令取消挂载。

相关文章

  • 挂载远程目录到本地

    Linux使用sshfs挂载远程目录到本地 1.远程服务器安装ssh 2.本地主机安装 sshfs 本地主机是ce...

  • Mac 安装 sshfs

    mac上安装sshfs 将远程服务器上的目录挂载到本地,方便使用本机上的IDE开发工具。使用homebrew安装:...

  • 升级Mojave后使用sshfs要求升级FUSE

    升级Mojave后,使用sshfs挂载远程目录失败,弹出对话框显示报错 Unsupported macOS Ver...

  • 使用sshfs挂载远程服务器目录

    点击访问原文您还可以加入全栈技术交流群(QQ群号:254842154) 服务器日志查看,是开发人员和服务器运维人员...

  • 挂载远程目录到本地(备忘)

    使用sshfs 挂载 卸载 也可以用mount命令远程挂载 首先让我们看一下NFS服务器的安装步骤。一、NFS服务...

  • sshfs挂载远程服务器目录

    服务器日志查看,是开发人员和服务器运维人员在工作中经常会遇到的一件事情,只有一台服务器时,比较好办,直接登录服务器...

  • sshfs的使用

    sshfs可用于将远程目录挂载到本地,在使用之前,需要先进行安装: 对于非root用于,挂载时会出现如下错误信息:...

  • 每天一个Linux 命令 - sshfs

    sshfs *挂载远程目录到本地 * 此命令需要安装Ubuntu安装:$ sudo apt-get install...

  • 轻松挂载远程目录 | sshfs

    前言最近nfs远程挂载目录有点问题,暂时懒得搞,但是方法不但仅仅只有nfs的,比如解决方案还有sshfs,sshf...

  • 使用SSHFS文件系统远程挂载目录

    SSHFS(SSH Filesystem)是一个基于FUSE的文件系统客户端,用于通过SSH连接远程目录。SSHF...

网友评论

    本文标题:使用sshfs挂载远程服务器目录

    本文链接:https://www.haomeiwen.com/subject/ucdbpttx.html