mou*_*che 5 file-sharing samba windows cp
我目前快速设置了一种将文件从我的 linux 机器复制到多人可以访问的 Windows 共享的方法,但我正在寻找更好的方法。
在 Windows 7 中,我创建了一个可供所有人访问的文件夹。
在 linux 中,我创建了目录 /mnt/windows_share 并使用 samba 挂载了 windows 共享:
sudo mount -t cifs -o username=mouche,password=1234 //COMPUTERNAME/share_dir /mnt/windows_share
Run Code Online (Sandbox Code Playgroud)
然后我在要从中复制文件的目录中使用 sudo 运行此脚本:
#!/usr/bin/perl -w
while (1)
{
system("cp -u * /mnt/windows_share/");
sleep 1;
}
Run Code Online (Sandbox Code Playgroud)
这样做的一个问题是它每次更新时都会更新 Windows 的“修改日期”属性,即使我向 cp 添加了 -u 选项。此外,如果机器重新启动,则必须再次运行 mount 命令和脚本(使用 sudo,因此您需要知道密码)。
有关如何改进此过程的任何建议?
Fre*_*rdt 10
您应该尝试 rsync 而不是 cp:rsync -avz linux_path /mnt/windows_share/
和 crontab 而不是 perl loop:crontab -e
并添加以下行:
* * * * * rsync -avz linux_path /mnt/windows_share/
它将每分钟执行一次,如果在您的情况下这是一个选项,那么它比 while 循环更健壮。