vfs: variant symlinks
A message that is not in the archive (sent off-list or not yet received): C323F762.4E00%[email protected]
PATCH 1/2 vfs: variant symlinks
Quoted 8 lines · Jan Dittmer
Quoted 3 lines · Ken Schmidt
Variant symlinks add the ability to embed variables in to the contents of symbolic links so their targets can change based on outside sources (user environment, uts, filesystems, etc.)
Could you elaborate why this is needed and what part cannot be solved in userspace (linkfarm on tmpfs or intelligent scripts)?
Several networked filesystems (i.e. afs) have similar concepts. This just moves it into the vfs layer so that it can be used on all of them and even local filesystems.
The best example of how this can be useful is to allow a heterogeneous environment which uses a common filesystem. For example, both x86_64 and power systems could mount a root nfs share and execute with a common set of configurations and data, but the binary directories (bin and lib) could point to architecture specific directories.
Quoted 5 lines · Kenneth P
The best example of how this can be useful is to allow a heterogeneous environment which uses a common filesystem. For example, both
x86_64and power systems could mount a root nfs share and execute with a common set of configurations and data, but the binary directories (bin and lib) could point to architecture specific directories.
mount --bind /usr/$(ARCH)/bin /usr/bin
mount --bind /usr/$(ARCH)/lib /usr/lib
or corresponding ones in /etc/fstab. BFD...
Quoted 5 lines · Kenneth P
The best example of how this can be useful is to allow a heterogeneous environment which uses a common filesystem. For example, both
x86_64and power systems could mount a root nfs share and execute with a common set of configurations and data, but the binary directories (bin and lib) could point to architecture specific directories.
That would hardly be a portable NFS environment. Boot a Solaris, or older Linux kernel, and watch your applications barf...
This sort of stuff belongs in the automounter, not the kernel.
Trond