/ usr / locale和/ usr / local有什么区别?

/usr进入root模式后,我找到了以下目录。

 swapnil@swapnil-Inspiron-3541:~$ sudo su [sudo] password for swapnil: root@swapnil-Inspiron-3541:/home/swapnil# cd /usr root@swapnil-Inspiron-3541:/usr# ls bin games include lib local locale sbin share src 

我知道binsbin之间的区别,但需要locallocale帮助。

在像Ubuntu这样的发行版中, /usr是包应该安装东西的/usr/local ,而/usr/local是系统管理员可以在包装系统之外安装东西的地方。 从文件系统层次结构标准 :

/usr/local hierarchy供系统管理员在本地安装软件时使用。 系统软件更新时,需要保护它不被覆盖。 它可用于可在一组主机之间共享但在/usr找不到的程序和数据。

本地安装的软件必须放在/usr/local而不是/usr除非安装它以替换或升级/usr软件。

/usr/locale在打包时似乎是个错误。 它包含一些Unity镜头使用的文本的翻译,但那些应该放在/usr/share 。 例如,这是/usr/locale的目录结构:

 ~ find /usr/locale /usr/locale /usr/locale/da /usr/locale/da/LC_MESSAGES /usr/locale/da/LC_MESSAGES/unity-lens-files.mo /usr/locale/da/LC_MESSAGES/unity-lens-applications.mo 

/usr/share/locale ,可以找到数百个这样的文件:

 $ find /usr/share/locale | head /usr/share/locale /usr/share/locale/tig /usr/share/locale/tig/LC_MESSAGES /usr/share/locale/tig/LC_MESSAGES/iso_639_3.mo /usr/share/locale/tig/LC_MESSAGES/iso_3166.mo /usr/share/locale/tig/LC_MESSAGES/iso_639.mo /usr/share/locale/hsb /usr/share/locale/hsb/kf5_entry.desktop /usr/share/locale/hsb/LC_MESSAGES /usr/share/locale/hsb/LC_MESSAGES/kjobwidgets5_qt.qm 

包不应该在/usr的顶层创建更多目录。 这似乎是一个无害的bug。 如果您愿意,可以报告。

local表示本地计算机 – 仅与当前计算机相关的文件。 你会找到一个/ usr / local / bin /用于本地[公司,雇主|组织等]垃圾箱(不是系统或发行版的,通常在/ bin或/ sbin中安装)但是可能没有那么多[esp 。 如果家用电脑]

locale表示它与您的语言环境(地理区域)相关,包括语言,货币符号等,但可能包含与您交互的其他区域的定位相关文件…如果您想查看适用的信息; 输入locale命令,你会得到类似的东西

  LANG = en_AU.UTF -8- 
 LC_CTYPE = “en_AU.UTF-8”
 LC_NUMERIC = “en_AU.UTF-8”
 LC_TIME = “en_AU.UTF-8”
 LC_COLLATE = “en_AU.UTF-8”
 LC_MONETARY = “en_AU.UTF-8”
 LC_MESSAGES = “en_AU.UTF-8”
 LC_PAPER = “en_AU.UTF-8”
 LC_NAME = “en_AU.UTF-8”
 LC_ADDRESS = “en_AU.UTF-8”
 LC_TELEPHONE = “en_AU.UTF-8”
 LC_MEASUREMENT = “en_AU.UTF-8”
 LC_IDENTIFICATION = “en_AU.UTF-8”
 LC_ALL =