我多年来一直在使用 Linux 服务器,但我一直对文件系统层次结构标准感到困惑。通常,我可以忍受混乱。但是现在我正在为 Linux 开发自己的软件,我需要了解包管理器应该在哪里安装它。
我非常确信 /opt 是我的应用程序的完美位置。但是在调查了我的 Debian 文件系统之后,我不再确定:很多软件实际上安装在 /usr/lib 中!仅举几例:MySQL、MySQLWorkbench、Nautilus、Rythmbox...
根据 FHS,/usr/lib 应该包含“用于编程和包的库”和“包括不打算由用户或 shell 脚本直接执行的目标文件、库和内部二进制文件”(请参阅此处)。
许多位于我的 debian 服务器的 /usr/lib 中的软件不是库或内部二进制文件,而是成熟的用户可执行软件!
我仍在按计划将我的应用程序安装在 /opt 中。但我真的很想了解这是否正确,最重要的是,为什么.
预先感谢您的善意建议,
埃里克。
我目前正在研究使用 Ubuntu 服务器而不是我的消费者级路由器来提供 QoS 的机会。我已经阅读了很多关于tc和 HTB 排队规则的资源——这看起来是我需要满足我的 QoS 需求的资源,即使现在大部分看起来很清楚,仍然有一些东西让我在子类率方面感到困扰。
让我们来看看这个示例配置作为这个问题的答案:
tc class add dev eth0 parent 1: classid 1:1 htb rate 90kbps ceil 90kbps
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 30kbps ceil 60kbps
tc class add dev eth0 parent 1:1 classid 1:11 htb rate 30kbps ceil 60kbps
tc class add dev eth0 parent 1:1 classid 1:12 htb rate 30kbps ceil 60kbps
Run Code Online (Sandbox Code Playgroud)
当您知道tc 的工作原理时,这非常简单:三个子类都保证有 30kbps 的带宽,但允许从其父类借用 30 kbps 以上的可用带宽(30 + …