AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 473502
Accepted
krvkir
krvkir
Asked: 2018-10-06 08:44:36 +0800 CST2018-10-06 08:44:36 +0800 CST 2018-10-06 08:44:36 +0800 CST

如何获取 cifs 挂载文件夹上的文件元数据?

  • 772

在我们公司,我们有一个共享的 Windows 文件夹。如果我从 Windows 访问它,我可以弹出文件的属性菜单并找到它的元数据:创建它的人、上次访问时间等等。

在 linux 上,我使用mount -t cifs. 我想编写一个脚本来获取有关文件夹使用情况的一些统计信息。

有没有办法从 linux 访问这个元数据?

UPD:我不能使用getfacl,stat或ls -la用于我的任务,因为所有这些都只给了我安装此文件夹的本地 linux 用户名,而不是来自 Windows 域服务器的名称。

UPD2:我使用命令安装共享:sudo mount -t cifs //data/Shared /mnt/Shared -o uid=1000,gid=1000,user=<my_windows_account_name>,dom=<my_domain>,pass=<my_windows_password>,其中 uid=1000 和 gid=1000 是我的 linux 帐户的 uid 和 gid。

windows cifs
  • 2 2 个回答
  • 1091 Views

2 个回答

  • Voted
  1. Best Answer
    roaima
    2018-10-09T04:48:45+08:002018-10-09T04:48:45+08:00

    你正在使用

    mount -t cifs //data/Shared /mnt/Shared -o uid=1000,gid=1000,user=<my_windows_account_name>,dom=<my_domain>,pass=
    

    这告诉本地系统有两个方面:

    1. 使用指定为元组 { 用户、域、密码 } 的凭据向远程服务器进行身份验证
    2. 伪造对远程共享的所有访问,就好像它们来自 UID 1000 和 GID 1000 的用户帐户一样

    您需要继续使用 #1,尽管我强烈建议您将用户凭据移动到只能由 root 和代表帐户凭据的本地用户读取的安全文件中。详情见man mount.cifs_

    # As root...
    cat >/usr/local/etc/Shared.cifs <<'X'
    username=my_windows_account_name
    domain=my_domain
    password=my_windows_password
    X
    chmod u=rw,go= /usr/local/etc/Shared.cifs
    chown my_unix_account_name:root /usr/local/etc/Shared.cifs
    
    # Then mount becomes
    mount -t cifs //data/Shared /mnt/Shared -o credentials=/usr/local/etc/Share.cifs,noperm
    

    但是,您需要停止使用 #2,而是让您的本地客户了解 AD 上下文中使用的名称。这对这里来说太多了,但要领是这些

    • 安装realmd和samba依赖
    • 确保您的 DNS 服务器是 AD 域服务器(或本地等效服务器)
    • 运行realm discover以查找并检查您是否可以看到正确的 AD 域
    • 运行realm join {domain}加入域

    您现在可能想要拒绝其他 AD 用户登录到您的本地系统。要查看的命令是 和 的变体realm deny -all,realm permit --groups 'domain admins'以及AllowUsers和AllowGroupsin /etc/ssh/sshd_config。如果您不是域管理员,则需要相应地进行更改。手册页非常好。

    您可以使用以下命令测试连接是否成功

    net ads testjoin
    getent password my_windows_account_name    # As above
    getent group "domain admins"               # An example group that will exist
    
    • 1
  2. telcoM
    2018-10-06T09:45:43+08:002018-10-06T09:45:43+08:00

    该stat命令可以以适合脚本编写的方式显示文件/目录时间戳、所有权和其他一些元数据:man 1 stat有关更多信息,请参阅。

    对于权限,尤其是 ACL,getfacl是您需要的命令。对于其他其他属性,有getfattr.

    如果您想知道特定目录(包括其所有子目录)中有多少数据,则需要该du命令。

    • 0

相关问题

  • 无法运行 .exe 文件

  • 需要 SSH 在 Cygwin 上中断的 Git 功能

  • 如何为 plink.exe 设置环境变量?

  • 在 Kali Linux 中的 Windows 7 分区上安装 grub

  • 安装错误 13 - 权限被拒绝 8 (zenworks)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve