其他 POSIX 兼容的 shell 在多大程度上可以作为 bash 的合理替代品?它们不需要是真正的“插入式”替换,但足够接近以使用大多数脚本并通过一些修改支持其余脚本。
我想要显式的 bash 脚本 - initscripts、DHCP 客户端脚本等 - 以最少的修改工作
我希望我自己收集的更专业的 shell 脚本不需要太多修改
我想拥有字符串操作和内置正则表达式模式匹配等功能
我所知道的唯一认真的竞争者是 zsh 和 mksh。所以,对于在座的那些对他们中的一个或两个都很好的人:
bash 有哪些 zsh 和 mksh 分别没有的特性?
shell 与 bash 共享哪些功能,但使用不兼容的语法?
内核模式设置起初在 Linux 上有点痛苦,但现在拥有它非常棒。我的意思是,X 不需要以 root 身份运行?高分辨率硬件加速控制台?很酷的东西。
问题是,许多 UNIX 平台没有任何类型的模式设置内核驱动程序。所以依赖于 KMS 的硬件现在大多仅限于 Linux。
我的问题:为什么要在内核中实现这个?
如果需要硬件访问来设置屏幕分辨率,为什么不使用单独的特权守护程序或小的 setuid 二进制文件?这将保持分离特权代码的优势,并让显示服务器以受限用户身份运行;同时摆脱了特殊的驱动程序要求,使跨 UNIX 支持更容易。对?还是我在这里遗漏了一些重要的东西?
人们可以在互联网上找到几个线程,例如:
http://www.gossamer-threads.com/lists/linux/kernel/972619
人们抱怨他们无法使用 -O0 构建 Linux,并被告知这不受支持;Linux 依靠 GCC 优化来自动内联函数、删除死代码,以及执行构建成功所需的其他操作。
我已经为至少一些 3.x 内核亲自验证了这一点。如果使用 -O0 编译,我尝试过的那些会在几秒钟的构建时间后退出。
这通常被认为是可接受的编码实践吗?编译器优化(例如自动内联)是否具有足够的可预测性以供依赖;至少在只处理一个编译器时?未来版本的 GCC 有多大可能破坏具有默认优化(即 -O2 或 -Os)的当前 Linux 内核的构建?
还有一个更迂腐的注释:由于 3.x 内核不能在没有优化的情况下编译,它们是否应该被视为技术上不正确的 C 代码?
xcompmgr 提供以下选项:
-s Server-side compositing with hard-edged shadows.
Run Code Online (Sandbox Code Playgroud)
根据实验,我可以说这比“客户端”选项快得多。但它究竟在做什么?在 Xorg 中,客户端和服务器端合成有什么区别?
而且,更重要的是:如果我想在例如窗口管理器中实现服务器端合成,我必须使用哪些 Xorg 函数集?
首先,这不是出于安全原因,也不是为了在生产环境中使用。这是因为我想在相对低规格的工作站上处理不同的配置管理系统,而不使用 VM(时间和资源开销)或 LXC(版本要求和不必要的复杂性)。Chroots 相对不安全,但它们也可以快速轻松地设置。
无论如何:给定一个 chroot 环境和一个虚拟以太网接口(eth0:1 或类似的),我如何确保 chroot 中的程序始终使用虚拟接口?
请注意,我不需要真正的网络隔离,在 chroot 内部无法看到真正的接口。我只想让 chroot 的程序响应与主机(或其他 chroot)不同的 IP 地址,这样我就可以正确地使用服务器/客户端设置,例如 Puppet。
主机正在运行 Debian Wheezy x64。
也许我以错误的方式接近这个。我想要的是有几个 chroot 并且能够从主机系统通过主机名访问每个。那可能吗?