使用 Linux 烹饪 - L'Intranet Originale
没错,它是完全非图形化的,但有颜色,mon ami。为什么?嗯,François,我想我有点怀旧了。当我读到本期主题是内联网时,它让我开始思考内联网的整个概念,字面意思是内部网络——如果你愿意的话,这是一个特定用户群体的私密小宇宙。通常,我们认为企业或组织会使用它,但内联网也非常适合业余爱好或用户群体。当我们谈论内联网时,我们倾向于想到执行这些功能的 Web 联系人管理系统和门户。
Quoi? 纯文本屏幕?这很容易。最初的内联网早在我们开始上网之前就存在了,mon ami,而且通信是非图形化的。Mon Dieu,我们为什么还在说话?我们的客人已经到了。欢迎,mes amis,请随意就座,François 会给您拿酒来。去酒窖,François。请拿回 2003 年 Coastal Sauvignon Blanc。Vite!
我刚才正在告诉 François 关于最初的内联网,mes amis。很久以前,当我刚走出青少年时期时,我开始在旧的 Commodore 64 上运行这些原始内联网之一。它们被称为公告板系统,或 BBS。事实上,多年前我编写并运行了自己的 BBS。我运营的那个只有一条电话线,这意味着一次只能有一个用户拨入。这是一个非网络系统,但它是一个内联网,在其鼎盛时期,有 40 或 50 个用户利用了它。那次短暂的回忆之旅是我整理 BBS 程序菜单的原因。
您可能会认为,在这个高度图形化的时代,没有人使用或继续开发文本风格的 BBS 程序。事实上,许多 BBS 仍在运行,开发人员继续致力于开发这些程序。
今晚菜单上的第一项是 Bryan Burns 的 NexusChat。NexusChat 或 NChat 是一款出色的 BBS 风格程序,它提供不同的用户级别、多个房间、私人和群组聊天、电子邮件消息、在线配置、在线帮助以及更多功能。此外,您不需要 root 权限即可运行 NexusChat,也不需要 root 权限即可安装它。首先创建一个目录,您希望在其中安装聊天服务器。例如,我在我的主目录中创建了一个名为 nexuschat 的目录。下一步是提取源包
tar -xzvf nchat-3.31.tar.gz cd nchat-3.31 ./setup.sh
您必须回答的问题非常基本,您可以接受默认值,但有几个例外。当被问及您希望将二进制文件安装在哪里时,请指示您之前创建的聊天目录。基本数据目录默认为 /home/nchat/etc,现在可以是您选择安装它的任何位置的 etc 子目录。接下来,系统会询问您端口的数量。这是在任何给定时间可以连接到您的聊天服务器的最大人数。此处的默认值为 15。当您回答了最后一个问题后,就该输入了make。编译几秒钟后,最后一步是创建用户数据库。默认情况下,您应该为可能的用户创建 999 个插槽。
就是这样;这里没有安装。最后一步涉及手动将 etc 目录移动到其最终位置。您还需要对 nchat 和 userdb 二进制文件执行相同的操作。就我而言,我选择在 /home/marcel/nexuschat 中运行服务器,因此我执行了以下命令
mv etc /home/marcel/nexuschat mv nchat /home/marcel/nexuschat mv userdb /home/marcel/nexuschat
切换到您的 NexusChat 目录并使用以下命令初始化用户数据库userdb -z -s 999。除了准备数据库之外,您还需要创建密码为 root 的 000 用户。要启动服务器(默认情况下在端口 4000 上运行),只需键入/path_to/nchat。现在,从另一个终端,连接到您的聊天服务器并以 000 身份登录
telnet your_server 4000
连接后您需要做的第一件事之一是更改密码。您可以通过键入/passwd topsecret来完成,其中 topsecret 是您选择的新密码。连接并聊天后,您可以使用许多不同的命令。与密码更改命令一样,这些命令都以斜杠字符开头。要获取可用命令列表,请键入/?。/echo.
此时,访客也可以登录。他们所要做的就是按 Enter 键,他们会自动以访客身份进入。他们可以输入NEW来将自己注册为系统上的用户,但系统管理员必须先确认他们的注册才能登录。此时,他们可以更改自己的句柄并使用一组有限的命令进行聊天。管理员(即运行 nchat 程序的人)可以添加永久用户或通过调用用户编辑器来激活已自行注册的用户;使用/ue 用户名命令。您也可以从命令行执行此操作,使用userdb,这是安装的另一个二进制文件。然后,要从 NexusChat 目录添加用户,您需要输入以下内容
./userdb -a user -u -l 003 -h Francois -p 123 -t 3600
您正在添加用户级别帐户 (-a),还有系统管理员;更新用户数据库 (-u);创建用户编号 003 (-l);为用户分配句柄 Francois (-h);分配密码 123 (-p);并将会话超时设置为 3600 秒 (-t)。如果您只输入userdb不带任何选项,则会返回所有各种选项的列表。
我提到默认端口号是 4000。可以通过编辑 etc/nchatrc 文件来更改此参数和其他一些参数。您可能需要将 chat_name 更改为您选择的名称,因为这是 BBS 的名称。某些参数,例如ask_ansi = true,被注释掉了。此外,虽然大多数终端都可以毫无问题地处理 ANSI 颜色,但在用户登录时提供该选项可能会更好。
etc 目录中还有一些其他有趣的文件。例如,nc_login 文件是用户登录时看到的内容,以及等效的 nc_ansi_login,而 nc_motd 是每日消息。
NexusChat 非常有趣且易于运行,管理问题最少。它也非常灵活,并提供简单的用户和聊天室创建选项。甚至还有一个基本的电子邮件功能,因此您可以为当前不在线的用户留下私人消息。如果您决定尝试 NexusChat,则值得查看 NexusChat 网站,以获取其许多功能的完整列表(请参阅在线资源)。
在 François 为您续杯时,让我们看看另一个古老的 BBS 示例。某些程序提供的功能比 NexusChat 更复杂,例如完整的消息传递功能、复杂的房间创建(一些用于消息传递,另一些仅用于聊天)、统计信息、世界时钟和日历等。Walter de Jong 的 bbs100 就是这样一种 BBS。
要使 bbs100 准备好使用,您需要从源代码构建它,您可以从 bbs100 网站获取源代码(请参阅资源)。编译和安装程序非常容易,但步骤可能看起来有点奇怪
tar -xzvf bbs100-2.1.tar.gz cd bbs100-2.1/src ./configure --prefix=/home/bbs100 make dep make make install
特别是,请注意上面的前缀。重要的是不要使用 /usr/local 默认值,因为 BBS 需要能够写入该前缀下的各个目录,并且权限可能不允许在 /usr/local 下写入。我也没做make install作为 root 用户,因为没有必要。也就是说,您需要确保您的登录名有权访问您尝试安装的目录。我为此特定的 BBS 创建了一个 /home/bbs100 目录。
完成安装后,切换到安装目录,在我的例子中是 /home/bbs100,并在您喜欢的编辑器中打开 etc/param。此处应立即更改一些设置,例如包含 BBS 名称、您要运行程序的端口以及安装的基本目录的设置,主要是为了确认
bbs_name The Cellar port_number 12345 basedir /home/bbs100
在我们继续之前,我建议您花一些时间熟悉 etc 目录中的各种文件。它们包括欢迎屏幕、每日消息、帮助文件、首次登录时显示的系统规则以及许多其他有趣的内容。
您快完成了。因为我们将 Francois 设置为系统管理员,所以我们还需要给他一个密码才能登录。从您安装 BBS 的目录中,键入bin/mkpasswd SysOP_Name;然后系统会要求您输入该用户的密码
bin/mkpasswd Francois bbs100 2.1 mkpasswd by Walter de Jong <walter@heiho.net> (C) 2004 Enter password: Enter it again (for verification): OIGxutxGpuTowzw2AgMXZRkCNk
最后一行是系统管理员的加密密码。要让 BBS 知道它,请编辑 etc/su_passwd 并输入系统管理员的姓名,后跟冒号,然后是加密密码
Francois:OIGxutxGpuTowzw2AgMXZRkCNk
要启动 BBS,只需键入/home/bbs100/bin/bbs start。守护程序运行后,通过 telnet 连接到您定义的端口,从终端窗口连接
telnet your_system 12345
要更改为 BBS 等效的超级用户或 root 用户,请按 $ 热键。在这种情况下,超级用户被称为系统管理员或系统操作员。只有在 etc/su_passwd 文件中拥有其句柄的人才能使用此热键。在所有其他情况下,都会显示一个漂亮的日历,显示世界各地的时间。成为系统管理员后,您可以访问许多其他命令;只需按 Ctrl-S 即可进入系统管理员菜单。成为系统管理员后,您可以选择配置各种系统参数、创建房间(消息传递和实时聊天室)以及处理讨厌的用户(如果需要)。
可能需要一些时间才能适应,但 BBS 概念功能强大,可能有点让人上瘾。这是考虑它的另一个原因。当六个用户在线时,我的总内存使用量(包括正在运行的 bbs100 程序)为 66,917 字节。正如您所看到的,mes amis,更小更简单肯定有其优势。
当我们惊叹于即时消息和手机短信的普及程度时,让我们记住这些技术的根源可以追溯到很久以前。为了证明我的观点,我将以一次短暂的回忆之旅来结束本文。很久以前,有一个名为 write 的命令,另一个名为 mesg 的命令。mesg 命令允许您像这样打开消息功能
mesg y
简而言之,您允许其他人向您发送消息。现在,登录到另一个终端会话并在那里也打开消息。让我们假设我以 marcel 身份登录到一个终端,而 François 以 francois 身份登录到另一个终端。他可以通过执行以下操作来与我打开聊天会话
write marcel /dev/pts/16
然后他就可以开始编写他想要的任何内容,直到他按下 Ctrl-D 来结束聊天会话。在我的终端会话中,我会看到以下内容
[marcel@francois marcel]$ Message from francois@francois.salmar.com on pts/14 at 19:30 ... Hello there, Chef! Have you decided what kind of wine we will be serving tonight?
正如俗话所说,Plus � change, plus c'est la m�e chose。
看来,mes amis,又到了打烊时间了。不过请慢慢来,完成你们的对话。在文本世界中,不知何故感觉很容易坐下来悠闲地品尝一杯葡萄酒。因此,mes amis,让我们为彼此的健康干杯。A votre santé Bon appétit!
本文的资源: /article/8198。
Marcel Gagné 是一位屡获殊荣的作家,居住在安大略省密西沙加市。他是 Moving to the Linux Business Desktop(ISBN 0-131-42192-1)的作者,这是他在 Addison-Wesley 出版的第三本书。他还是一名飞行员,曾是 Top-40 唱片骑师,创作科幻小说和奇幻小说,并能折出精美的折纸霸王龙。可以通过 mggagne@salmar.com 与他联系。您可以从他的网站 www.marcelgagne.com 上发现许多其他内容,包括很棒的 WINE 链接。