3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/nixos
Domen Kožar a6670c1a0b Fixes #18124: atomically replace /var/setuid-wrappers/ (#18186)
Before this commit updating /var/setuid-wrappers/ folder introduced
a small window where NixOS activation scripts could be terminated
and resulted into empty /var/setuid-wrappers/ folder.

That's very unfortunate because one might lose sudo binary.

Instead we use two atomic operations mv and ln (as described in
https://axialcorps.com/2013/07/03/atomically-replacing-files-and-directories/)
to achieve atomicity.

Since /var/setuid-wrappers is not a directory anymore, tmpfs mountpoints
were removed in installation scripts and in boot process.

Tested:

- upgrade /var/setuid-wrappers/ from folder to a symlink
- make sure /run/setuid-wrappers-dirs/ legacy symlink is really deleted
2016-09-01 20:57:51 +02:00
..
doc/manual Fixes #18124: atomically replace /var/setuid-wrappers/ (#18186) 2016-09-01 20:57:51 +02:00
lib nixos: generalize copy-paste from stage-1 and zfs to utils 2016-08-23 18:14:06 +00:00
maintainers Add AMIs in ap-northeast-2 and ap-south-1 2016-07-12 17:26:25 +02:00
modules Fixes #18124: atomically replace /var/setuid-wrappers/ (#18186) 2016-09-01 20:57:51 +02:00
tests virtualbox: add headless build (without Qt dependency) (#18026) 2016-09-01 20:54:58 +02:00
COPYING
default.nix nix: Add a "dev" output 2016-04-18 21:13:18 +02:00
README
release-combined.nix Revert "Temporarily disable chromium test" 2016-08-23 14:16:58 +01:00
release-small.nix release-small: drop mysql51, removed in 975d33e6 2016-08-13 09:46:42 +02:00
release.nix Revert "Temporarily disable chromium test" 2016-08-23 14:16:58 +01:00

*** NixOS ***

NixOS is a Linux distribution based on the purely functional package
management system Nix.  More information can be found at
http://nixos.org/nixos and in the manual in doc/manual.