构建 Samba
构建 Samba 的第一歩是下载适当的源 RPM。我从 PBONE 站点下载了 Samba 3.0.31 的源 RPM。然后,将下载的源 RPM 文件放到 /usr/src/RedHat/SRPMS 中,这是构建过程中用于源 RPM 的标准目录。
打开终端会话(在 Windows 中称为命令行窗口)并移至 SRPMS 文件夹。完成后,使用该命令安装源程序包,如图 5 所示。
如果您看到“用户 mockbuild 不存在,请使用根”错误警告,请不要担心。这个错误指出尚未安装 Mock 构建实用工具,但没有这些实用工具,构建过程也可以进行。
然后,移至 /usr/src/redhat/SPECS 目录并编辑文件 SAMBA.SPEC,该文件包含了 Samba 构建选项。搜索以“CFLAGS=”开头的那一行,并确保存在“--with-shared-modules=idmap_ad,idmap_rid”选项。此选项可确保构建过程包含将 Linux UID(唯一标识符)适当转换到 Active Directory 的代码。图 6 显示了此选项。
图 6 with-shared-modules 构建选项
接下来,您可能必须更新计算机上的一些库,才能适当构建和安装 Samba,具体取决于您安装的是哪个版本的库。在我的例子中,我必须使用 rpm --install 命令安装图 4 中列出的程序包;在某些情况下,我必须使用 --force 选项来克服一些依赖问题。
要构建 Samba,请移至 /usr/src/redhat 目录,并运行命令 rpmbuild –bb SPECS/samba.spec,如图 7 所示。此过程将新的 samba-3.0.31-0.i386 RPM 文件留在 /usr/src/redhat/RPMS 目录中。我们稍后将在此项目中安装这个 RPM 文件。
图 7 创建 Samba 二进制 RPM 文件