如何开始使用FreeBSD

FreeBSD是一种安全,高性能的操作系统,适用于各种服务器角色。在本指南中,我们将介绍有关如何开始运行FreeBSD 11.2的服务器的一些基本信息。

介绍

FreeBSD是一种安全,高性能的操作系统,适用于各种服务器角色。 在本指南中,我们将介绍有关如何开始使用FreeBSD服务器的一些基本信息。

本指南旨在为FreeBSD服务器提供一般设置,但请注意,不同版本的FreeBSD可能具有不同的功能。 根据您的服务器运行的FreeBSD版本,此处提供的说明可能无法正常工作。

使用SSH登录

开始配置FreeBSD服务器需要采取的第一步是登录。

在DigitalOcean上,您必须在创建FreeBSD服务器时提供公共SSH密钥。 此密钥已添加到服务器实例,允许您使用关联的私钥从本地计算机安全登录。 要了解有关如何在DigitalOcean上使用FreeBSD的SSH密钥的更多信息,请遵循本指南

要登录服务器,您需要知道服务器的公共IP地址。 对于DigitalOcean Droplet,您可以在控制面板中找到此信息。 通过DigitalOcean创建的FreeBSD服务器上可用的主用户帐户称为freebsd 此用户帐户配置了sudo权限,允许您完成管理任务。

要登录FreeBSD服务器,请使用ssh命令。 您需要指定freebsd用户帐户以及服务器的公共IP地址:

ssh freebsd@your_server_ip

您应该自动进行身份验证并登录。您将被置于命令行界面中。

将默认Shell更改为tcsh(可选)

如果您登录到运行FreeBSD 11的DigitalOcean Droplet,您将看到一个非常小的命令提示符,如下所示:


如果您刚开始使用FreeBSD,这个提示可能看起来有些陌生。 让我们清楚一下我们正在使用什么样的环境。运行以下命令,看看你的freebsd用户的默认shell是什么:

echo $SHELL
/bin/sh

在此输出中,您可以看到freebsd用户的默认shell是sh (也称为Bourne shell )。 在Linux系统上, sh通常是bash的别名, bash是Bourne shell的免费软件替代品,包括一些额外的功能。 然而,在FreeBSD中,它实际上是经典的sh shell程序,而不是别名。

FreeBSD的默认命令行shell是tcsh ,但运行FreeBSD的DigitalOcean Droplets默认使用sh 如果您想将tcsh设置为freebsd用户的默认shell,请运行以下命令:

sudo chsh -s /bin/tcsh freebsd

下次登录服务器时,您将看到tcsh提示符而不是sh提示符。 您可以通过运行以下命令为当前会话调用tcsh shell:

tcsh

您的提示应立即更改为以下内容:


如果您想要返回Bourne shell,可以使用sh命令执行此操作。

虽然tcsh通常是FreeBSD系统的默认shell,但它有一些默认设置,用户可以自己调整,例如默认的寻呼机和编辑器,以及某些键的行为。 为了说明如何更改其中一些默认值,我们将修改shell的配置文件。

示例配置文件已包含在文件系统中。 将其复制到您的主目录,以便您可以根据需要进行修改:

cp /usr/share/skel/dot.cshrc ~/.cshrc

将文件复制到主目录后,您可以对其进行编辑。 默认情况下, vi编辑器包含在系统中,但如果您想要一个更简单的编辑器,则可以尝试使用ee编辑器:

ee ~/.cshrc

在浏览此文件时,您可以决定要修改的条目。 特别是,您可能希望将setenv条目更改为具有您可能更熟悉的特定默认值。

〜/ .cshrc中
. . .

setenv  EDITOR  vi
setenv  PAGER   more

. . .

如果您不熟悉vi编辑器并想要更基本的编辑环境,可以将EDITOR环境变量更改为类似ee 大多数用户都希望将PAGER更改为less而不是more 这将允许您在手册页中向上和向下滚动而不退出寻呼机:

〜/ .cshrc中
. . .
setenv  EDITOR  ee
setenv  PAGER   less
. . .

您可能希望添加到此配置文件的另一件事是一段代码,它将正确映射tcsh会话中的一些键盘键。 在文件的底部,添加以下代码。 如果没有这些行, DELETE和其他键将无法正常工作:

〜/ .cshrc中
. . .
if ($term == "xterm" || $term == "vt100" \
            || $term == "vt102" || $term !~ "con*") then
          # bind keypad keys for console, vt100, vt102, xterm
          bindkey "\e[1~" beginning-of-line  # Home
          bindkey "\e[7~" beginning-of-line  # Home rxvt
          bindkey "\e[2~" overwrite-mode     # Ins
          bindkey "\e[3~" delete-char        # Delete
          bindkey "\e[4~" end-of-line        # End
          bindkey "\e[8~" end-of-line        # End rxvt
endif

完成后,按CTRL+C ,键入exit ,然后按ENTER保存并关闭文件。 如果您使用vi编辑文件,请按ESC键保存并关闭文件,键入:wq ,然后按ENTER

要使当前会话立即反映这些更改,请获取配置文件:

source ~/.cshrc

它可能不会立即显现,但HomeInsertDeleteEnd键现在可以按预期工作。

此时需要注意的一点是,如果使用tcshcsh shell,则只要进行任何可能影响可执行路径的更改,就需要执行rehash命令。 在安装或卸载应用程序时,可能会发生这种情况。

安装程序后,您可能需要键入此命令以便shell找到新的应用程序文件:

rehash

有了这个, tcsh shell不仅被设置为你的freebsd用户的默认设置,而且它也更加实用。

将bash设置为默认Shell(可选)

如果您更熟悉bash shell并希望将其用作默认shell,则可以通过几个简短的步骤进行调整。

注意: FreeBSD 11.1不支持bash ,本节中的说明不适用于该特定版本。

首先,您需要键入以下命令来安装bash shell:

sudo pkg install bash

系统将提示您确认是否要下载该软件包。 y然后按ENTER

安装完成后,您可以通过运行以下命令启动bash

bash

这将更新您的shell提示符,如下所示:


要将freebsd的默认shell更改为bash ,可以键入:

sudo chsh -s /usr/local/bin/bash freebsd

下次登录时,将自动启动bash shell而不是当前默认值。

如果您希望更改bash shell中的默认寻呼机或编辑器,可以在名为~/.bash_profile的文件中进行更改。 默认情况下不存在,因此您需要创建它:

ee ~/.bash_profile

在里面,要更改默认的寻呼机或编辑器,请添加如下选择:

在〜/ .bash_profile
export PAGER=less
export EDITOR=ee

完成后保存并关闭文件,方法是按CTRL+C ,键入exit ,然后按ENTER

要立即实施更改,请获取文件:

source ~/.bash_profile

如果您想对shell环境进行进一步更改,例如设置特殊命令别名或设置环境变量,则可以重新打开该文件并将新更改添加到其中。

设置Root密码(可选)

默认情况下,FreeBSD服务器不允许root帐户的ssh登录。 在DigitalOcean上,此政策已经过补充,可以告诉用户使用freebsd帐户登录。

由于无法通过SSH访问root用户帐户,因此设置root帐户密码相对安全。 虽然您无法使用此功能通过SSH登录,但您可以使用此密码以root身份通过DigitalOcean Web控制台登录。

要设置root密码,请键入:

sudo passwd

系统将要求您选择并确认root帐户的密码。 如上所述,您仍然无法将其用于SSH身份验证(这是一项安全决策),但您可以使用它通过DigitalOcean控制台登录。

为此,请单击Droplet页面右上角的“ 控制台”按钮以显示Web控制台:

DigitalOcean Web控制台

如果您选择设置密码并且您被锁定在服务器之外(例如,如果您不小心设置了过于严格的防火墙规则),您可以随后通过将Droplet引导到单用户模式来设置密码。 我们有一个指南,告诉你如何在这里做到这一点

结论

到目前为止,您应该知道如何登录FreeBSD服务器以及如何设置bash shell环境。 下一步是熟悉一些FreeBSD基础知识,以及它与基于Linux的发行版的不同之处。

熟悉FreeBSD并根据需要进行配置后,您将能够更好地利用其灵活性,安全性和性能。


分享按钮