Giter VIP home page Giter VIP logo

Comments (4)

jhjaggars avatar jhjaggars commented on June 25, 2024

Can we not use the addForbiddenPath method to avoid these paths?

from sos.

bmr-cymru avatar bmr-cymru commented on June 25, 2024

Yes - that's what I've been doing for e.g. the deprecated sysctls, see commit 8db01b2 on rhel-6 branch. The problem with this approach is it gets hairy when you have a large number of such paths to manage. For now it may be the best way forward but there are a number of deprecated paths to avoid in proc and a much larger set of paths that we shouldn't attempt to copy in sysfs - sys is ten years old now and we really should up our game in terms of the information we collect from there. Right now we have bigger problems (our recursive copy function isn't safe for trees containing looping symlinks for e.g.) but this is something that I think we need to improve.

from sos.

bmr-cymru avatar bmr-cymru commented on June 25, 2024

This is now about 90% fixed. We now handle symlinks that point to directories (but we don't copy the target by default - that way lies madness) and block and character device nodes and other special node types are now handled properly. This means it's now safe to do e.g.:

        self.add_copy_spec("/sys")
        self.add_copy_spec("/dev")
        self.add_copy_spec("/proc")

There's still some work required to make this robust; in particular scooping up the whole of /sys and /proc will require the global blacklists (Issue #316) to avoid tripping over various pipes and comms channels that hang on read() IO.

from sos.

bmr-cymru avatar bmr-cymru commented on June 25, 2024

The fix for Issue #266 means that we handle unreadable files correctly. I'll do some more testing on this today and close the issue out if there's nothing more to do.

from sos.

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.