Coder Social home page Coder Social logo

Comments (4)

aschnell avatar aschnell commented on August 17, 2024

Read-write snapshots have several disadvantages, e.g. already accessing the snapshot can cause atime updates which cause disk space allocation. Also the filelist cache of snapper gets out of sync.
So I do not intent to implement creation of read-write snapshots.

But with newer btrfs tools you can set the read-only status of a subvolume, e.g. btrfs property set /.snapshots/1/snapshot ro false. The kernel has the ioctl since a long time. For your use-case that should be fine.

from snapper.

rrthomas avatar rrthomas commented on August 17, 2024

Thanks very much for the tip. Typically, I will want to run "find" on all my snapshots to discover in which a particular large file occurs, the make all of them read-write and delete the file. Obviously, it would be easier if they were all read-write in the first place (which I guess I could do by suitable extensions to my snapper config). Does it make a difference if I run with noatime, and what is the implication of the filelist cache getting out of sync?

from snapper.

aschnell avatar aschnell commented on August 17, 2024

Mounting with noatime should avoid the problem with disk space allocation just by looking at snapshots.

The filelist cache getting out of sync will of course make the snapper status and diff command display wrong data. During undochange this can lead to error e.g. when snapper wants to copy a file from a snapshot to the system when the file does not exist in the snapshot anymore.

from snapper.

rrthomas avatar rrthomas commented on August 17, 2024

Thanks very much. Since I do not intend to use these snapshots for rollback (at least, not using the rollback command: typical use is to roll back manually a single file, by copying if necessary), the problem with the cache is not serious for me, so noatime should help.

from snapper.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.