linux下挂载方案总结(centos 6.5)

1、前言

因为笔者在阿里云采用一种前端代理服务器,后端服务器没有公网的架构。笔者公司的程序猿们需要上传源代码时需要把源代码直接送到后端的服务器,故而笔者需要采用挂载技术,把后端的应用程序目录挂载到前端的服务器,然后由前端的vsftp提供上载代码服务,故而整理此文,以便后查。

2、环境

前端主机:

ipaddress=10.161.0.133

hostname=aSer

后端主机(linux)

ipaddress=10.171.0.222

hostname=bSer

后端主机(windows)

ipaddress=10.168.0.49

hostname=cSer

3、samba的挂载

3.1、windows共享服务端设置

In cSer:

3.1.1、增加用户

1)增加名称为smbfs的用户(windows的东西无师自通,增加用户不详述)

2)重点在于隶属于要全部清除(安全考量,拿到密码也登录不了系统)。

3)为smbfs增加密码(本文设置密码为“smbpwd”)

3.1.2、文件夹授权

1)配置共享目录-名称为“web”存放应用程序(这里不啰嗦,不懂百度)。

2)安全设置

注:以上对smbfs授予完全控制的权限

3)共享授权

注:以上授予smbfs读写权限

3.1.3、web下的子文件夹

现在应用程序有两个文件夹,分别为:

www.cmdschool.org
m.cmdschool.org

以上用于下文的测试

3.2、手动挂载

In aSer:

3.2.1、yum源安装

yum -y install cifs-utils

3.2.2、普通挂载

1)挂载

mount -t cifs -o username=smbfs%smbpwd //10.168.0.49/web /mnt/

2)测试

useradd user1
su - user1
cd /mnt

系统权限拒绝进入被挂载目录

exit
cd /mnt
touch test.txt

root可以完成以上操作,故而windows的smbfs权限全部由root继承的缘故,其他用户没有权限。

3.2.3、带权限挂载

1)挂载

mount -t cifs -o username=smbfs%smbpwd,dir_mode=0777,file_mode=0777 //10.168.0.49/web /mnt/

2)测试

su - user1
cd /mnt
touch test.txt
ll test.txt

以上普通用户顺利完成,故而权限过大,不安全。

3.2.4、指定UID和GID挂载

注:本范例是为了解决linux下挂载winows共享目录后普通ftp上传用户无权限而设计。

1)增加测试用户

useradd ftpuser1 -d /mnt/

2)查询ftp的UID和GID

id ftpuser1

查询结果如下:

uid=501(ftpuser1) gid=501(ftpuser1) groups=501(ftpuser1),48(apache)

3)挂载

mount -t cifs -o username=smbfs%smbpwd,uid=501,gid=501 //10.168.0.49/web /mnt/

4)测试

测试非授权用户:

su - user1
cd /mnt
exit

以上同样被拒绝

测试正式授权用户:

su - ftpuser1
cd /mnt
touch test2.txt

以上顺利完成,ftpuser1具有完全的权限

5)清理测试用户

userdel ftpuser1

3.3、linux端自动挂载

手动挂载的缺点有经验的运维人员都知道,当网络不稳定的情况挂载会自动断开,需要运维人员重新挂载,故而,本文的重点在于自动挂载。

In aSer:

3.3.1、yum源安装

yum -y install autofs

3.3.2、启动服务和配置服务开机启动

/etc/init.d/autofs start
chkconfig autofs on

3.3.3、配置父挂载点

vim编辑/etc/auto.master

/serWebRoot /etc/auto.web

注:/serWebRoot目录autofs会自动创建,请不要手动创建(注意后面不带"/")

3.3.4、配置子挂载点

vim编辑/etc/auto.web

1)设置子挂载点

www.cmdschool.org -fstype=cifs,username=smbfs,password=smbpwd,uid=501,gid=501 ://10.168.0.49/web/www.cmdschool.org

2)重启服务

/etc/init.d/autofs restart

3)增加ftp正式用户

useradd ftpuser1 -d /mnt/ -s /sbin/nologin

注:指定用户家目录和不分配shell(安全考量,ftp配置这里不详述)

4)测试

su - ftpuser1
cd /serWebRoot/www.cmdschool.org
toch test3.txt

3.3.5、通配符的写法

1)配置子挂载点

* -fstype=cifs,username=smbfs,password=smbpwd,uid=501,gid=501 ://10.168.0.49/web/&

2)重启服务

/etc/init.d/autofs restart

3)测试

cd /serWebRoot/www.cmdschool.org
cd /serWebRoot/m.cmdschool.org

4、NFS的挂载

4.1、NFS服务端配置

In bSer:

4.1.1、yum源安装

yum install -y nfs-utils

4.1.2、启动和设置开机启动

/etc/init.d/rpcbind start
chkconfig rpcbind on
/etc/init.d/nfs start
chkconfig nfs on

4.1.3、配置服务端

新建服务文件夹

mkdir /var/www/w1.cmdschool.org
chown root:apache -R /var/www/w1.cmdschool.org
chmod -R 770

以上授权很有意思(你会发现nfs客户端没有权限访问,下面会教你授权)

vim编辑/etc/exports

/var/www/w1.cmdschool.org 10.161.0.133/32(rw,sync)

4.1.4、重启服务

/etc/init.d/nfs restart

4.2、客户端手动挂载

In aSer:

4.2.1、客户端挂载

showmount -e 10.171.0.222
mount -t nfs 10.171.0.222:/var/www/w1.cmdschool.org /mnt/

4.2.2、测试

ls /mnt/

看到如下拒绝信息:

ls: cannot open directory /mnt/: Permission denied

4.2.3、NFS服务器端授权

In bSer:

查询nfs进程执行的用户名:

 cat /etc/passwd | grep nfs

可以发现用户名:

rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

授权

尝试给nfsnobody授权

setfacl -m u:nfsnobody:rwx /var/www/w1.cmdschool.org

4.2.4、增加测试用户

In aSer:

useradd ftpuser2 -d /mnt/ -G apache

4.2.5、再次测试

In aSer:

su - ftpuser2
ls /mnt
touch test4.txt

以上你会发现没有拒绝的信息。

4.2.6、清理测试用户

In aSer:

userdel ftpuser2

4.3、autofs自动挂载

In aSer:

1)自动挂载设置

vim /etc/auto.web

www.cmdschool.org -fstype=nfs,rw 10.171.0.222:/var/www/1.cmdschool.org

2)重启服务

/etc/init.d/autofs restart

3)增加正式的ftp用户

useradd ftpuser2 -d /mnt/ -s /sbin/nologin -G apache

注:指定用户家目录和不分配shell,并附加到apche组(安全考量,ftp配置这里不详述)

参阅文档:

http://www.jinbuguo.com/man/mount.cifs.html

时间: 2024-10-21 04:22:27

linux下挂载方案总结(centos 6.5)的相关文章

Linux下挂载iscsi存储

1. 检查系统是否安装iSCSI initiator [[email protected] ~]# rpm -qa|grep iscsi [[email protected] ~]#  [[email protected] ~]# mount /dev/cdrom /mnt/ mount: block device /dev/sr0 is write-protected, mounting read-only [[email protected] ~]# cd /mnt/ [[email pro

在Linux下挂载Windows系统共享目录

在Linux下挂载Windows系统共享目录 默认情况下,Linux服务器会装有samba-client,但是没有装samba-server.但是访问Windows系统共享,安装有samba-client就可以了. [[email protected] ~]# rpm -qa | grep samba samba-3.6.23-14.el6_6.x86_64 samba-client-3.6.23-14.el6_6.x86_64 samba-common-3.6.23-14.el6_6.x86_

Linux下挂载Windows共享目录

$ sudo mount.cifs //windows-ip/shared  /media/ -o user=username password=password 该命令挂载Windows下的shared共享目录到本地/media目录下. Windows的用户名是username, 密码是password (作相应的修改) 这里的CIFS(Common Internet File System)协议是SMB协议的后续版本. Linux下挂载Windows共享目录,布布扣,bubuko.com

linux下挂载NTFS分区错误修复

今天在linux下打开win的NTFS硬盘总是提示出错了,而且是全部的NTFS盘都出错,其中sda1错误显示如下: Error mounting /dev/sda1 at /media/wangbo/24F02EECF02EC3C0: Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sd

Linux下挂载光盘和U盘

Linux下挂载光盘和U盘 挂载 linux下硬盘.U盘.软盘.移动硬盘都必须挂载后才能使用,不过硬盘的挂载是系统自动进行的. linux中每一个硬件都有一个设备文件名,就是将U盘什么的设备文件名与挂载点(盘符)关联起来,这样就可以通过访问挂载点就可以访问硬件设备. 查询与自动挂载 查询系统中已经挂载的设备,-l会显示卷标名称 mount [-l] 依据配置文件/etc/fstab的内容,自动挂载 mount -a 挂载命令格式 mount [-t 文件系统] [-L 卷标名] [-o 特殊选项

Linux下的网络配置 - CentOS 6.x

Linux下的网络配置 - CentOS 6.x 文本关键字:Linux.CentOS.网络服务.eth0.网卡配置项 一.查看网络信息 通常我们查看本机的网络是否正常,主要需要知道的就是网卡是否在正常工作,相关的网络信息(IP地址.广播地址.子网掩码等)是什么.除此之外,我们需要测试当前机器是否连入互联网,或者是否能够与网关正常通信. 1. ifconfig ifconfig是一个最常用的,可以查看和设置各网卡的工具. 直接使用ifconfig命令:列出所有当前已启用的网卡信息 使用ifcon

Azure上如何在Linux下挂载数据磁盘

在Azure上创建了虚拟机之后,我们在一些情况下会需要添加更多的数据磁盘来存储持久化数据,本文介绍如何快速的在Azure Linux的虚拟机上添加数据磁盘并初始化: 登陆Azure的管理界面,并创建虚拟机,本文使用CentOS 6.5作为示例操作系统,其他Linux操作系统类似 我们先使用SSH登录到改Linux操作系统,检查下当前系统的磁盘状态: 我们可以看到,目前的Linux系统下只有/sda和/sdb设备,其中/dev/sdb1是系统自动分配的临时磁盘,请不要将重要数据存储在上面,重要的数

linux下挂载VHD等虚拟磁盘文件

1.RAW格式虚拟磁盘 linux下可以直接挂载raw格式的虚拟磁盘镜像文件. 例如,这里先用dd命令创建一个文件,然后将其格式化为ext4格式(只有一个分区),然后挂载到/mnt目录.下面的raw.img磁盘镜像文件就一个分区,所以没有使用offset=来指定偏移.如果有多个分区,则可以通过指定偏移来挂载.具体的可以查阅mount命令的相关参数信息. > dd if=/dev/zero of=raw.img bs=1M count=512 记录了512+0 的读入 记录了512+0 的写出 5

Linux下进入single模式与Linux下挂载U盘

老大lg安排个任务,将hzc服务器里某年某月某天的录音文件打包并且拷贝出来.后经同事yh了解到:这台机器有问题,只能通过安全模式进入--闲话少说,进入正题. 一.Linux下进入single模式 1.开机之后,连击数字1键,在grub 启动后,移动键盘到Linux的启动项(grub页面选择下面这个选项): 2.按e键,然后再移动键盘到类似下面的一行,也就是kernel的那行: kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb