It is not possible to restore file from a mounted snapshot using a hardlink
Hello,
The following is more of a feature request than problem report, actually.
I've mounted an older snapshot and tried to restore (add it to the current filesystem state) by creating a hardlink.
Roughly like:
mount /dev/sdb3 ~/current
mount.nilfs2 /dev/sdb3 ~/old -o ro,cp=1234
cd ~/current
ln ~/old/file.bin ./restored-file.bin
The ln' returned Invalid cross-device link'.
I expected such hardlink to have semantics of re-using all the data blocks & metadata of file.bin from snapshot as restored-file.bin, so no duplication of data blocks happens.
Regards,
Signature · 7 lines
dexen deVries ``One can't proceed from the informal to the formal by formal means.'' -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
A message that is not in the archive (sent off-list or not yet received): 201102271420.57110.dexen.devries-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
In fact, hard links are not supposed to work but cp --reflink *should* work but it does not seem to. cp --reflink is what you would need to achieve what you want.
Envoyé de mon appareil mobile.
Jérôme Poulin
Solutions G.A.
Quoted 24 lines · dexen deVries
Hello,
The following is more of a feature request than problem report, actually.
I've mounted an older snapshot and tried to restore (add it to the current filesystem state) by creating a hardlink.
Roughly like:
mount/dev/sdb3~/current
mount.nilfs2/dev/sdb3~/old -o ro,cp=1234
cd ~/current
ln ~/old/file.bin ./restored-file.binThe
ln' returnedInvalid cross-device link'.I expected such hardlink to have semantics of re-using all the data blocks & metadata of file.bin from snapshot as restored-file.bin, so no duplication of data blocks happens.
Regards,
--
dexen deVries
Quoted 5 lines
``One can't proceed from the informal to the formal by formal means.'' --
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 3 lines · On Sunday 27 of February 2011 16:56:25 you wrote:
In fact, hard links are not supposed to work but cp --reflink *should* work but it does not seem to. cp --reflink is what you would need to achieve what you want.
I'm much surprised why hardlink shouldn't work.
I used the `stat' command on a file that's both in snapshot and (uchanged) in current filesystem state and both inode and device fields (st_ino and st_dev) are the same. Thus I don't get why Linux would consider that a cross-device hardlink. After all, it's the same filesystem, just different views of it. Perhaps Linux' VFS is to blame...
Signature · 7 lines
dexen deVries ``One can't proceed from the informal to the formal by formal means.'' -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Just after replying I noticed you talked about cp= and noticed I sent to the nilfs mailing list and not btrfs ! So cp --reflink does not work on NILFS but would be a nice feature :)
Envoyé de mon appareil mobile.
Jérôme Poulin
Solutions G.A.
Quoted 24 lines · dexen deVries
Hello,
The following is more of a feature request than problem report, actually.
I've mounted an older snapshot and tried to restore (add it to the current filesystem state) by creating a hardlink.
Roughly like:
mount/dev/sdb3~/current
mount.nilfs2/dev/sdb3~/old -o ro,cp=1234
cd ~/current
ln ~/old/file.bin ./restored-file.binThe
ln' returnedInvalid cross-device link'.I expected such hardlink to have semantics of re-using all the data blocks & metadata of file.bin from snapshot as restored-file.bin, so no duplication of data blocks happens.
Regards,
--
dexen deVries
Quoted 5 lines
``One can't proceed from the informal to the formal by formal means.'' --
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html