牛骨文教育服务平台(让学习变的简单)

6.56. Util-linux-2.12r

Util-linux 软件包包含许多工具。其中比较重要的是加载、卸载、格式化、分区和管理硬盘驱动器,打开 tty 端口和得到内核消息。

预计编译时间: 0.2 SBU所需磁盘空间: 17.2 MB

6.56.1. FHS 兼容性说明

FHS 推荐使用 /var/lib/hwclock 目录代替常用的 /etc 目录以定位 adjtime 文件。要将 hwclock 编译成与 FHS 兼容的程序,运行下面的命令:

sed -i "s@etc/adjtime@var/lib/hwclock/adjtime@g" 
    hwclock/hwclock.c
mkdir -p /var/lib/hwclock

6.56.2. 安装 Util-linux

Util-linux 在基于新版本的 Linux-Libc-Headers 编译时会出错,下面的补丁修正了这个问题:

patch -Np1 -i ../util-linux-2.12r-cramfs-1.patch

为编译 Util-linux 做准备:

./configure

编译软件包:

make HAVE_KILL=yes HAVE_SLN=yes

make 参数的含义:

_HAVE_KILL=yes_

防止编译和安装 kill 程序(已经由 Procps 安装了)。

_HAVE_SLN=yes_

防止编译 sln 程序(这是静态连接的 ln ,已经由 Glibc 安装了)。

这个软件包没有附带测试程序。

安装软件包:

make HAVE_KILL=yes HAVE_SLN=yes install

6.56.3. Util-linux 的内容

安装的程序: agetty, arch, blockdev, cal, cfdisk, chkdupexe, col, colcrt, colrm, column, ctrlaltdel, cytune, ddate, dmesg, elvtune, fdformat, fdisk, flock, fsck.cramfs, fsck.minix, getopt, hexdump, hwclock, ipcrm, ipcs, isosize, line, logger, look, losetup, mcookie, mkfs, mkfs.bfs, mkfs.cramfs, mkfs.minix, mkswap, more, mount, namei, pg, pivot_root, ramsize(→rdev), raw, rdev, readprofile, rename, renice, rev, rootflags(→rdev), script, setfdprm, setsid, setterm, sfdisk, swapoff(→swapon), swapon, tailf, tunelp, ul, umount, vidmode(→rdev), whereis, write

简要描述

agetty 打开 tty 端口,为登录名称建立命令控制符,并引出 login 程序
arch 报告机器的体系结构
blockdev 在命令行中调用块设备的 ioctl
cal 显示一个简单的日历
cfdisk 处理指定设备的分区表
chkdupexe 找出重复的可执行文件
col 过滤回显反馈线
colcrt 过滤那些 nroff 终端不具备输出的能力,比如高分点距、半线距
colrm 过滤掉给出的列
column 把输出格式化为几列
ctrlaltdel 设置 CTRL+ALT+DEL 组合键的功能为硬重启或软重启
cytune 查询和修改 Cyclade 驱动器的中断入口
ddate 把阳历日期转换为 Discordian 日期
dmesg 显示内核的启动信息
elvtune 调整块设备的相互作用和性能
fdformat 低级格式化一张软盘
fdisk 磁盘分区管理程序
flock 得到一个文件锁,并根据状态执行一个命令
fsck.cramfs 对 Cramfs 文件系统的一致性进行检查
fsck.minix 对 Minix 文件系统的一致性进行检查
getopt 在给出的命令行进行选项和参数解析
hexdump 用用户指定的方式(包括ASCII, 十进制, 十六进制, 八进制)显示一个文件或者标准输入的数据
hwclock 查询和设置硬件时钟(也被称为 RTC 或 BIOS 时钟)
ipcrm 删除给定的进程间通信(IPC)资源
ipcs 提供 IPC 状态信息
isosize 报告 iso9660 文件系统的大小
line 单行拷贝
logger 设置系统日志的入口
look 显示以某个给定字符串开头的行
losetup 启动和控制回环(loop)设备
mcookie xauth 生成 magic cookies (128位的随机16进制数)
mkfs 在一个设备(通常是一个硬盘分区)设备上建立文件系统
mkfs.bfs 创建一个 Santa Cruz Operations (SCO) bfs 文件系统
mkfs.cramfs 创建 cramfs 文件系统
mkfs.minix 创建 Minix 文件系统
mkswap 初始化指定设备或文件,以用做交换分区
more 分屏显示文件,但没有 less 好用
mount 把一个文件系统从一个设备挂载到一个目录
namei 显示指定路径的符号链接
pg 显示文本文件内容,一次显示一屏
pivot_root 使某个文件系统成为当前进程的根文件系统
ramsize 显示或者改变 RAM disk 的大小
raw 将一个原始的 Linux 字符设备绑定到一个块设备
rdev 查询和设置内核的根设备和其他信息
readprofile 显示内核侧写文件 /proc/profile 的信息
rename 对文件进行重命名
renice 修改正在运行进程的优先级
rev 颠倒一个文件每行字符的顺序
rootflags 在挂载根设备时查询和设置额外的信息
script 为终端会话过程建立一个 typescipt 文件,记录会话过程中终端的输出。
setfdprm 设置用户定义的软盘参数
setsid 在一个新的会话中运行程序
setterm 设置终端属性
sfdisk 磁盘分区表管理工具
swapoff 取消对指定交换设备和交换文件的使用
swapon 使指定的交换设备和交换文件生效
tailf 跟踪一个日志文件,显示日志的最后10行,并将日志中新的记录也显示出来。
tunelp 设置打印设备的参数
ul 用来将指定文件中出现的下划线使用指定终端画下横线的序列
umount 卸载一个被挂载的文件系统
vidmode 查询和设置视频模式
whereis 确定某命令二进制文件、源文件、手册文档的位置
write 发一个消息给另一个用户,_如果_他开启了 writting 的话。