安装CentOS的方法很多,如光盘安装,优盘安装等,本手册以优盘安装为例进行说明。用户可自行上网搜索教程,制作CentOS启动优盘。从优盘启动服务器。从优盘启动成功后,看到如下图的安装界面。
选择第一项,然后敲击“Enter”键,在完成内核加载及硬件识别等步骤之后,弹出如下的配置界面。
选择安装过程中使用的语言为“English”,然后使用Tab键将光标定位到“OK”上,然后敲击“Enter”键,将弹出如下图所示的键盘布局列表。
选择“us”键盘布局,光标定位到“OK”按钮后,按“Enter”键,弹出如下菜单,选择安装文件所在的介质。
这里是使用优盘来安装的,所以选择“Hard drive”,然后点击“OK”键。
在上图中选择优盘分区“/dev/sdb4”,然后点击“OK”键,出现如下界面。
在上图界面等待几秒钟时间,弹出了如下图所示的窗口。
点击右下角的“Next”按钮。
根据实际情况,选择安装过程中使用存储设备,本台服务器上只有一块硬盘用来作为安装系统,所以选择“Basic Storage Devices”,然后点击右下角的“Next”。
1) 如果服务器硬盘未曾分区或尚未安装过操作系统,则可能弹出如下界面。
上图提示未从存储设备中检测到分区,是否清除存储设备中的数据。选择图中的“Yes, discard any data”,然后点击右下角的“Next”。
2) 如果服务器硬盘已安装过操作系统,则可能弹出如下提示。
上图提示本台机器已经被安装了操作系统。TC系统每次安装都务必执行“全新安装”,所以从上图中选择全新安装“Fresh Installation”,然后点击右下角的“Next”。
根据情况,为此台机器取个名字,我们在此处输入“buildmachine”,然后点击右下角的“Next”。
根据情况,选择“Asia/Shanghai”,然后点击右下角的“Next”。
设置管理员账号(即root)的密码,然后点击右下角的“Next”。
如选择的密码较弱,可以选择“Cancel”重新修改,完成设置密码后,弹出如下界面。
选择安装类型为“Create Custom Layout”,然后点击右下角的“Next”。
创建一个ext4分区挂载到“/”,并创建一个swap分区。点击“Next”。
点击“Write changes to disk”。
选择boot loader的安装位置为本机硬盘的MBR。点击“Next”。
在上图中选择“Minimal Desktop”,点击“Next”。
上图表示系统已经在安装,安装结束后,弹出如下界面。
拔掉优盘,然后点击右下角的“Reboot”重启系统,务必配置从硬盘启动系统,启动后可以看到系统如下界面。
屏幕下方还显示了系统启动的进度。
之后是一个“Welcome”界面。
点击右下角的“Forward”按钮。
选择“Yes, I agree to the Lincense/Agreement”,然后点击右下角的“Forward”。
根据需要,创建用户。此处我们不再创建用户,点击右下角的“Forward”。
在弹出的窗口中点击“Yes”。
设置时间,然后点击右下角的“Forward”。
设置Kdump,默认为“Enable”状态,Memory为128MB,点击右下角的“Finish”。
在弹出的窗口中点击“Yes”。
在接下来的消息框中点击“OK”,系统将重新启动。
系统重启后将进入登录界面,点击“Others”。
在“Username”输入框中输入用户名为“root”,点击“Enter”键。
在“Password”输入框中输入管理员登录密码,再点击“Enter”键。
就正式登录到系统了。
以root身份登录系统,下载附录一中列出的下列32个软件包。
软件包:
bison-2.4.1-5.el6.x86_64.rpm
cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
cpp-4.4.7-16.el6.x86_64.rpm
flex-2.5.35-9.el6.x86_64.rpm
gcc-4.4.7-16.el6.x86_64.rpm
gcc-c++-4.4.7-16.el6.x86_64.rpm
genisoimage-1.1.9-12.el6.x86_64.rpm
glibc-2.12-1.166.el6.i686.rpm
glibc-devel-2.12-1.166.el6.i686.rpm
glibc-static-2.12-1.166.el6.x86_64.rpm
iasl-20090123-4.1.el6.i686.rpm
keyutils-libs-devel-1.4-5.el6.x86_64.rpm
krb5-devel-1.10.3-42.el6.x86_64.rpm
libcom_err-devel-1.41.12-22.el6.x86_64.rpm
libgcc-4.4.7-16.el6.i686.rpm
libselinux-devel-2.0.94-5.8.el6.x86_64.rpm
libsepol-devel-2.0.41-4.el6.x86_64.rpm
libstdc++-4.4.7-16.el6.i686.rpm
libstdc++-devel-4.4.7-16.el6.i686.rpm
libstdc++-devel-4.4.7-16.el6.x86_64.rpm
mpfr-2.4.1-6.el6.x86_64.rpm
mysql-5.1.73-5.el6_6.x86_64.rpm
mysql-devel-5.1.73-5.el6_6.x86_64.rpm
ncurses-devel-5.7-4.20090207.el6.x86_64.rpm
nss-softokn-freebl-3.14.3-22.el6_6.i686.rpm
openssl-devel-1.0.1e-42.el6.x86_64.rpm
ppl-0.10.2-11.el6.x86_64.rpm
python-devel-2.6.6-64.el6.x86_64.rpm
syslinux-4.04-3.el6.x86_64.rpm
syslinux-nonlinux-4.04-3.el6.noarch.rpm
texinfo-4.13a-8.el6.x86_64.rpm
zlib-devel-1.2.3-29.el6.x86_64.rpm
然后通过命令
$ rpm -ivh --force --nodeps <filename>
逐个安装上述软件包,filename是上述rpm文件名。
如果曾在当前系统上编译过旧的开发软件包,需运行以下命令将其删除,再继续剩余步骤。
$ rm -rf /root/TC $ rm -rf /root/qte
运行以下命令创建目录。
$ mkdir -p /root/TC/root64 $ mkdir -p /root/qte
TC客户机预启动界面缺省情况下是不支持中文显示的,执行本小节的以下步骤可开启中文支持。
在开发机上运行以下命令创建目录存放字体文件。
$ mkdir -p /root/TC/fonts
从Windows* 中文系统拷贝一个字体文件到上述字体目录。下面介绍如何拷贝Windows* 7 简体中文版的字体文件C:\Windows\Fonts\simfang.ttf到以上字体目录。首先准备一个文件系统为FAT32格式的优盘,从Windows 7系统拷贝字体文件到优盘根目录,将优盘插到TC服务器的USB接口,运行下列命令挂载优盘。
$ mount /dev/sdb1 /mnt
上述命令假设优盘分区的设备文件被识别为“/dev/sdb1”,用户可以使用命令,的“fdisk -l”查看优盘分区的设备文件节点,根据情况替换上述命令中“/dev/sdb1”,然后运行下列命令拷贝字体文件到刚刚创建的服务器字体目录。
$ cp /mnt/simfang.ttf /root/TC/fonts/
完成以上步骤后,可运行下列命令卸载优盘,卸载后即可从服务器拔掉优盘。
$ umount /dev/sdb1
用户可根据偏好选择除simfang.ttf之外的字体文件。
本节介绍如何编译交叉编译工具链buildroot。
如果先前已经编译过buildroot,请先运行如下命令将其完全删除。
$ rm -rf /root/TC/buildroot-2016.08.1
下载buildroot-2016.08.1.tar.bz2,然后运行下列命令解压之。
$ tar jxf buildroot-2016.08.1.tar.bz2 -C /root/TC $ cd /root/TC/buildroot-2016.08.1
然后运行下列命令生成配置文件.config。
$ make defconfig
参考第三方软件的配置和修改内容一章对修改内容格式的介绍,手动修改相关文件,或使用这一章提供的工具export-content-from.sh导出本文档的修改内容,然后使用linux系统的patch命令自动修改文件。建议使用后一种方式,对后续软件的修改可参照此方法。
确保计算机连接到因特网,然后运行如下命令编译。
$ make
将字符串/root/TC/buildroot-2016.08.1/output/host/usr/bin追加到PATH环境变量中,以便后续编译各软件包时使用交叉编译工具链。
$ export PATH=/root/TC/buildroot-2016.08.1/output/host/usr/bin:$PATH
可以通过如下命令查看路径是否成功添加到环境变量PATH中。
$ echo $PATH
输出结果可能为:
/root/TC/buildroot-2016.08.1/output/host/usr/bin:/root/bin:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
请继续在当前终端完成后续步骤。
如需要在新的终端环境下编译,须在所使用的终端按照上述命令设置环境变量。
下载expat-2.0.1.tar.gz然后依次运行下列命令编译。
$ tar zxf expat-2.0.1.tar.gz -C /root/TC $ cd /root/TC/expat-2.0.1 $./configure --host=i686-linux --prefix=/usr --exec-prefix=/usr \ --sysconfdir=/etc --localstatedir=/var $ make DESTDIR=/root/TC/buildroot-2016.08.1/output/target install $ make DESTDIR=/root/TC/buildroot-2016.08.1/output/\ host/usr/i686-buildroot-linux-gnu/sysroot install
下载dbus-1.4.10.tar.gz然后依次运行下列命令编译。
$ tar zxf dbus-1.4.10.tar.gz -C /root/TC $ cd /root/TC/dbus-1.4.10 $ ./configure --host=i686-linux --prefix=/usr --exec-prefix=/usr \ --sysconfdir=/etc --localstatedir=/var --datarootdir=/usr/share \ --with-dbus-daemondir=/usr/bin --without-x $ make DESTDIR=/root/TC/buildroot-2016.08.1/output/target install $ make DESTDIR=/root/TC/buildroot-2016.08.1/output/\ host/usr/i686-buildroot-linux-gnu/sysroot install
下载qt-everywhere-opensource-src-4.7.3.tar.gz然后依次运行下列命令。
$ tar zxf qt-everywhere-opensource-src-4.7.3.tar.gz -C /root/TC $ cd /root/TC/qt-everywhere-opensource-src-4.7.3
按照附录修改部分文件内容。
完成修改后,通过如下命令将修改后的/root/TC/qt-everywhere-opensource-src-4.7.3目录拷贝至/root/qte,以待后续步骤继续使用修改后的qt源文件。
$ cp -a /root/TC/qt-everywhere-opensource-src-4.7.3 /root/qte/
首先设置环境变量。
$ export PKG_CONFIG_PATH=/root/TC/buildroot-2016.08.1/output/\ staging/usr/lib/pkgconfig
切换工作目录。
cd /root/TC/qt-everywhere-opensource-src-4.7.3
按照如下方式运行configure脚本。
$ ./configure -opensource -confirm-license -release -shared \ -embedded x86 -xplatform qws/linux-i686-g++ -force-pkg-config \ -no-glib -largefile -no-qt3support -depths 16,24,32 \ -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-qvfb -no-gfx-vnc \ -no-gfx-qnx -no-gfx-multiscreen -no-gfx-directfb -qt-mouse-pc \ -no-mouse-linuxtp -no-mouse-tslib -no-mouse-qvfb -no-mouse-qnx \ -qt-mouse-linuxinput -qt-kbd-tty -no-kbd-qvfb -no-kbd-qnx \ -qt-kbd-linuxinput -little-endian -qt-zlib -qt-libjpeg -qt-gif \ -qt-libmng -qt-libpng -no-libtiff -qt-freetype -no-openssl -svg \ -dbus \ -I/root/TC/buildroot-2016.08.1/output/staging/usr/include/dbus-1.0 \ -I/root/TC/buildroot-2016.08.1/output/staging/usr/lib/\ dbus-1.0/include \ -no-sql-sqlite -no-xmlpatterns -no-multimedia \ -no-audio-backend -no-phonon -no-phonon-backend -no-webkit \ -no-script -no-scripttools -no-javascript-jit -stl -no-xinerama \ -no-cups -no-nis -no-accessibility -no-separate-debug-info \ -prefix /usr \ -hostprefix /root/TC/buildroot-2016.08.1/output/host/usr/\ i686-buildroot-linux-gnu/sysroot \ -plugindir /usr/lib/qt-4.7.3/plugins \ -fast -no-rpath -nomake examples -nomake demos -qconfig cust
最后运行如下命令编译。
$ gmake $ gmake install
使用以下命令编译。
$ cd /root/TC/qt-everywhere-opensource-src-4.7.3/tools/linguist/lupdate $ /root/TC/qt-everywhere-opensource-src-4.7.3/bin/qmake $ make
编译结束后运行如下命令拷贝目标文件到指定目录。
$ cp /root/TC/qt-everywhere-opensource-src-4.7.3/bin/lupdate \ /root/TC/buildroot-2016.08.1/output/host/usr/\ i686-buildroot-linux-gnu/sysroot/bin
编译codeeditor。
$ cd /root/TC/qt-everywhere-opensource-src-4.7.3/examples/\ widgets/codeeditor $ /root/TC/qt-everywhere-opensource-src-4.7.3/bin/qmake $ make
确保/root/qte/qt-everywhere-opensource-src-4.7.3目录的源文件是按照附录修改的。然后通过如下命令设置环境变量。
$ export PKG_CONFIG_PATH=/root/TC/buildroot-2016.08.1/output/staging/usr/lib/pkgconfig
切换工作目录。
$ cd /root/qte/qt-everywhere-opensource-src-4.7.3
按照如下方式运行configure脚本。
$ ./configure -opensource -confirm-license -release -shared \ -embedded x86 -xplatform qws/linux-i686-g++ -force-pkg-config \ -no-glib -largefile -no-qt3support -depths 16,24,32 \ -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-qvfb -no-gfx-vnc \ -no-gfx-qnx -no-gfx-multiscreen -no-gfx-directfb -qt-mouse-pc \ -no-mouse-linuxtp -no-mouse-tslib -no-mouse-qvfb -no-mouse-qnx \ -qt-mouse-linuxinput -qt-kbd-tty -no-kbd-qvfb -no-kbd-qnx \ -qt-kbd-linuxinput -little-endian -qt-zlib -qt-libjpeg -qt-gif \ -qt-libmng -qt-libpng -no-libtiff -qt-freetype -no-openssl -svg \ -dbus \ -I/root/TC/buildroot-2016.08.1/output/staging/usr/include/dbus-1.0 \ -I/root/TC/buildroot-2016.08.1/output/staging/usr/lib/\ dbus-1.0/include \ -no-sql-sqlite -no-xmlpatterns -no-multimedia \ -no-audio-backend -no-phonon -no-phonon-backend -no-webkit \ -no-script -no-scripttools -no-javascript-jit -stl -no-xinerama \ -no-cups -no-nis -no-accessibility -no-separate-debug-info \ -prefix /usr \ -hostprefix /usr \ -plugindir /usr/lib/qt-4.7.3/plugins \ -fast -no-rpath -nomake examples -nomake demos -qconfig cust
最后运行如下命令编译。
$ gmake $ gmake install
下载libmeegotouch-0.23.5-1.tar.gz。如下载后文件名不是libmeegotouch-0.23.5-1.tar.gz,先运行如下命令将其重命名为libmeegotouch-0.23.5-1.tar.gz。
$ mv <download-filename> libmeegotouch-0.23.5-1.tar.gz
其中<download-filename>为下载保存的文件名。
再运行如下命令解压之。
$ tar zxf libmeegotouch-0.23.5-1.tar.gz -C /root/TC
通过如下命令设置环境变量。
$ export QTDIR=/root/TC/qt-everywhere-opensource-src-4.7.3 $ export PKG_CONFIG_PATH=/root/TC/buildroot-2016.08.1/output/host/\ usr/i686-buildroot-linux-gnu/sysroot/lib/pkgconfig:/root/TC/\ buildroot-2016.08.1/output/host/usr/i686-buildroot-linux-gnu/\ sysroot/usr/lib/pkgconfig $ export PKG_CONFIG_LIBDIR=/root/TC/buildroot-2016.08.1/output/host/\ usr/i686-buildroot-linux-gnu/sysroot/lib:/root/TC/\ buildroot-2016.08.1/output/host/usr/i686-buildroot-linux-gnu/\ sysroot/usr/lib
切换到/root/TC/libmeegotouch-0.23.5-1目录。
$ cd /root/TC/libmeegotouch-0.23.5-1
参考附录修改相关文件。
修改结束后,通过如下命令拷贝已修改结束的libmeegotouch源文件到/root/qte目录。
$ cp -a /root/TC/libmeegotouch-0.23.5-1 /root/qte/
然后到/root/TC/libmeegotouch-0.23.5-1目录下运行如下命令生成Makfile。
$ ./configure --prefix=/root/TC/buildroot-2016.08.1/output/host/usr/\ i686-buildroot-linux-gnu/sysroot/usr \ --host=i686-linux \ --sysconfdir=/etc -no-opengl -dbus -no-gconf -no-icu \ -no-meegographicssystem -no-debug -release
使用下列命令编译之。
$ cd /root/TC/libmeegotouch-0.23.5-1/mgen $ /root/TC/qt-everywhere-opensource-src-4.7.3/bin/qmake $ make
使用下列命令编译之。
$ cd /root/TC/libmeegotouch-0.23.5-1/mmoc $ /root/TC/qt-everywhere-opensource-src-4.7.3/bin/qmake $ make
运行下列命令拷贝目标文件到指定目录。
$ cp mmoc /usr/bin/
使用下列命令编译libmeegotouch。
$ cd /root/TC/libmeegotouch-0.23.5-1 $ make $ make install
首先设置环境变量。
$ export QTDIR=/root/TC/qt-everywhere-opensource-src-4.7.3 $ export PKG_CONFIG_PATH=/root/TC/buildroot-2016.08.1/output/host/\ usr/i686-buildroot-linux-gnu/sysroot/lib/pkgconfig:/root/TC/\ buildroot-2016.08.1/output/host/usr/i686-buildroot-linux-gnu/\ sysroot/usr/lib/pkgconfig $ export PKG_CONFIG_LIBDIR=/root/TC/buildroot-2016.08.1/output/host/\ usr/i686-buildroot-linux-gnu/sysroot/lib:/root/TC/\ buildroot-2016.08.1/output/host/usr/i686-buildroot-linux-gnu/\ sysroot/usr/lib
然后运行下列命令编译。
$ cd /root/qte/libmeegotouch-0.23.5-1 $ ./configure --prefix=/usr --host=i686-linux \ --sysconfdir=/etc -no-opengl -dbus -no-gconf \ -no-icu -no-meegographicssystem -no-debug -release $ make
下载 busybox-1.25.1.tar.bz2然后运行下列命令。
$ tar jxf busybox-1.25.1.tar.bz2 -C /root/TC $ cd /root/TC/busybox-1.25.1 $ make defconfig && sed -i 4d .config
按照附录修改相关文件然后,运行如下命令编译。
$ make
下载e2fsprogs-1.42.tar.gz然后运行下列命令。
$ tar zxf e2fsprogs-1.42.tar.gz -C /root/TC $ cd /root/TC/e2fsprogs-1.42 $./configure --host=i686-linux --prefix=/ --exec-prefix=/ \ --sysconfdir=/etc --localstatedir=/var $ make
下载curl-7.57.0.tar.bz2然后运行下列命令。
$ tar jxf curl-7.57.0.tar.bz2 -C /root/TC $ cd /root/TC/curl-7.57.0 $ ./configure --prefix=/ --host=i686-linux --disable-dict \ --disable-static --disable-rtsp --disable-ftp --disable-gopher \ --disable-imap --disable-pop3 --disable-smtp --disable-telnet \ --disable-tftp --with-ssl --without-zlib $ make
下载 grub_0.97.orig.tar.gz 和 grub_0.97-68.diff.gz 到/root/TC目录,然后执行如下命令解压和打补丁。
$ tar zxf grub_0.97.orig.tar.gz -C /root/TC $ cd /root/TC/grub-0.97 $ zcat /root/TC/grub_0.97-68.diff.gz | patch -p1
然后按照附录修改相关文件,修改结束后,运行如下命令编译之。
$ export CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" $ ./configure --host=i686-linux --prefix=/usr --exec-prefix=/usr \ --sysconfdir=/etc --localstatedir=/var --disable-auto-linux-mem-opt \ --disable-graphics --disable-hercules --enable-serial \ --enable-ext2fs --enable-fat --disable-ffs --disable-ufs2 \ --disable-minix --disable-reiserfs --disable-vstafs --disable-jfs \ --disable-xfs --disable-iso9660 --disable-gunzip \ --disable-md5-password --without-curses $ make
下载seabios-1.9.0.tar.gz然后运行下列命令。
$ tar xzf seabios-1.9.0.tar.gz -C /root/TC $ cd /root/TC/seabios-1.9.0 $ make defconfig && make clean
按照附录修改部分文件,然后运行下列命令。
$ make
下载linux-3.18.40.tar.xz然后运行下列命令。
$ tar Jxf linux-3.18.40.tar.xz -C /root/TC $ cd /root/TC/linux-3.18.40 $ make defconfig
按照附录内容修改文件相关文件。
修改完成后,运行如下命令编译内核。
$ make bzImage $ make modules
下载qemu-2.10.1.tar.xz然后运行下列命令。
$ tar Jxf qemu-2.10.1.tar.xz -C /root/TC $ cd /root/TC/qemu-2.10.1
按照附录内容修改相关文件。修改完成后,运行如下命令编译QEMU。
$ export PKG_CONFIG=/root/TC/buildroot-2016.08.1/output/host/usr/bin/pkg-config $ ./configure --prefix=/usr --cross-prefix=i686-linux- --target-list=i386-softmmu,x86_64-softmmu $ make $ make DESTDIR=/root/TC/buildroot-2016.08.1/output/target install $ unset PKG_CONFIG
下载lz4-1.8.1.2.tar.gz,如下载文件名不是lz4-1.8.1.2.tar.gz,先将其重命名为lz4-1.8.1.2.tar.gz,然后运行下列命令编译之。
$ tar zxf lz4-1.8.1.2.tar.gz -C /root/TC $ cd /root/TC/lz4-1.8.1.2/lib $ make CC=gcc $ make install $ make clean $ cd /root/TC/lz4-1.8.1.2 $ make CC=i686-linux-gcc $ cp -a lib/lz4frame.h /root/TC/buildroot-2016.08.1/output/staging/usr/include/ $ cp -a lib/liblz4.so* /root/TC/buildroot-2016.08.1/output/staging/usr/lib/
下载rsync-3.1.2.tar.gz然后运行下列命令编译之。
$ tar zxf rsync-3.1.2.tar.gz -C /root/TC $ cd /root/TC/rsync-3.1.2 $ ./configure --host=i686-linux --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var $ make
下载zlib-1.2.11.tar.gz然后运行下列命令编译之。
$ tar zxf zlib-1.2.11.tar.gz -C /root/TC $ cd /root/TC/zlib-1.2.11 $ ./configure $ make $ make DESTDIR=/root/TC/root64 install
下载libxml2-2.9.8.tar.gz然后运行下列命令编译之。
$ tar zxf libxml2-2.9.8.tar.gz -C /root/TC $ cd /root/TC/libxml2-2.9.8 $ export PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin $ ./configure CPPFLAGS=-D_GNU_SOURCE $ make $ make DESTDIR=/root/TC/root64 install
下载openssl-1.0.2k.tar.gz然后运行下列命令编译之。
$ tar zxf openssl-1.0.2k.tar.gz -C /root/TC $ cd /root/TC/openssl-1.0.2k $ ./Configure -D_GNU_SOURCE no-threads linux-x86_64 $ make $ make DESTDIR=/root/TC/root64 install
在开发机上解压TC项目组提供的软件发行包,对于Source Code Release,软件包的文件名为TC_1910_Source_Release.tar.gz;对于Binary Release,软件包的文件名为TC_1910_Binary_Release.tar.gz。二者的后续操作步骤相同,本节后续将以Source Code Release为例来说明如何制作服务器安装包及镜像导出工具。
$ tar zxf TC_1910_Source_Release.tar.gz -C /root/Documents
下载下面列出的85个文件并放到解压产生的目录/root/Documents/TC_1910_Source_Release/3rdParty及其子目录内,各个文件的具体存放位置如描述如图所示。
/root/Documents/TC_1910_Source_Release/3rdParty/ ├── ramdisk/ │ └── meegotouchtheme_0.21.14-1+0m6.tar.gz └── server/ ├── centos7/ │ ├── dnsmasq-2.76-2.el7.x86_64.rpm │ ├── libpng-1.5.13-7.el7_2.x86_64.rpm │ ├── lz4-1.8.1.2.tar.gz │ ├── mysql-libs-5.1.73-5.el6_6.x86_64.rpm │ ├── net-tools-2.0-0.22.20131004git.el7.x86_64.rpm │ ├── openssl-1.0.2k-8.el7.x86_64.rpm │ ├── psmisc-22.20-15.el7.x86_64.rpm │ ├── pv-1.4.6-1.el7.x86_64.rpm │ ├── qrencode-3.4.1-3.el7.x86_64.rpm │ ├── rsync-3.1.2-4.el7.x86_64.rpm │ ├── xampp-linux-x64-1.8.3-5-installer.run │ ├── gcc/ │ │ ├── cpp-4.8.5-16.el7.x86_64.rpm │ │ ├── gcc-4.8.5-16.el7.x86_64.rpm │ │ ├── glibc-devel-2.17-196.el7.x86_64.rpm │ │ ├── glibc-headers-2.17-196.el7.x86_64.rpm │ │ ├── kernel-headers-3.10.0-693.el7.x86_64.rpm │ │ ├── libmpc-1.0.1-3.el7.x86_64.rpm │ │ └── mpfr-3.1.1-4.el7.x86_64.rpm │ ├── krn957/ │ │ ├── libselinux-2.5-14.1.el7.x86_64.rpm │ │ ├── libselinux-python-2.5-14.1.el7.x86_64.rpm │ │ ├── libselinux-utils-2.5-14.1.el7.x86_64.rpm │ │ ├── libsemanage-2.5-14.el7.x86_64.rpm │ │ ├── libsepol-2.5-10.el7.x86_64.rpm │ │ ├── linux-firmware-20180911-69.git85c5d90.el7.noarch.rpm │ │ ├── kernel-3.10.0-957.21.3.el7.x86_64.rpm │ │ ├── kernel-headers-3.10.0-957.21.3.el7.x86_64.rpm │ │ ├── kernel-tools-3.10.0-957.21.3.el7.x86_64.rpm │ │ ├── kernel-tools-libs-3.10.0-957.21.3.el7.x86_64.rpm │ │ ├── policycoreutils-2.5-29.el7_6.1.x86_64.rpm │ │ ├── selinux-policy-3.13.1-229.el7_6.12.noarch.rpm │ │ └── selinux-policy-targeted-3.13.1-229.el7_6.12.noarch.rpm │ ├── ntfs/ │ │ ├── gnutls-3.3.26-9.el7.x86_64.rpm │ │ ├── nettle-2.7.1-8.el7.x86_64.rpm │ │ ├── ntfs-3g-2017.3.23-11.el7.x86_64.rpm │ │ ├── ntfsprogs-2017.3.23-11.el7.x86_64.rpm │ │ └── trousers-0.3.14-2.el7.x86_64.rpm │ └── smb/ │ │ ├── avahi-libs-0.6.31-17.el7.x86_64.rpm │ │ ├── cups-libs-1.6.3-29.el7.x86_64.rpm │ │ ├── libldb-1.1.29-1.el7.x86_64.rpm │ │ ├── libtalloc-2.1.9-1.el7.x86_64.rpm │ │ ├── libtdb-1.3.12-2.el7.x86_64.rpm │ │ ├── libtevent-0.9.31-1.el7.x86_64.rpm │ │ ├── libwbclient-4.6.2-12.el7_4.x86_64.rpm │ │ ├── pytalloc-2.1.9-1.el7.x86_64.rpm │ │ ├── samba-4.6.2-12.el7_4.x86_64.rpm │ │ ├── samba-client-libs-4.6.2-12.el7_4.x86_64.rpm │ │ ├── samba-common-4.6.2-12.el7_4.noarch.rpm │ │ ├── samba-common-libs-4.6.2-12.el7_4.x86_64.rpm │ │ ├── samba-common-tools-4.6.2-12.el7_4.x86_64.rpm │ │ └── samba-libs-4.6.2-12.el7_4.x86_64.rpm │ ├── perl │ │ ├── perl-5.16.3-294.el7_6.x86_64.rpm │ │ ├── perl-Carp-1.26-244.el7.noarch.rpm │ │ ├── perl-constant-1.27-2.el7.noarch.rpm │ │ ├── perl-Encode-2.51-7.el7.x86_64.rpm │ │ ├── perl-Exporter-5.68-3.el7.noarch.rpm │ │ ├── perl-File-Path-2.09-2.el7.noarch.rpm │ │ ├── perl-File-Temp-0.23.01-3.el7.noarch.rpm │ │ ├── perl-Filter-1.49-3.el7.x86_64.rpm │ │ ├── perl-Getopt-Long-2.40-3.el7.noarch.rpm │ │ ├── perl-HTTP-Tiny-0.033-3.el7.noarch.rpm │ │ ├── perl-libs-5.16.3-294.el7_6.x86_64.rpm │ │ ├── perl-macros-5.16.3-294.el7_6.x86_64.rpm │ │ ├── perl-parent-0.225-244.el7.noarch.rpm │ │ ├── perl-PathTools-3.40-5.el7.x86_64.rpm │ │ ├── perl-Pod-Escapes-1.04-294.el7_6.noarch.rpm │ │ ├── perl-podlators-2.5.1-3.el7.noarch.rpm │ │ ├── perl-Pod-Perldoc-3.20-4.el7.noarch.rpm │ │ ├── perl-Pod-Simple-3.28-4.el7.noarch.rpm │ │ ├── perl-Pod-Usage-1.63-3.el7.noarch.rpm │ │ ├── perl-Scalar-List-Utils-1.27-248.el7.x86_64.rpm │ │ ├── perl-Socket-2.010-4.el7.x86_64.rpm │ │ ├── perl-Storable-2.45-3.el7.x86_64.rpm │ │ ├── perl-Text-ParseWords-3.29-4.el7.noarch.rpm │ │ ├── perl-threads-1.87-4.el7.x86_64.rpm │ │ ├── perl-threads-shared-1.43-6.el7.x86_64.rpm │ │ ├── perl-Time-HiRes-1.9725-3.el7.x86_64.rpm │ │ └── perl-Time-Local-1.2300-2.el7.noarch.rpm └── web/ ├── bootbox-4.4.0.min.js ├── bootstrap-3.3.6.tar.gz ├── html5shiv-3.7.2.tar.gz ├── justgage-1.3.1.tar.gz ├── jquery-1.12.4.tar.gz ├── md5-2.6.0.tar.gz └── respond-1.4.2.tar.gz
注意:在下载以下列出的8个文件后,可能需要对文件重命名,以确保文件名和上图中贴出的文件名一致。
bootbox-4.4.0.min.js bootstrap-3.3.6.tar.gz html5shiv-3.7.2.tar.gz lz4-1.8.1.2.tar.gz justgage-1.3.1.tar.gz md5-2.6.0.tar.gz jquery-1.12.4.tar.gz respond-1.4.2.tar.gz
然后运行如下命令编译生成TC服务器端安装包TC_1910_Release.tar。
注意:參考设置环境变量一节设置PATH环境变量,确认路径/root/TC/buildroot-2016.08.1/output/host/usr/bin为PATH包含的路径序列中的第一个路径。
$ cd /root/Documents/TC_1910_Source_Release $ bash build.sh
上述命令运行成功后,将生成TC发行包TC_1910_Release.tar,文件路径为:/root/Documents/TC_1910_Source_Release/output/target/TC_1910_Release.tar。
该发行包包含客户端驱动程序、发行文档、服务器安装程序包和镜像导出工具,下图列出了发行包中的前三级目录包含的文件。
TC_1910_Release ├── client_installer/ │ ├── linux/ │ │ ├── clientControl/ │ │ └── diskDriverForLinux/ │ └── windows/ │ └── tcc_setup/ ├── doc/ │ ├── TC-Development-Manual │ ├── 英特尔®透明计算软件解决方案系统安装和操作说明手册.pdf │ └── 英特尔®透明计算软件解决方案系统镜像制作手册.pdf ├── server_installer/ │ └── server_installer.tar └── tool/ ├── image_export_tool/ │ └── tcboot.iso └── initializer/ └── tc-initializer.iso
下面逐个对各个子目录作说明。
此处列出150个软件包的名字和对应的参考链接,用户完成下载完成后,如发现下载的文件名和此处列出的文件名不一致,应对下载的文件执行重命名操作,将其重命名为此处列出的名字。
后续列出的内容是通过Linux文件比对命令
diff -Nur <OLD-FILE> <NEW-FILE>
生成的,该命令用于逐行比对文件OLD-FILE和文件NEW-FILE的内容,并以一定格式将逐行比对的结果显示出来。下面对上述命令产生的结果作简要说明。
注意:在比对结果中,除去“diff”、“---”、“+++”、“+”、“-”和“@@”开头之外的其他行,均以一个空格开头。
提示:您可以使用附带的Linux Shell脚本export-content-from.sh从本文档中抽取对相关文件的修改内容,该脚本接收一个参数,参数表示一个HTML文档。
$ bash export-content-from.sh <html-filename>
上述命令执行成功后,产生的内容保存在工作目录的output目录中。您可方便地使用linux系统的patch命令把以下列出的修改内容写入到对应的模块中。
修正了以下几个问题:
在上一版基础上做了如下修改。