linux安装与配置简明手册
本书详细介绍如何在个人电脑上安装配置Caldera和Red Hat两种发行版本的Linux操作系统,并能帮助用户解决安装和配置过程中出现的各种问题。本书既能指导你进行基本的安装步骤,也能指导你定制独具特色的Linux 操作系统。通过本书的学习,你会成为一个Linux 操作系统的安装专家,并能使配置的机器完全按自己的意愿工作。 目 录 前言 第1章 安装Linux操作系统的准备工作 1 1.1 概述 1 1.1.1 什么是Linux操作系统 1 1.1.2 Linux操作系统的发行版本 2 1.1.3 安装Linux操作系统之前的准备工作 4 1.2 快速解决方案 5 1.2.1 使用Windows 95/98/NT查看系统 信息 5 1.2.2 查看Red Hat发行版本的硬件兼容 清单 8 1.2.3 查看Caldera发行版本的硬件兼容 清单 8 1.2.4 查找Linux操作系统的低价CD-ROM 光盘 8 1.2.5 查找关于Linux操作系统的最新新闻 9 1.2.6 确定Linux操作系统能否满足你的 工作需要 9 第2章 对硬盘驱动器进行分区 10 2.1 概述 10 2.2 快速解决方案 13 2.2.1 使用FIPS程序在不破坏原有数据的 前提下调整分区 13 2.2.2 使用Red Hat公司的Disk Druid 程序增加分区 14 2.2.3 使用Partition Magic程序整理硬盘 并增加分区 15 2.2.4 使用Caldera公司的Disk Partition 程序增加分区 15 第3章 安装Caldera发行版本 18 3.1 概述 18 3.1.1 安装过程 18 3.1.2 Caldera发行版本的安装选项 19 3.1.3 配置图形的考虑 20 3.1.4 安装多个操作系统: 21 3.2 快速解决方案 22 3.2.1 从CD-ROM光盘开始运行 安装程序 22 3.2.2 安装Caldera公司的Windows下的 辅助安装工具程序 22 3.2.3 确定哪些安装盘是必需的 23 3.2.4 制作安装盘 23 3.2.5 制作一张Windows下的引导盘 24 3.2.6 从软盘开始运行安装程序 25 3.2.7 为一个专用的本地网络分配IP地址 25 3.2.8 从引导管理程序失误中恢复NT 25 3.2.9 制作一张定制的Linux操作系统 引导盘 26 3.2.10 设置直接引导启动到Caldera 发行版本 26 3.2.11 直接引导启动到Caldera发行版本 27 3.2.12 诊断使用LILO程序引导启动时 出现的挂起错误 27 3.2.13 恢复主引导记录 28 3.2.14 运行LILO程序 28 3.2.15 设置LILO程序 28 3.2.16 确定磁盘参数 29 3.2.17 在LILO程序中设置用来选择某个 操作系统的启动引导延时 30 3.2.18 重新安装LILO程序 30 3.2.19 删除LILO程序 30 3.2.20 关闭系统 30 第4章 安装Red Hat发行版本 31 4.1 概述 31 4.1.1 安装过程 32 4.1.2 Red Hat发行版本的安装级别 32 4.1.3 LILO程序,Linux操作系统的加载 程序 34 4.1.4 配置显示选项的考虑 35 4.1.5 系统开机引导时可以使用的服务 35 4.1.6 安装多个操作系统 36 4.2 快速解决方案 36 4.2.1 确定哪些安装盘是必需的 36 4.2.2 制作一张Linux操作系统的安装引 导盘 37 4.2.3 下载最新的引导启动映像 37 4.2.4 制作一张Windows下的引导盘 37 4.2.5 从一张引导盘开始运行安装程序 38 4.2.6 从CD-ROM光盘开始运行安装程序 38 4.2.7 为NFS、HTTP或者FTP安装设置 一个本地服务器 39 4.2.8 为一个专用的本地网络分配IP地址 39 4.2.9 通过一个NFS挂装进行安装 39 4.2.10 从一个硬盘驱动器分区进行安装 40 4.2.11 从一个HTTP或者FTP服务器进行 安装 40 4.2.12 从引导管理程序失误中恢复NT 40 4.2.13 选择需要安装哪些组件和软件包 41 4.2.14 使用虚拟控制台跟踪和调试安装 过程 41 4.2.15 引导进入Linux操作系统 42 4.2.16 诊断使用LILO程序启动引导时 出现的挂起错误 42 4.2.17 可以用在MBR中的LILO程序的 代用程序 44 4.2.18 恢复MBR 45 4.2.19 运行LILO程序 45 4.2.20 设置LILO程序 45 4.2.21 配置LILO程序引导多个操作系统 45 4.2.22 确定磁盘参数 46 4.2.23 设置用来选择某个操作系统的 启动引导延时 47 4.2.24 在LILO程序中设置一个缺省的 操作系统 47 4.2.25 重新安装LILO程序 48 4.2.26 删除LILO程序 48 4.2.27 选择自动启用哪些服务 48 4.2.28 关闭系统 48 4.2.29 让Linux操作系统检查1GB以上的 RAM系统内存 49 第5章 使用Linux操作系统 50 5.1 概述 50 5.1.1 Linux操作系统与DOS和NT的比较 51 5.1.2 文件存取权限和所有权限 51 5.2 快速解决方案 52 5.2.1 设置日期 52 5.2.2 设置时间 52 5.2.3 列出目录的内容清单 52 5.2.4 切换目录路径 53 5.2.5 确定自己所在的位置 54 5.2.6 解读文件和目录清单列表 54 5.2.7 改变文件和目录的存取权限 54 5.2.8 改变文件和目录的所有者 55 5.2.9 给文件和目录改名 55 5.2.10 建立目录 55 5.2.11 建立链接 55 5.2.12 删除目录 56 5.2.13 拷贝文件和目录 56 5.2.14 移动文件和目录 57 5.2.15 删除文件 57 5.2.16 识别二进制文件 57 5.2.17 使用vi文本编辑器程序 57 5.2.18 使用pico文本编辑器程序 58 5.2.19 查看文本文件,不使用文本编辑器 程序 60 5.2.20 把命令结果输出到文本文件中 61 5.2.21 建立别名 61 5.2.22 使用find命令确定文件存放位置 61 5.2.23 通过搜索locate数据库来查找文件 62 5.2.24 在path语句说明的路径中查找 文件 62 5.2.25 在path语句中添加新路径 63 5.2.26 在文件内容中查找文本 63 5.2.27 寻求帮助 63 5.2.28 在后台运行命令程序 63 5.2.29 确定当前运行的命令 63 5.2.30 把命令程序调到后台去 64 5.2.31 把后台命令调回前台来 64 5.2.32 取消正在执行的命令 64 5.2.33 清除屏幕 64 5.2.34 一次执行多个命令 65 5.2.35 退出登录 65 5.2.36 重新引导启动机器 65 5.2.37 系统关机 65 第6章 配置X图形界面 66 6.1 概述 66 6.2 快速解决方案 67 6.2.1 在Caldera发行版本中配置X图形 界面的准备工作 67 6.2.2 在Caldera发行版本中配置鼠标 69 6.2.3 在Caldera发行版本中配置键盘 70 6.2.4 在Caldera发行版本中配置图形卡 71 6.2.5 在Caldera发行版本中配置显示器 73 6.2.6 在Caldera发行版本中配置图形显示 模式和颜色设置 73 6.2.7 在Caldera发行版本中配置X服务器 程序本身 74 6.2.8 在Red Hat发行版本中配置X图形 界面 75 6.2.9 在Red Hat发行版本中定制配置 一台显示器 79 6.2.10 在Red Hat发行版本中配置图形 显示模式 80 6.2.11 手动调整X图形界面 82 6.2.12 手动配置显示器 82 6.2.13 手动配置图形卡 83 6.2.14 手动配置图形显示模式 84 6.2.15 进入GUI 85 第7章 窗口管理器程序和桌面环境 86 7.1 概述 86 7.1.1 窗口管理器程序 86 7.1.2 桌面环境 87 7.2 快速解决方案 88 7.2.1 查找窗口管理器程序 88 7.2.2 在Gnome桌面环境中运行程序 88 7.2.3 在Gnome桌面环境中隐藏任务条 89 7.2.4 使用Gnome桌面环境中的帮助系统 89 7.2.5 使用Gnome桌面环境中的控制面板 90 7.2.6 在KDE桌面环境中运行程序 91 7.2.7 在KDE桌面环境中隐藏任务条 92 7.2.8 使用KDE桌面环境中的帮助系统 92 7.2.9 使用KDE桌面环境中的控制中心 93 7.2.10 在KDE桌面环境使用COAS 94 7.2.11 安装一个新的窗口管理器程序 94 第8章 建立用户帐户 96 8.1 概述 96 8.1.1 口令字 97 8.1.2 编写添加用户命令脚本程序 98 8.2 快速解决方案 98 8.2.1 添加一个新用户 98 8.2.2 添加或者修改一个口令字 98 8.2.3 通过linuxconf程序添加一个 新用户 99 8.2.4 查看关于新用户的缺省设置 100 8.2.5 选择关于新用户的缺省设置 100 8.2.6 改变关于新用户的缺省设置 101 8.2.7 修改现有用户的信息 101 8.2.8 通过linuxconf程序修改现有用户 的信息 102 8.2.9 安装shadow口令字软件包 103 8.2.10 转换用户系统使用shadow 口令字 103 8.2.11 转换用户系统不再使用shadow 口令字 103 8.2.12 查找缺省的用户配置文件 103 8.2.13 查找容易被破译的口令字 104 8.2.14 冻结一个用户 104 8.2.15 通过linuxconf程序冻结一个用户 104 8.2.16 删除一个用户 104 8.2.17 通过linuxconf程序删除一个用户 104 8.2.18 检查系统的易受攻击性 105 8.2.19 修改源代码使程序能够运行在使用 shadow口令字功能的系统中 105 8.2.20 打开linuxconf程序 105 第9章 Linux操作系统的文件系统 107 9.1 概述 107 9.1.1 文件系统基础 107 9.1.2 Linux文件系统的格式 107 9.2 快速解决方案 108 9.2.1 建立一个文件系统 108 9.2.2 挂装到文件系统上 108 9.2.3 从文件系统上卸载 109 9.2.4 简化常用挂装命令 109 9.2.5 挂装一个已经准备好的设备 类型 110 9.2.6 在开机引导启动时自动挂装一个 设备 110 9.2.7 把一个现存的目录转移到一个新 分区 111 第10章 编译系统内核 113 10.1 概述 113 10.1.1 为什么要编译 113 10.1.2 为什么不编译 114 10.1.3 内核升级问题 114 10.1.4 应该使用哪一个内核 114 10.1.5 系统内核配置选项 114 10.2 快速解决方案 115 10.2.1 确定用户正在使用的是哪个版本 的内核 115 10.2.2 确定内核是测试版还是正式版 115 10.2.3 通过发行商做好升级内核的 准备 115 10.2.4 哪里可以找到内核源代码 116 10.2.5 为新内核加上LILO选项 116 10.2.6 测试内核安装效果 116 10.2.7 使用Caldera发行版本升级内核 117 10.2.8 使用Red Hat发行版本升级内核 117 10.2.9 编译内核 118 10.2.10 升级内核 119 10.2.11 为内核源代码打补丁 119 10.2.12 对缺省内核进行细调 120 10.2.13 安装内核 121 10.2.14 加载内核模块 121 10.2.15 卸载内核模块 121 10.2.16 使用config程序 122 10.2.17 使用menuconfig程序 122 10.2.18 使用xconfig程序 124 第11章 配置LAN 127 11.1 概述 127 11.1.1 计划一个LAN 127 11.1.2 网络硬件 128 11.1.3 服务 129 11.1.4 确定用户是否需要动态 分配路由 130 11.2 快速解决方案 130 11.2.1 检查网络当前的设置情况 130 11.2.2 设置IP地址 131 11.2.3 在GUI中设置IP地址 131 11.2.4 给网络中的计算机命名 133 11.2.5 在GUI中给网络中的计算机命名 133 11.2.6 分配域名 135 11.2.7 在GUI中分配域名 135 11.2.8 设置动态路由分配 136 11.2.9 在Red Hat发行版本中设置静态路由 分配 138 11.2.10 为计算机配置域名解析 139 11.2.11 建立LAN 140 11.2.12 配置打印服务 141 11.2.13 在GUI中添加一台打印机 142 11.2.14 在GUI中修改一个打印机设置 144 11.2.15 删除一个打印机设置 145 11.2.16 在GUI中删除一个打印机设置 145 11.2.17 配置一个NFS文件服务器计算机 147 11.2.18 配置一个NFS客户计算机 148 11.2.19 确定是否需要NIS 148 11.2.20 配置NIS 148 第12章 通过Samba服务与Windows网络 集成 152 12.1 概述 152 12.2 快速解决方案 154 12.2.1 获取Samba的最新版本 154 12.2.2 检查是否已经安装了Samba 154 12.2.3 从Red Hat发行版本的CD-ROM 光盘上安装Samba软件包 154 12.2.4 从Caldera发行版本的CD-ROM 光盘上安装Samba软件包 154 12.2.5 从源代码安装Samba软件包 154 12.2.6 查看Samba守护进程是否正在 运行 155 12.2.7 配置Samba守护进程从inetd中 运行 155 12.2.8 配置Samba守护进程从系统的开机 引导脚本程序中运行 156 12.2.9 配置Samba守护进程不从系统的 开机引导脚本程序中运行 156 12.2.10 手动启动Samba守护进程运行 157 12.2.11 定义主机的Samba服务访问 权限 157 12.2.12 建立一个Samba配置文件 157 12.2.13 配置硬盘驱动器共享:Linux 到Windows 159 12.2.14 配置硬盘驱动器共享:Windows 到Linux 160 12.2.15 从一个Windows机器上测试硬盘 驱动器共享设置 161 12.2.16 从一个Linux机器上测试硬盘 驱动器共享设置 161 12.2.17 配置打印共享:Linux到 Windows 161 12.2.18 配置打印共享:Windows到 Linux 162 12.2.19 测试打印共享 163 12.2.20 访问一个Windows硬盘驱动器 163 第13章 连接到因特网 164 13.1 概述 164 13.1.1 PPP拨号程序 164 13.1.2 因特网客户程序 164 13.2 快速解决方案 165 13.2.1 连接到ISP 165 13.2.2 使用kppp设置一个PPP连接 166 13.2.3 准备编写一个登录命令脚本 170 13.2.4 在kppp中编写一个登录命令脚本 170 13.2.5 使用linuxconf程序设置一个PPP 连接 171 13.2.6 下载并安装pppsetup软件 173 13.2.7 使用pppsetup软件对PPP拨号进行 设置 173 13.2.8 从命令行拨入 177 13.2.9 从Caldera发行版本的GUI 中拨入 177 13.2.10 从Red Hat发行版本的GUI 中拨入 177 第14章 设置因特网服务 178 14.1 概述 178 14.1.1 连接性 178 14.1.2 电子邮件方面的考虑 178 14.1.3 使所做的设置修改明确生效 179 14.1.4 虚拟主机 179 14.2 快速解决方案 179 14.2.1 设置虚拟主机服务 179 14.2.2 配置电子邮件 180 14.2.3 运行POP电子邮件软件 182 14.2.4 配置Apache软件的WWW服务 功能 183 14.2.5 配置一个FTP服务器 185 14.2.6 配置NFS 186 第15章 软件包管理 188 15.1 概述 188 15.1.1 选择下载的软件包格式 188 15.1.2 软件打包方法 189 15.1.3 X Window环境中的RPM工具 190 15.2 快速解决方案 191 15.2.1 管理RPM软件包 191 15.2.2 使用tar档案文件 193 15.2.3 使用GZip压缩 195 15.2.4 建立一个压缩的tar文件 195 第16章 安装新软件 196 16.1 概述 196 16.2 快速解决方案 198 16.2.1 寻找软件包 198 16.2.2 确定源代码是否可以在你的 机器上通过编译并运行 199 16.2.3 替换制作文件 199 16.2.4 编译源代码 200 16.2.5 安装二进制代码 200 16.2.6 把软件包添加到用户的PATH 语句中 200 16.2.7 识别可执行程序 201 第17章 C语言编程工具 202 17.1 概述 202 17.1.1 C语言编程工具 202 17.1.2 Linux操作系统中的C语言编程 202 17.2 快速解决方案 203 17.2.1 安装C语言编译器 203 17.2.2 安装基本C语言函数库 203 17.2.3 安装内核函数库 203 17.2.4 安装build管理器 204 17.2.5 安装C语言预处理器 204 17.2.6 安装文件比较工具软件 204 17.2.7 安装源代码补丁修补软件 204 17.2.8 寻找专业函数库 205 17.2.9 建立一个简单的制作文件 205 第18章 编写shell命令脚本程序 207 18.1 概述 207 18.1.1 shell概述 207 18.1.2 良好的命令脚本程序编程习惯 208 18.1.3 编程示范 208 18.2 快速解决方案 210 18.2.1 编写一个命令脚本程序 210 18.2.2 给变量赋值 211 18.2.3 使用某个变量的值 211 18.2.4 提示和接受输入数据 211 18.2.5 忽略元字符 211 18.2.6 编写条件if语句 212 18.2.7 接受命令行输入 213 18.2.8 添加注释语句 213 18.2.9 添加一个帮助组件 213 18.2.10 添加一个for循环语句 214 18.2.11 添加一个while循环语句 214 18.2.12 添加一个菜单 214 18.2.13 二次检查用户输入数据 215 18.2.14 比较文件、字符串以及正则 表达式 217 18.2.15 结束一个命令脚本程序 218 18.2.16 测试一个命令脚本程序 219 18.2.17 调试一个命令脚本程序 219 第19章 Perl语言 221 19.1 概述 221 19.1.1 为什么使用Perl语言 221 19.1.2 Perl语言编程示范 222 19.2 快速解决方案 224 19.2.1 建立一个Perl程序 224 19.2.2 运行一个Perl程序 224 19.2.3 使程序输出在下一行显示 224 19.2.4 接受命令行输入 225 19.2.5 给变量赋值 225 19.2.6 使用某个变量的值 225 19.2.7 测试true或者false 225 19.2.8 测试文件 225 19.2.9 使用数学计算 226 19.2.10 数据值比较 226 19.2.11 字符串处理 227 19.2.12 使用数组 227 19.2.13 使用for语句 228 19.2.14 使用foreach语句 229 19.2.15 使用if语句 229 19.2.16 使用unless语句 230 19.2.17 使用until语句 231 19.2.18 使用while语句 231 19.2.19 把数据写入一个文件 231 19.2.20 从一个文件中读出数据 232 第20章 配置系统备份策略 233 20.1 概述 233 20.2 快速解决方案 235 20.2.1 获取ftape驱动程序 235 20.2.2 安装ftape驱动程序 236 20.2.3 选择一种备份策略 236 20.2.4 人工建立备份:通用方法 237 20.2.5 使用软盘或磁带机进行一次完全 备份 237 20.2.6 从磁带或软盘中恢复完全备份 238 20.2.7 向一个现有的tar备份文件中添加 文件 238 20.2.8 设置备份操作在指定时间执行 238 20.2.9 选择备份用的软件 239 20.2.10 自动备份 239 20.2.11 决定是否使用一个活动硬盘 驱动器系统 240 第21章 安全性问题 242 21.1 概述 242 21.2 快速解决方案 243 21.2.1 关闭简单的薄弱环节 243 21.2.2 列出成功登录的记录清单 243 21.2.3 列出不成功登录的记录清单 244 21.2.4 查找安全漏洞 244 21.2.5 密切注意系统安全性方面的进展 244 21.2.6 确定是否需要一堵防火墙 245 21.2.7 强化对网络驱动器访问的控制 246 21.2.8 过滤向外发送的数据包 246 21.2.9 安装ipchains 247 21.2.10 在重启动/关机之前保存数据 包过滤规则 248 21.2.11 开机引导后恢复数据包过滤 规则 248 21.2.12 安装SOCKS 248 21.2.13 安装代理服务器程序 249 21.2.14 配置SOCKS 249 21.2.15 设置Linux机器通过代理防火墙 250