问题标签 [hardlink]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1295 浏览

python - 执行 Mercurial 时 Python 导入错误

我的系统是 RedHat 5 Linux 并安装了默认的 python 2.4。为了执行 Mercurial1.81,我尝试将 python 从 2.4 升级到 2.6 并将其保存在不同的目录中。

以下是我使用的命令:

我试图删除用于链接 python 和 python2.6 之间的硬链接。然后我使用命令:

然后当我输入“whereis python”时,结果如下。

然后当我输入“which python”时,它指向“usr/bin/python”。当我输入“python -V”时,它显示“python 2.4.3”。它似乎指向 2.4.3。然后当我使用命令时

这显示了

我试图通过键入“find / -name python2.6”来查找python 2.6的路径,它显示

这是我的问题:
(1)如何将上面在线的替换结果更改为 python2.6 ?
(2) 为什么找不到 /usr/bin/python2.6 或 /usr/local/bin/python2.6 等目录?这是否意味着我的 python2.6 安装错误或不小心删除了目录?
我从输入的那些命令中得到的结果有什么问题吗?
(3) 知道当我使用“hg push”时如何让系统执行 python2.6 吗?
(4)我应该在 /usr/local/bin 重新安装 python2.6 吗?

非常感谢,

0 投票
2 回答
83 浏览

linux - 如何在两条路径中测试是否可硬链接?

我在一侧有文件路径以及我想要复制它们的新路径。

如何测试它们是否可以简单地硬链接或应该被复制?

0 投票
4 回答
1843 浏览

json - 在 OS X 上无法正常工作的文件的硬链接

我在文件夹中有一个文件,但我对这个文件一无所知(它是如何生成和更新的),因为它来自我系统上运行的应用程序,而我没有源代码。

文件格式很清楚json,我成功地创建了一个硬链接(使用 shell 命令ln file hardLinkToFile)并将其放在另一个目录中。
此时,我检查了“2”文件,它们与预期的完全相同,但是当我在应用程序中执行导致原始文件更新的操作时,硬链接没有得到更新。

关于如何解决这个问题的任何想法?

更新:正如Vlad Lazarenkomvds都指出的那样,该文件可能会被删除并创建一个新文件,我可以做些什么来获得与我最初想到的硬链接等效的解决方案吗?

0 投票
1 回答
74 浏览

git - 调用预提交的 Git 钩子但硬链接失败

请在此处查看我的答案:Git and hard links

我试图将相同的脚本放入pre-commit,但不知何故没有创建硬链接。

该脚本确实被执行了(即echo它的内部证明了这一点)。

我尝试ln在存储库根文件夹中手动运行相同的命令,并且相同的命令以这种方式工作。

感谢您的关注。

0 投票
4 回答
2262 浏览

windows - 如何使用 Java 或 C++ 获取文件 MFT 条目/inode

我用 Java 编写了一个重复查找器,但我需要包含对它的硬链接支持。不幸的是,似乎没有办法在 Java 中挖掘出文件的 MFT 条目。

虽然 BasicFileAttributeView 类中有一个名为 fileKey() 的方法,但它在 NTFS 文件系统上不起作用(我还没有在 ext 上测试过)。

我还找到了方法isSameFile()(在 java.nio.file.Path 中)。有谁知道这种方法是如何工作的?它似乎在做正确的事情,但它返回一个布尔值,所以对我来说毫无价值(我希望将结果放入映射并按其 MFT 条目对它们进行分组)。

我总是可以比较每个文件的创建时间、修改时间等,但这只是放弃。

有什么方法可以完成我在 C++ 或 Java 中尝试做的事情吗?我更关心让它在 NTFS 上工作而不是 ext。

0 投票
1 回答
712 浏览

python - 使用硬链接的 Python 写时复制

使用 Python 2.5+,UNIX:

我有一个程序通过硬链接所有条目来模拟目录“写时复制”功能。目前所有底层代码,其中一些我无权访问,都使用标准open(fname, 'w')来编写常规文件。

但是对于硬链接,这意味着使用相同的 inode(只是被截断),因此原始内容也会被破坏。对于写时复制,我当然希望原件保持不变(旧 inode)并open('w')调用创建新 inode。

关于实现这一目标的最佳方法的任何想法?猴子补丁open不知何故?

到目前为止,我想出的是open首先尝试删除文件(如果存在),然后才这样做open('w')

0 投票
2 回答
6570 浏览

django - Django:复制文件字段

我正在尝试使用硬链接复制文件,其中文件存储为 Django FileField。我想使用硬链接来节省空间和复制时间(预计不会对原始文​​件或副本进行任何更改)。但是,当我尝试从下面的代码段中调用 new_file.save() 时,我遇到了一些奇怪的错误。

我的想法是,在进行硬链接之后,我可以打开链接文件并将其存储到 Django 新文件实例的 FileFile 中。我在这里错过了一步还是什么?

模型.py

别处.py

0 投票
4 回答
2119 浏览

winapi - 以编程方式查找 Windows 硬链接的目标

我最近一直在以编程方式操纵重解析点,并且有一段时间一直困扰着我。由于 Windows 硬链接不像连接点或符号链接那样重新解析点,因此不能以相同的方式访问它们。创建一个新的很容易,但我还没有弄清楚如何读取一个目标。由于Hard Link Shell Extension之类的扩展具有显示该信息的属性表,因此我认为可以完成,但我一直无法找到任何有关如何操作的文档。(我确实注意到,shell 扩展名并不表示硬链接上哪个文件是真实的,不过)

我确实找到了这个答案,它解释了如何计算文件的链接,但不幸的是,我仍然坚持解决。

0 投票
2 回答
5043 浏览

python - 使用python递归创建硬链接

我基本上想做的是cp -Rl dir1 dir2。但据我了解,python 仅提供shutils.copytree(src,dst)实际复制文件的内容,但不可能硬链接文件。

我知道我可以cp使用模块调用命令subprocess,但我宁愿找到一种更清洁的(pythonic)方法来做到这一点。

那么有没有一种简单的方法可以做到这一点,还是我必须自己通过目录递归来实现它?

0 投票
1 回答
124 浏览

windows - windows支持链接系统调用吗?

在linux&unix中我们可以调用link(name1,name2)让name1和name2引用同一个inode,不知道windows平台支持吗?谢谢你。