Mount实现Linux和Windows文件互相同步
我们前几篇文章介绍了使用SCP、Rsync、Curl等服务实现Linux到windows文件的互相拷贝,而我们今天介绍一个更简单的方法,就是通过mount命令挂载共享目录来实现Linux到windows的文件互传,具体见下:
我们使用的环境为Centos6.4+windows server2012;
因为linux需要挂载windows的共享目录,所以我们首先在windows上也创建一个共享目录
新建 linxushare
然后对于该共享目录我们设置单独的用户及密码进行数据拷贝,这样主要为了安全;创建一个账户mountaccount
然后设置将windows上创建的共享目录共享,然后添加新建的指定用户读写权限
然后在linux上创建一个挂载目录mkdir windowsshare
然后安装网络共享服务,如果不安装的话,无法使用mount挂载yum install -y cifs-utils
因为我们已经安装了,所以就提示已经安装了;
开始挂载windows共享目录;如果不提示错误的话就是说明挂载成功了;或者可以使用mount命令查看挂载的详细情况
我们将windows上的linuxshare共享目录挂载到了linux服务器的/OAFS目录下的windowsshare目录上mount -t cifs -o username=mountaccount,password="123" //192.168.6.188/linuxshare /OAFS/windowsshare
mountaccount是windows上创建的共享文件夹的指定用户
123是mountaccount的账户密码
windowsshare是linux上的挂载点
linuxshare是windows上的共享目录
接下来我们在windows的共享目录下创建一个文件,查看是否可以看见,创建一个1.txt文件
在linux下的挂载目录下查看是否会显示文件;成功显示
现在我们虽然挂载了,然后也可以看见文件,但是如果系统重启的话目录挂载也会失效,所以我们还需要将挂载目录配置到自动启动挂载;
如果不配置自动挂载系统重启后,我们进入目录后为空,然后mount命令查看不会有挂载的目录结构信息
vim /etc/fstab
添加以下参数//192.168.6.188/linuxshare /OAFS/windowsshare cifs defaults,username=mountaccount,password=123 0 2
系统重启后,我们可以通过进入目录或者通过mount命令来查看mount
以上的问题解决了,我们也就可以使用对应的脚本来完成数据的备份及传输了
使用 cp命令来完成windows、linux之间的文件互传了;
最后我们说一下fstab里面的格式介绍
一个简单的/etc/fstab,使用内核名称标识磁盘:
/etc/fstab
#
tmpfs /tmp tmpfs nodev,nosuid 0
0
/dev/sda1 / ext4 defaults,noatime 0
1
/dev/sda2 none swap defaults 0 0
/dev/sda3 /home ext4 defaults,noatime 0
2
字段定义
/etc/fstab文件包含了如下字段,通过空格或Tab分隔:
system>
的挂载位置。
-要挂载设备或是分区的文件系统类型,支持许多种不同的文件系统:ext2,ext3,ext4,reiserfs,xfs,jfs,smbfs,iso9660,vfat,ntfs,swap及auto。设置成auto类型,mount命令会猜测使用的文件系统类型,对CDROM和DVD等移动设备是非常有用的。
-挂载时使用的参数,注意有些mount参数是特定文件系统才有的。一些比较常用的参数有:auto-在启动时或键入了mount -a命令时自动挂载。
noauto-只在你的命令下被挂载。
exec-允许执行此分区的二进制文件。
noexec-不允许执行此文件系统上的二进制文件。
ro-以只读模式挂载文件系统。
rw-以读写模式挂载文件系统。
user-允许任意用户挂载此文件系统,若无显示定义,隐含启用noexec,nosuid,nodev参数。
users-允许所有users组中的用户挂载文件系统.
nouser-只能被root挂载。
owner-允许设备所有者挂载.
sync-
I/O同步进行。
async-
I/O异步进行。
dev-解析文件系统上的块特殊设备。
nodev-不解析文件系统上的块特殊设备。
suid-允许suid操作和设定sgid位。这一参数通常用于一些特殊任务,使一般用户运行程序时临时提升权限。
nosuid-禁止suid操作和设定sgid位。
noatime-不更新文件系统上inode访问记录,可以提升性能(参见atime参数)。
nodiratime-不更新文件系统上的目录inode访问记录,可以提升性能(参见atime参数)。
relatime-实时更新inode access记录。只有在记录中的访问时间早于当前访问才会被更新。(与noatime相似,但不会打断如mutt或其它程序探测文件在上次访问后是否被修改的进程。),可以提升性能(参见atime参数)。
flush-vfat的选项,更频繁的刷新数据,复制对话框或进度条在全部数据都写入后才消失。
defaults-使用文件系统的默认挂载参数,例如ext4的默认参数为:rw,suid,dev,exec,auto,nouser,async.
dump工具通过它决定何时作备份. dump会检查其内容,并用数字来决定是否对这个文件系统进行备份。 允许的数字是0和1。0表示忽略,1则进行备份。大部分的用户是没有安装dump的 ,对他们而言应设为0。
fsck读取的数值来决定需要检查的文件系统的检查顺序。允许的数字是0, 1,和2。 根目录应当获得最高的优先权1,其它所有需要被检查的设备设置为2. 0表示设备不会被fsck所检查。