• Linux mount Windows目录


    【问题描述】

    Windows 机器192.168.1.103共享了 /share/yasi 目录,并且赋予了写的权限,在Windows机器下可以用 yasi/pass 登录。在一台CentOS 6.3机器上尝试将该共享目录 mount 到 /mnt/yasi 上

    [plain] view plain copy
     
    1. mount -t cifs //192.168.1.103/share/yasi /mnt/yasi -o username="yasi",password="pass"  


    结果失败,错误提示如下:

    [plain] view plain copy
     
    1. mount: block device //192.168.1.103/share/yasi is write-protected, mounting read-only  
    2. mount: cannot mount block device //192.168.1.103/share/yasi read-only  



    【原因】

    需要安装cifs-utils

    【解决】

    安装cifs-utils

    [plain] view plain copy
     
    1. yum install cifs-utils.x86_64  


    然后重新执行

    [plain] view plain copy
     
    1. mount -t cifs //192.168.1.103/share/yasi /mnt/win -o username="yasi",password="pass"  

    就mount上了,并且具有写的权限。

    【利用Linux mount 上 Windows 共享目录做点事情】

    出于对资源的合理利用,公司对某个共享文件夹做了如下限制:该文件夹下的各个员工的个人文件夹中,last modified/access time 老于30天的文件或子文件夹将会在每天定时执行的某个脚本中被删除。然而很多文件很大但我们不希望被删除。

    下面,屌丝的逆袭来了:

    1)将该共享文件夹下的个人文件夹(比如 //192.168.1.103/share/yasi)mount到一台Linux机器上

    [plain] view plain copy
     
    1. mount -t cifs //192.168.1.103/share/yasi /mnt/yasi -o username="yasi",password="pass"  

    2)在Linux机器上编码如下 Python 脚本,/home/yasi/update_ts.py

    [python] view plain copy
     
    1. import os, sys, time  
    2.   
    3. topdir = "/mnt/yasi"  
    4.   
    5. def update_time(timestamp, dirname, names):  
    6.         for name in names:  
    7.                 timestamps = (timestamp, timestamp)  
    8.                 os.utime(os.path.join(dirname, name), timestamps)  
    9.   
    10. os.path.walk(topdir, update_time, time.time())  


    3)在 Linux 机器上添加 cron job 如下,即每天23:00的时候执行 update_ts.py 脚本

    crontab -e

    [plain] view plain copy
     
    1. 0 23 * * * python /home/yasi/update_ts.py  


    于是,每天23:00 都会将  //192.168.1.103/share/yasi 下的所有文件和子文件夹的 last modified/access time 改成当前时间,这样就永远不存在 “老于30天没有访问过” 的文件和文件夹了!

    【注意】

    update_ts.py 中指定的 /mnt/yasi 即 //192.168.1.103/share/yasi 里面的所有文件和子文件夹都会被更改时间戳,但是 //192.168.1.103/share/yasi 这个文件夹本身的时间戳不会被 update_ts.py 修改。

  • 相关阅读:
    Spark学习之路 (二十七)图简介
    Spark学习之路 (二十三)SparkStreaming的官方文档
    Spark学习之路 (二十一)SparkSQL的开窗函数和DataSet
    Spark学习之路 (二十)SparkSQL的元数据
    Spark学习之路 (十九)SparkSQL的自定义函数UDF
    Spark学习之路 (十八)SparkSQL简单使用
    Spark学习之路 (十七)Spark分区
    JSP中request对象常用方法汇总
    JSP中request对象常用方法汇总
    在Myeclipse10中配置tomcat后新建工程
  • 原文地址:https://www.cnblogs.com/youngerger/p/8965922.html
Copyright © 2020-2023  润新知