热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

关于/usr和/usr/local的讨论

应该把程序安装在usr还是usrlocal?对于一个以LFS为基础的系统来说,这是一个没有明确答案的问题。在传统的unix系统中,usr通常只包含系统发行时自带的程序,而usrloca

应该把程序安装在 /usr还是 /usr/local?

对于一个以LFS为基础的系统来说,这是一个没有明确答案的问题。

在传统的unix系统中,/usr通常只包含系统发行时自带的程序,而/usr/local则是本地系统管理员用来自由添加程序的目录。这里有一条严厉而牢固的规则:除非在里面创建目录,unix发行版不得使用/usr/local 。

对于Linux发行版,如 RedHat, Debian 等等,一个可能的规定是:/usr目录只能由发行版的软件包管理工具负责管理,而对/usr/local却没有这样做。正是因为采用这种方式,软件包管理工具的数据库才能知道在/usr目录内的每一个文件。

LFS的用户是自己建立系统的,所以能自己决定系统文件和用户文件的放置方式。因此,应该按照有利于系统管理员使用的方式作出选择。这里有几个把文件安装到/usr或者是/usr/local的理由:

  • 如果网络上的计算机都运行LFS或者是混合使用LFS和其它linux发行版,所有连网计算机共用的软件应该安装在/usr/local内。这样可以通过NFS文件系统共享该目录或者从一个服务器上镜象过来。此时local表示本地服务器提供软件。

  • 如果网络上的计算机都运行同样的LFS系统,/usr/local应该安装各台计算机之间不相同的软件。这时local表示本地计算机提供软件。

  • 如果你在一台计算机上同时安装了几个linux发行版,并希望在某个目录存放它们共享的软件,这时/usr/local目录就能发挥作用了。

  • 或者你想要经常重建LFS系统,但又希望把不想每次重复编译的软件存放在某处,你也可以把软件安装在/usr/local目录。这样你就可以在不丢失数据的情况下删去LFS系统并从一个干净的分区重新开始。

一些人会问为什么不使用你自己的目录树,也就是使用/usr/site 而不是 /usr/local?

没有什么能阻止你,确实可以在很多地方创建自己的目录树,但这使安装新软件更加麻烦。自动化的安装程序通常要到/usr/usr/local目录下寻找所依赖的文件,如果要找的文件不在/usr目录里面,除非你指定目录让安装程序查找所依赖的文件,安装可能会失败。

那么在BLFS中软件的安装位置在那里?

除非特别声明,所有BLFS中的软件都安装在/usr目录下。也有一些文件被放在/usr/local目录下,但它们只是文档并且有足够的理由这样做。这些例外的情况都会在本书中得到很好的说明,如果发现有不对的地方,请告诉我们!


推荐阅读
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • 全面解析:Hadoop技术栈中的Linux操作系统概览
    全面解析:Hadoop技术栈中的Linux操作系统概览 ... [详细]
  • 在 Linux 系统中,`/proc` 目录实现了一种特殊的文件系统,称为 proc 文件系统。与传统的文件系统不同,proc 文件系统主要用于提供内核和进程信息的动态视图,通过文件和目录的形式呈现。这些信息包括系统状态、进程细节以及各种内核参数,为系统管理员和开发者提供了强大的诊断和调试工具。此外,proc 文件系统还支持实时读取和修改某些内核参数,增强了系统的灵活性和可配置性。 ... [详细]
  • NanoPi2 使用体验深入解析(续篇)
    随着Raspberry Pi的问世,开源硬件领域迎来了前所未有的发展,激发了全球范围内的创新热潮。在中国,这一趋势同样催生了一系列类似的开发板,例如NanoPi 2。本文作为前篇的延续,将深入探讨NanoPi 2的实际使用体验,从性能、兼容性到应用场景,进行全面分析。 ... [详细]
  • 分布式开源任务调度框架 TBSchedule 深度解析与应用实践
    本文深入解析了分布式开源任务调度框架 TBSchedule 的核心原理与应用场景,并通过实际案例详细介绍了其部署与使用方法。首先,从源码下载开始,详细阐述了 TBSchedule 的安装步骤和配置要点。接着,探讨了该框架在大规模分布式环境中的性能优化策略,以及如何通过灵活的任务调度机制提升系统效率。最后,结合具体实例,展示了 TBSchedule 在实际项目中的应用效果,为开发者提供了宝贵的实践经验。 ... [详细]
  • 如何在Linux系统中利用crontab定时执行Shell脚本任务?
    在Linux系统中,如何实现定时执行任务脚本?在服务器日常运维过程中,经常需要定期执行某些任务,例如数据库备份、日志文件切割等。通过使用crontab工具,可以轻松配置这些周期性任务,确保它们按时自动运行,提高系统管理效率和可靠性。 ... [详细]
  • 《软件测试精要》深度解析与实战经验分享
    《软件测试精要》深度解析与实战经验分享,系统梳理了软件测试的核心概念与关键原则,结合实际项目中的测试经验和教训,详细探讨了测试分类、测试权衡要素、测试效率、测试覆盖率以及测试框架的引入和用例设计等内容,为读者提供了全面而实用的指导。 ... [详细]
  • 在CentOS上部署和配置FreeSWITCH
    在CentOS系统上部署和配置FreeSWITCH的过程涉及多个步骤。本文详细介绍了从源代码安装FreeSWITCH的方法,包括必要的依赖项安装、编译和配置过程。此外,还提供了常见的配置选项和故障排除技巧,帮助用户顺利完成部署并确保系统的稳定运行。 ... [详细]
  • 本文详细介绍了使用响应文件在静默模式下安装和配置Oracle 11g的方法。硬件要求包括:内存至少1GB,具体可通过命令`grep -i memtotal /proc/meminfo`进行检查。此外,还提供了详细的步骤和注意事项,确保安装过程顺利进行。 ... [详细]
  • 本文深入探讨了IO复用技术的原理与实现,重点分析了其在解决C10K问题中的关键作用。IO复用技术允许单个进程同时管理多个IO对象,如文件、套接字和管道等,通过系统调用如`select`、`poll`和`epoll`,高效地处理大量并发连接。文章详细介绍了这些技术的工作机制,并结合实际案例,展示了它们在高并发场景下的应用效果。 ... [详细]
  • 欢迎来到Netgen新时代:探索网络生成技术的无限可能
    欢迎进入Netgen的新时代:探索网络生成技术的无限潜力。本文将详细介绍如何编译下载的Netgen源代码,生成Netgen程序,并提供开发所需的库nglib。此外,还将探讨Netgen在现代网络设计与仿真中的应用前景,以及其在提高网络性能和可靠性方面的关键作用。 ... [详细]
  • MacOS双系统安装指南:十分钟速成,轻松省下数百元! ... [详细]
  • Redis客户端使用指南与学习笔记
    本书基于Redis 3.0版本编写,虽然与后续版本存在一些差异,但仍详细介绍了Redis服务器的一对多客户端连接机制。书中不仅涵盖了基本的安装配置和命令操作,还深入探讨了数据结构、持久化策略及性能优化等高级主题,适合初学者和进阶用户参考学习。 ... [详细]
  • 在整理旧文件时,发现了几篇关于2011年MiniGUI技术的博客,虽然内容已显陈旧,但仍然具有一定的参考价值。这些文章详细探讨了MiniGUI的帧缓冲技术、图形渲染引擎以及输入处理机制,为理解早期嵌入式系统的图形界面开发提供了宝贵资料。 ... [详细]
  • 综合实训 201521440015
    Chinesepeople’publicsecurityuniversity网络对抗技术实验报告实验五综合渗透学生姓名常泽远年级15区队4指导教师高见信息技术与网络安全学院2018 ... [详细]
author-avatar
百变精灵6810
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有