Delay nix-gc until /home is mounted
Prevents starting the garbage collector before the remote FS are mounted, in particular /home. Otherwise, all the gcroots which have symlinks in /home will be considered stale and they will be removed. See: rarias/jungle#79 Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
This commit is contained in:
		
							parent
							
								
									15afbe94bd
								
							
						
					
					
						commit
						260986b9f2
					
				| @ -32,6 +32,21 @@ | |||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|  |   # The nix-gc.service can begin its execution *before* /home is mounted, | ||||||
|  |   # causing it to remove all gcroots considering them as stale, as it cannot | ||||||
|  |   # access the symlink. To prevent this problem, we force the service to wait | ||||||
|  |   # until /home is mounted as well as other remote FS like /ceph. | ||||||
|  |   systemd.services.nix-gc = { | ||||||
|  |     # Start remote-fs.target if not already being started and fail if it fails | ||||||
|  |     # to start. It will also be stopped if the remote-fs.target fails after | ||||||
|  |     # starting successfully. | ||||||
|  |     bindsTo = [ "remote-fs.target" ]; | ||||||
|  |     # Wait until remote-fs.target fully starts before starting this one. | ||||||
|  |     after = [ "remote-fs.target"]; | ||||||
|  |     # Ensure we can access a remote path inside /home | ||||||
|  |     unitConfig.ConditionPathExists = "/home/Computational"; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|   # This value determines the NixOS release from which the default |   # This value determines the NixOS release from which the default | ||||||
|   # settings for stateful data, like file locations and database versions |   # settings for stateful data, like file locations and database versions | ||||||
|   # on your system were taken. It‘s perfectly fine and recommended to leave |   # on your system were taken. It‘s perfectly fine and recommended to leave | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user