执行数据库备份的时候需要把文件夹设置在windows的共享文件上。在使用mount命令挂载到linux上后。文件路径和文件都是可以访问,但是不能写入,导致系统在上传文件的时候提示“权限不够,没有写权限”。用"ls-l"查看挂载文件的权限设置是drwxr-xr-x,很明显没有写权限。想当然使用chmod来更改文件夹权限,结果提示权限不够。root和当前用户都不能正常修改权限。
使用下面命令Linux上挂载windows上共享文件夹时,成功之后在Linux中发现可以访问,但不能修改。
mount -t cifs -o username=administrator,password=xxxxx //192.168.11.17/Data/ /mnt/databak/
不过可以添加参数指定pid,uid,查看着两个参数具体值可以使用id 用户名,比如该目录的用户组,用户都是root,执行id root 可以看到pid,uid均为0。这样umount卸载文件夹之后,使用如下命令重新挂载,就能成功执行数据库备份了。
mount -t cifs -o username=administrator,password=XXX,rw,uid=0,gid=0,dir_mode=0777,file_mode=0777 //192.168.11.17/Data/ /mnt/trsbak/
其中,rw,uid=0,gid=0,dir_mode=0777,file_mode=0777这些是设置文件夹权限,不然只有读和执行权限,写不进去东西。