linux-挂载

挂载

将硬盘设备挂载到/data目录。

[root@linuxprobe ~]# mkdir /data
[root@linuxprobe ~]# mount /dev/vdb1 /data

设置系统启动后自动挂载该硬盘设备。

[root@linuxprobe ~]# vim /etc/fstab
/dev/vdb1 /data ext3 defaults 0 0

千万注意,上面的代码如果写错,可能会导致系统无法重启!!!

这里关于ext3的声明还有问题,我后面再研究

卸载

[root@linuxprobe ~]# umount /dev/vdb1

如果出现,说明目录还在被使用中

那怎么办呢?

  • 先取消其他程序对目录的使用

  • 可以用umount –l /dev/vdb1,此命令中的-l是等目录空闲后卸载的意思

修改

我们拿到服务器后,挂载盘通常默认为/home,如果我们需要改成/data:

umount /home
mkdir /data
mount /dev/mapper/centos-home /data
vim /etc/fstab  把/home改成/data

让fstab生效(用的比较少)

[root@linuxprobe ~]# mount –a

此命令是使/etc/fstab这份文件生效

远程挂载

举个例子

两台服务器,一台叫java(ip 11.28.224.18),一台叫nginx(11.28.224.17),我们在java上写文件,写入到nginx上
两台机器都安装nfs (network file system)

如何实现

1、先在nginx上安装nfs

先上nginx

[root@linuxprobe ~]# rpm -qa |grep nfs

安装

[root@linuxprobe ~]# yum install nfs-utils

编辑,写入如下内容

[root@linuxprobe ~]# vim /etc/exports
/data/nginx/grjf_front/upload 11.28.224.18(rw,no_root_squash,async)

上面的命令比较好理解:允许 Ip为11.28.224.18的服务器访问本服务器的/data/nginx/grjf_front/upload文件夹,后面括号里的内容是必须的,目的是设定操作规则

重启nfs

[root@linuxprobe ~]# service nfs restart

此时服务端已完成

2、登录java,开始挂链

创建目录

[root@linuxprobe ~]# mkdir -p /data/nginx/grjf_front/upload

开始远程挂载

mount -t nfs 11.28.224.17:/data/nginx/zhhy/upload /data/nginx/zhhy/upload

如此一来,操作java服务器上的upload目录就相当于直接nginx服务器的upload目录

当然,操作nginx上被挂载的upload目录,这个java服务器上的upload会跟着变

查看挂载情况

[root@linuxprobe ~]# mount | grep nfs

问:客户端报错Stale file handle

重新挂载即可解决问题

[root@linuxprobe ~]# umount -f /directory  #先卸载,后重新挂载
/bin/mount -t nfs 192.168.2.2:/data /data

问:nginx 403 怎么办??

如果是你挂载给nginx用,访问出现403的。修改nginx.conf
1、修改nginx.conf,将第一行修改为 user root; , 保存退出。
2、停止 nginx -s stop
3、重启 nginx -c nginx.conf


转载请注明来源。 欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。 可以在下面评论区评论,也可以邮件至 sharlot2050@foxmail.com。

文章标题:linux-挂载

字数:602

本文作者:夏来风

发布时间:2017-05-17, 12:23:12

原始链接:http://www.demo1024.com/blog/linux-mount/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。