source: introduction/important/position.xml@ cf43c83

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.0 6.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since cf43c83 was 4122007, checked in by Bruce Dubbs <bdubbs@…>, 20 years ago

Initial update with new xml style

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@2285 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 3.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3 "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="intro-important-position">
9<?dbhtml filename="position.html"?>
10<title>The /usr versus /usr/local debate</title>
11
12<para><emphasis>Should I install XXX in <filename>/usr</filename> or
13<filename>/usr/local</filename>?</emphasis></para>
14
15<para>This is a question without an obvious answer for an
16<acronym>LFS</acronym> based system.</para>
17
18<para>In traditional Unix systems, <filename>/usr</filename> usually
19contains files that come with the system distribution, and the <filename>
20/usr/local</filename> tree is free for the local administrator to add things
21to. The only really hard and fast rule is that Unix distributions should not
22touch <filename>/usr/local</filename>, except perhaps for creating the basic
23directories within it.</para>
24
25<para>With Linux distributions, like Red Hat, Debian etc. a possible rule is
26that <filename>/usr</filename> is managed by the distribution's
27package system and <filename>/usr/local</filename> is not. This way the
28package manager's database knows about every file within
29<filename>/usr</filename>.</para>
30
31<para><acronym>LFS</acronym> users build their own system and so deciding where
32the system ends and local files begin is not straightforward. So the choice
33should be made in order to make things easier to administer. There are several
34reasons for dividing files between <filename>/usr</filename> and
35<filename>/usr/local</filename>.</para>
36
37<itemizedlist>
38
39<listitem><para>On a network of several machines all running <acronym>LFS</acronym>,
40or mixed <acronym>LFS</acronym> and other Linux distributions,
41<filename>/usr/local</filename> could be used to hold packages
42that are common between all the computers in the network. It can be
43<acronym>NFS</acronym> mounted or mirrored from a single server. Here local
44indicates local to the site.</para></listitem>
45
46<listitem><para>On a network of several computers all running an identical
47<acronym>LFS</acronym> system <filename>/usr/local</filename> could hold
48packages that are different between the machines. In this case local refers
49to the individual computers.</para></listitem>
50
51<listitem><para>Even on a single computer <filename>/usr/local</filename> can
52be useful if you have several distributions installed simultaneously, and want
53a place to put packages that will be the same on all of them.</para></listitem>
54
55<listitem><para>Or you might regularly rebuild your <acronym>LFS</acronym>, but
56want a place to put files that you don't want to rebuild each time. This way
57you can wipe the <acronym>LFS</acronym> file system and start from a clean
58partition every time without losing everything.</para></listitem>
59
60</itemizedlist>
61
62<para>Some people ask why not use your own directory tree, e.g., <filename>
63/usr/site</filename>, rather than <filename>/usr/local</filename>?</para>
64
65<para>There is nothing stopping you, many sites do make their own trees,
66however it makes installing new software more difficult. Automatic installers
67often look for dependencies in <filename>/usr</filename> and
68<filename>/usr/local</filename>, and if the file it is looking
69for is in <filename>/usr/site</filename> instead, the installer will
70probably fail unless you specifically tell it where to look.</para>
71
72<para><emphasis>What is the <acronym>BLFS</acronym> position on this?</emphasis>
73</para>
74
75<para>All of the <acronym>BLFS</acronym> instructions install programs in
76<filename>/usr</filename> with optional instructions to install into
77<filename>/opt</filename> for some specific packages.</para>
78
79</sect1>
Note: See TracBrowser for help on using the repository browser.