gpt4 book ai didi

permissions - 在不挂载文件系统的情况下使用 Samba 进行随机访问?

转载 作者:行者123 更新时间:2023-12-05 04:19:08 27 4
gpt4 key购买 nike

我正在使用一台没有根访问权限的机器,并且想以随机访问模式访问 Samba 服务器上的文件。我知道我可以使用 smbclient 完整地传输文件,但文件非常大 (>1GB),我宁愿将它们视为我可以进行随机访问的远程文件。

如前所述,问题是我没有这台机器(Linux 机器)的根访问权限,所以我无法挂载远程 Samba 文件系统。

有没有用户级的解决方案可以让我随机访问 Samba 服务器上的文件内容?似乎应该可以执行内核文件系统客户端正在执行的所有操作,但不是来自用户级应用程序。

顺便说一句,我只需要只读访问权限,并且保证远程文件不会更改。

最佳答案

在深入研究 Samba 源代码后回答我自己的问题:有一个客户端库 libsmbclient,其中包括所有常用的文件处理内容:smbc_open、smbc_fstat、smbc_lseek、smbc_read 等。例如,这是我刚刚编写的片段它向后读取文件(只是为了检查它是否在进行真正的查找):

fd = smbc_open(path, O_RDONLY, 0);
smbc_fstat(fd, &st);

for (offset = st.st_size - BUFLEN; offset > 0; offset -= BUFLEN) {
smbc_lseek(fd, offset, SEEK_SET);
smbc_read(fd, buffer, BUFLEN);
}

(为清楚起见删除了错误检查)

关于permissions - 在不挂载文件系统的情况下使用 Samba 进行随机访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/264950/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com