Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There's an interesting piece of advice at the bottom of this post - the author symlinks /bin, /sbin, and /lib to /usr/whatever. Anybody else have an opinion on that practice? It's kind of unnecessary, but it also doesn't break anything.


That's an over simplified version of what the next Fedora is going to be doing. http://fedoraproject.org/wiki/Features/UsrMove

The Fedora move is why this link got posted and is getting upvotes.


While they're at it, they should move /usr/src somewhere else (/var/src?)


There are a variety of tools that live in /bin but are symlinked in /usr/bin, at least on my 10.04 LTS box:

  $ for f in /bin/*; do [ -e "/usr$f" ] && echo /usr$f; done;
  /usr/bin/dumpkeys
  /usr/bin/ksh
  /usr/bin/less
  /usr/bin/lessecho
  /usr/bin/lessfile
  /usr/bin/lesskey
  /usr/bin/lesspipe
  /usr/bin/loadkeys
  /usr/bin/mail
  /usr/bin/nano
  /usr/bin/tcsh
  /usr/bin/touch
  /usr/bin/which
  /usr/bin/zsh
This has the potential to blow something up during the installation procedure if it is not carefully crafted to realize that these files are the same and to ignore link's failure.


It would break FreeBSD's single user mode when using the defaults during installation for partitioning.

FreeBSD's default install creates: /, /usr, /tmp, /var and swap space.

When you boot in single-user mode all you get is / and nothing else. If everything was in /usr you wouldn't be able to mount /usr ... :P


Presumably if FreeBSD went down the same path as Fedora, they could also change the default partition layout.


Wouldn't that interfere with the core BSD system vs p ackage binaries/libs paradigm?


Packages/binaries/ports tree installs into /usr/local/.

See man hier [1].

For example, on a FreeBSD install, it is perfectly safe to rm -rf /usr/local/. Your system will still boot without issues.

[1] http://www.freebsd.org/cgi/man.cgi?query=hier&apropos=0&...


Which I find is actually quite problematic; "make install" by default puts things into /usr/local, and I would prefer to distinguish between things I've installed and things ports have installed. (Specifically, I need to build my own mplayer, but I also need the ports version installed as some other ports depend on it).


Feel free to change the prefix passed to the packages you install by hand. /usr/local is the default used by almost all packages I am familiar with, if for example you want /opt you have to modify that yourself.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: