linux下挂载方案总结(centos 6.5) |
您所在的位置:网站首页 › windows开机自动挂载nfs › linux下挂载方案总结(centos 6.5) |
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下的子文件夹 现在应用程序有两个文件夹,分别为: 以上用于下文的测试 3.2、手动挂载 In aSer: 3.2.1、yum源安装 1yum -y install cifs-utils1yum -y install cifs-utils 3.2.2、普通挂载 1)挂载 1mount -t cifs -o username=smbfs%smbpwd //10.168.0.49/web /mnt/1mount -t cifs -o username=smbfs%smbpwd //10.168.0.49/web /mnt/ 2)测试 123useradd user1su - user1cd /mnt123useradd user1su - user1cd /mnt 系统权限拒绝进入被挂载目录 123exitcd /mnttouch test.txt123exitcd /mnttouch test.txt root可以完成以上操作,故而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/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.txt1234su - user1cd /mnttouch test.txtll test.txt 以上普通用户顺利完成,故而权限过大,不安全。 3.2.4、指定UID和GID挂载 注:本范例是为了解决linux下挂载winows共享目录后普通ftp上传用户无权限而设计。 1)增加测试用户 1useradd ftpuser1 -d /mnt/1useradd ftpuser1 -d /mnt/ 2)查询ftp的UID和GID 1id ftpuser11id ftpuser1 查询结果如下: 1uid=501(ftpuser1) gid=501(ftpuser1) groups=501(ftpuser1),48(apache)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/1mount -t cifs -o username=smbfs%smbpwd,uid=501,gid=501 //10.168.0.49/web /mnt/ 4)测试 测试非授权用户: 123su - user1cd /mntexit123su - user1cd /mntexit 以上同样被拒绝 测试正式授权用户: 123su - ftpuser1cd /mnttouch test2.txt123su - ftpuser1cd /mnttouch test2.txt 以上顺利完成,ftpuser1具有完全的权限 5)清理测试用户 1userdel ftpuser11userdel ftpuser1 3.3、linux端自动挂载 手动挂载的缺点有经验的运维人员都知道,当网络不稳定的情况挂载会自动断开,需要运维人员重新挂载,故而,本文的重点在于自动挂载。 In aSer: 3.3.1、yum源安装 1yum -y install autofs1yum -y install autofs 3.3.2、启动服务和配置服务开机启动 12/etc/init.d/autofs startchkconfig autofs on12/etc/init.d/autofs startchkconfig autofs on 3.3.3、配置父挂载点 vim编辑/etc/auto.master 1/serWebRoot /etc/auto.web1/serWebRoot /etc/auto.web 注:/serWebRoot目录autofs会自动创建,请不要手动创建(注意后面不带"/") 3.3.4、配置子挂载点 vim编辑/etc/auto.web 1)设置子挂载点 2)重启服务 1/etc/init.d/autofs restart1/etc/init.d/autofs restart 3)增加ftp正式用户 1useradd ftpuser1 -d /mnt/ -s /sbin/nologin1useradd ftpuser1 -d /mnt/ -s /sbin/nologin 注:指定用户家目录和不分配shell(安全考量,ftp配置这里不详述) 4)测试 3.3.5、通配符的写法 1)配置子挂载点 1* -fstype=cifs,username=smbfs,password=smbpwd,uid=501,gid=501 ://10.168.0.49/web/&1* -fstype=cifs,username=smbfs,password=smbpwd,uid=501,gid=501 ://10.168.0.49/web/& 2)重启服务 1/etc/init.d/autofs restart1/etc/init.d/autofs restart 3)测试 4、NFS的挂载 4.1、NFS服务端配置 In bSer: 4.1.1、yum源安装 1yum install -y nfs-utils1yum install -y nfs-utils 4.1.2、启动和设置开机启动 1234/etc/init.d/rpcbind startchkconfig rpcbind on/etc/init.d/nfs startchkconfig nfs on1234/etc/init.d/rpcbind startchkconfig rpcbind on/etc/init.d/nfs startchkconfig nfs on 4.1.3、配置服务端 新建服务文件夹 以上授权很有意思(你会发现nfs客户端没有权限访问,下面会教你授权) vim编辑/etc/exports 4.1.4、重启服务 1/etc/init.d/nfs restart1/etc/init.d/nfs restart 4.2、客户端手动挂载 In aSer: 4.2.1、客户端挂载 4.2.2、测试 1touch /mnt/a.txt1touch /mnt/a.txt 4.2.3、NFS服务器端授权 In bSer: 查询nfs进程执行的用户名: 1 cat /etc/passwd | grep nfs1 cat /etc/passwd | grep nfs 可以发现用户名: 12rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologinnfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin12rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologinnfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin 授权 尝试给nfsnobody授权 4.2.4、增加测试用户 In aSer: 1useradd ftpuser2 -d /mnt/ -G apache1useradd ftpuser2 -d /mnt/ -G apache 4.2.5、再次测试 In aSer: 123su - ftpuser2ls /mnttouch test4.txt123su - ftpuser2ls /mnttouch test4.txt 以上你会发现没有拒绝的信息。 4.2.6、清理测试用户 In aSer: 1userdel ftpuser21userdel ftpuser2 4.3、autofs自动挂载 In aSer: 1)自动挂载设置 vim /etc/auto.web 2)重启服务 1/etc/init.d/autofs restart1/etc/init.d/autofs restart 3)增加正式的ftp用户 1useradd ftpuser2 -d /mnt/ -s /sbin/nologin -G apache1useradd ftpuser2 -d /mnt/ -s /sbin/nologin -G apache 注:指定用户家目录和不分配shell,并附加到apche组(安全考量,ftp配置这里不详述) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |