首页 Linux网维 linux下挂载方案总结(centos 6.5)

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

1、前言因为笔者在阿里云采用一种前端代理服务器,后端服务器没有公网的架构笔者公司的程序猿们需要上传源代码时需要把源代码直接送到后端的服务器,故而笔者需要采用挂载技术,把后端的应用程…

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

2、环境前端主机:ipaddress=10.161.0.133hostname=aSer后端主机(linux)ipaddress=10.171.0.222hostname=bSer后端主机(windows)

ipaddress=10.168.0.49hostname=cSer3、samba的挂载3.1、windows共享服务端设置In cSer:3.1.1、增加用户

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

1)增加名称为smbfs的用户(windows的东西无师自通,增加用户不详述)2)重点在于隶属于要全部清除(安全考量,拿到密码也登录不了系统)3)为smbfs增加密码(本文设置密码为“smbpwd”)3.1.2、文件夹授权

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

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

注:以上对smbfs授予完全控制的权限3)共享授权

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

注:以上授予smbfs读写权限3.1.3、web下的子文件夹现在应用程序有两个文件夹,分别为:12www.cmdschool.orgm.cmdschool.org以上用于下文的测试3.2、手动挂载In aSer:

3.2.1、yum源安装1yum -y install cifs-utils3.2.2、普通挂载1)挂载1mount -t cifs -o username=smbfs%smbpwd //10.168.0.49/web /mnt/

2)测试123useradd user1su – user1cd /mnt系统权限拒绝进入被挂载目录123exitcd /mnttouch test.txtroot可以完成以上操作,故而windows的smbfs权限全部由root继承的缘故,其他用户没有权限。

3.2.3、带权限挂载1)挂载1mount -t cifs -o username=smbfs%smbpwd,dir_mode=0777,file_mode=0777 //10.168.0.49/web /mnt/

2)测试1234su – user1cd /mnttouch test.txtll test.txt以上普通用户顺利完成,故而权限过大,不安全3.2.4、指定UID和GID挂载注:本范例是为了解决linux下挂载winows共享目录后普通ftp上传用户无权限而设计。

1)增加测试用户1useradd ftpuser1 -d /mnt/2)查询ftp的UID和GID1id ftpuser1查询结果如下:1uid=501(ftpuser1) gid=501(ftpuser1) groups=501(ftpuser1),48(apache)

3)挂载1mount -t cifs -o username=smbfs%smbpwd,uid=501,gid=501 //10.168.0.49/web /mnt/4)测试测试非授权用户:123su – user1

cd /mntexit以上同样被拒绝测试正式授权用户:123su – ftpuser1cd /mnttouch test2.txt以上顺利完成,ftpuser1具有完全的权限5)清理测试用户1userdel ftpuser1

3.3、linux端自动挂载手动挂载的缺点有经验的运维人员都知道,当网络不稳定的情况挂载会自动断开,需要运维人员重新挂载,故而,本文的重点在于自动挂载In aSer:3.3.1、yum源安装1yum -y install autofs。

3.3.2、启动服务和配置服务开机启动12/etc/init.d/autofs startchkconfig autofs on3.3.3、配置父挂载点vim编辑/etc/auto.master1/serWebRoot /etc/auto.web

注:/serWebRoot目录autofs会自动创建,请不要手动创建(注意后面不带”/”)3.3.4、配置子挂载点vim编辑/etc/auto.web1)设置子挂载点1www.cmdschool.org -fstype=cifs,username=smbfs,password=smbpwd,uid=501,gid=501 ://10.168.0.49/web/www.cmdschool.org

2)重启服务1/etc/init.d/autofs restart3)增加ftp正式用户1useradd ftpuser1 -d /mnt/ -s /sbin/nologin注:指定用户家目录和不分配shell(安全考量,ftp配置这里不详述)

4)测试123su – ftpuser1cd /serWebRoot/www.cmdschool.orgtoch test3.txt3.3.5、通配符的写法1)配置子挂载点1* -fstype=cifs,username=smbfs,password=smbpwd,uid=501,gid=501 ://10.168.0.49/web/&

2)重启服务1/etc/init.d/autofs restart3)测试12cd /serWebRoot/www.cmdschool.orgcd /serWebRoot/m.cmdschool.org

4、NFS的挂载4.1、NFS服务端配置In bSer:4.1.1、yum源安装1yum install -y nfs-utils4.1.2、启动和设置开机启动1234/etc/init.d/rpcbind start

chkconfig rpcbind on/etc/init.d/nfs startchkconfig nfs on4.1.3、配置服务端新建服务文件夹123mkdir /var/www/w1.cmdschool.org

chown root:apache -R /var/www/w1.cmdschool.orgchmod -R 770以上授权很有意思(你会发现nfs客户端没有权限访问,下面会教你授权)vim编辑/etc/exports

1/var/www/w1.cmdschool.org 10.161.0.133/32(rw,sync,no_root_squash)4.1.4、重启服务1/etc/init.d/nfs restart4.2、客户端手动挂载

In aSer:4.2.1、客户端挂载12showmount -e 10.171.0.222mount -t nfs 10.171.0.222:/var/www/w1.cmdschool.org /mnt/

4.2.2、测试1touch /mnt/a.txt4.2.3、NFS服务器端授权In bSer:查询nfs进程执行的用户名:1 cat /etc/passwd | grep nfs可以发现用户名:12rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin

nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin授权尝试给nfsnobody授权1setfacl -m u:nfsnobody:rwx /var/www/w1.cmdschool.org

4.2.4、增加测试用户In aSer:1useradd ftpuser2 -d /mnt/ -G apache4.2.5、再次测试In aSer:123su – ftpuser2ls /mnttouch test4.txt

以上你会发现没有拒绝的信息4.2.6、清理测试用户In aSer:1userdel ftpuser24.3、autofs自动挂载In aSer:1)自动挂载设置vim /etc/auto.web1www.cmdschool.org -fstype=nfs,rw 10.171.0.222:/var/www/1.cmdschool.org。

2)重启服务1/etc/init.d/autofs restart3)增加正式的ftp用户1useradd ftpuser2 -d /mnt/ -s /sbin/nologin -G apache注:指定用户家目录和不分配shell,并附加到apche组(安全考量,ftp配置这里不详述)

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 3182235786a

为您推荐

linux文件命令

linux文件命令

在 Linux 中,我们可以使用 `with open()` 语句和 `write()` 函数来写入文件。以下是一个简单...
linux的命令

linux的命令

以下是一个简单的 Linux 命令示例,该命令将显示当前日期和时间: “`c #include <st...
linux 命令

linux 命令

由于 Linux 命令是由 C 语言编写的,因此下面是一个简单的用中文编写的 Linux 命令示例,它将输出“Hello...
linux命令tar

linux命令tar

这个问题看起来有些模糊,我不确定您是想了解如何在 Linux 系统中使用 tar 命令,还是如何编写一个名为 tar 的...
linux压缩命令

linux压缩命令

Linux压缩命令:高效管理文件和目录 Linux操作系统提供了一系列强大的压缩命令,使您能够高效地管理文件和目录。无论...

发表回复

返回顶部