3.2. 虚拟控制台和终端

在没有配置其他图形界面时,FreeBSD 开机时将自动进入命令行登入界面,就像下面这样:

FreeBSD/amd64 (pc3.example.org) (ttyv0)

login:

第一行包含有关系统的一些信息。amd64表示此示例中的系统正在运行64位版本的 FreeBSD。主机名pc3.example.org, ttyv0指示这是 系统控制台 。第二行是登录提示。

由于 FreeBSD 是一个多用户系统, 它需要某种方法来区分不同的用户。这是通过要求每个用户在访问系统上的程序之前登录系统来实现的。每个用户都有一个唯一的名称username和个人password

要登录到系统控制台,请键入在系统安装过程中配置的用户名,如第 2.8.5 节 “添加用户”中所述,然后按 Enter 。然后输入与用户名关联的密码,然后按 Enter 。出于安全原因, 密码 不会显示在屏幕上

输入正确的密码后, 当天的消息(MOTD)将显示后跟命令提示符。根据创建用户时选择的 shell,此提示将是#$%字符。提示指示用户现已登录到 FreeBSD 系统控制台,并准备好尝试可用命令。

3.2.1. 虚拟控制台

虽然系统控制台可用于与系统交互, 但从 FreeBSD 系统键盘上的命令行工作的用户通常会改为登录到虚拟控制台。这是因为默认情况下, 系统消息配置为显示在系统控制台上。这些消息将出现在用户正在处理的命令或文件上, 因此很难专注于手头的工作。

默认情况下,FreeBSD 配置为提供多个虚拟控制台用于输入命令。每个虚拟控制台都有自己的登录提示和 shell,很容易在虚拟控制台之间切换。这实质上提供了相当于在图形环境中同时打开多个窗口的命令行。

快捷键 Alt+F1Alt+F8 用于切换虚拟控制台。使用 Alt+F1 切换到系统控制台(ttyv0),Alt+F2 切换到第一个虚拟控制台(ttyv1),Alt+F3 切换到第一个虚拟控制台(ttyv2),以此类推。当使用Xorg 图形界面,时,使用组合键Ctrl+Alt+F1 返回虚拟控制台(tty 界面)。

同样地, 您正在从其中某个控制台切换到另一个控制台的时候, FreeBSD 会保存正在使用和恢复将要使用屏幕传输通道。 这种结果形成一种 “错觉”, 您拥有许多“虚拟”屏幕和键盘可以输入很多的命令。 这些程序需要在一个虚拟控制台不能停止运行而又不需要观察它, 它继续运行而您可以切换到其他的虚拟控制台。

更多关于 FreeBSD 控制台和键盘驱动程序的信息,请参阅kbdcontrol(1), vidcontrol(1), atkbd(4), syscons(4), and vt(4)

在 FreeBSD 中, 可用的虚拟控制台的数量可在/etc/ttys文件的这个部分中设置:

# name    getty                         type  status comments
#
ttyv0   "/usr/libexec/getty Pc"         xterm   on  secure
# Virtual terminals
ttyv1   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv2   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv3   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv4   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv5   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv6   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv7   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure

若要禁用虚拟控制台,请在表示该虚拟控制台的那一行的开头放置注释符号(#)。例如, 要将可用虚拟控制台的数量从8个减少到 4个, 请在表示 ttyv5ttyv8的最后四行前面放置一个#请勿注释掉系统控制台 ttyv0 的所在行。请注意,如果已安装并配置了 Xorg ,如第 5 章 X Window系统所述,最后一个虚拟控制台(ttyv8) 将用于访问图形环境。

如果要了解这个文件中每一列的详细介绍, 以及虚拟控制台上所能使用的配置, 请参考联机手册 ttys(5)

3.2.2. 单用户模式

FreeBSD 启动菜单提供了一个Boot Single User选项。如果选择此选项,系统将引导到一种称为single user mode的特殊模式。此模式通常用于修复无法启动的系统, 或在忘记密码时重置 root密码。在单用户模式下,网络和其他虚拟控制台不可用。但是, 拥有完整的root权限,并且在默认情况下,不需要事先输入root密码。由于这些原因,请谨慎使用该模式。

单用户模式的控制台可以在 /etc/ttys 文件设置:

# name  getty                           type  status  comments
#
# If console is marked "insecure", then init will ask for the root password
# when going to single-user mode.
console none                            unknown  off  secure

默认情况下, 状态设置为secure。这假定谁对键盘具有物理访问权限不是很重要,就是它由物理安全策略控制。如果将此设置更改为insecure,则假设环境本身是不安全的,因为任何人都可以访问键盘。当此行更改为insecure,当用户选择启动到单个用户模式时 FreeBSD 将提示root密码。

注意:

将设置更改为insecure时要小心!如果忘记了 root 密码,则仍有可能启动到单用户模式,但对于不熟悉 FreeBSD 启动过程的人来说可能会很困难。

3.2.3. 改变控制台的显示模式

FreeBSD 控制台默认的显示模式可以被调整为 1024x768, 1280x1024, 或者任何你的显卡芯片和显示器所支持的其他尺寸。若要使用一个不同的显示模式需加载VESA模块:

# kldload vesa

可以使用 vidcontrol(1) 工具来测定你的硬件支持何种显示模式。在控制台键入以下命令来获得一份所支持的显示模式列表:

# vidcontrol -i mode

这个命令的输出是一份你的硬件所支持的显示模式列表。 你可以在以 root 身份在控制台上键入 vidcontrol(1) 命令来改变显示模式:

# vidcontrol MODE_279

如果你对于新的显示模式满意,那么可以把它加入到 /etc/rc.conf 使机器在每次启动的时候都能生效:

allscreens_flags="MODE_279"

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.