代码编织梦想

1.绪论

FreeBSD是一种类UNIX操作系统,是由经过BSD、386BSD和4.4BSD发展而来的Unix的一个重要分支。FreeBSD 为不同架构的计算机系统提供了不同程度的支持。并且一些原来BSD UNIX的开发者后来转到FreeBSD的开发,使得FreeBSD在内部结构和系统API上和UNIX有很大的兼容性。它可以在多个平台上进行使用,例如amd64(x86_64)、X86(i386)、ARM、AArch64、IA-64、PowerPC、PC-98、SPARC等架构,详细可以参考FreeBSD参考文档。FreeBSD很大程度上是作为服务器系统来使用的,对于个人桌面不是非常支持,当然也有很多BSD类型的另外系统,例如OpenBSD,GhostBSD,NetBSD,OpenBSD等等,在后续的文章中,笔者会进一步讲述BSD家族之间的关系和联系。

2.安装过程

2.1 刻录FreeBSD启动U盘

首先我们到FreeBSD官网下载FreeBSD的镜像文件,这里笔者选择了FreeBSD12.1版本的,由于电脑是64位系统,笔者选择了amd64类型的img镜像文件:FreeBSD-12.1-RELEASE-amd64-memstick.img,详细可以参见官网。由于笔者电脑中已经有了ArchLinux系统,所以我这里我选择Linux自带的dd命令刻录U盘启动。在Linux系统下,将镜像文件刻录到U盘中

sudo dd if=FreeBSD-12.1-RELEASE-amd64-memstick.img of=/dev/sdX bs=1M

这里的X指的是U盘所在的硬盘。注意确认正确的盘符,使用fidsk -l可以查看硬盘,否则会销毁硬盘的数据。
U盘刻录好之后,重启电脑进入U盘,可以根据U盘中的提示进行系统的安装,这里就不再过多的解释了,比较简单。只不过与它不同的是,笔者这里没有再添加FreeBSD启动管理器,为方便管理,笔者使用了ArchLinux中的grub2来启动FreeBSD。安装完成之后,笔者在grub2中按照以下的方式修改grub2启动文件。修改文件

sudo nano /etc/grub.d/40_custom

在文件中添加以下的信息

menuentry "FreeBSD"{
	insomd ufs2
	set root="(hdX,gptN)"
	chainloader /boot/boot1.efi
}

然后更新grub

sudo grub-mkconfig -o /boot/grub/grub.cfg

若是在ubuntu系统中,可以是

sudo update-grub2

这样在grub.cfg文件中会添加一项FreeBSD启动项文件。然后启动系统进行安装。

2.2 安装xorg服务以及nvidia显卡驱动程序

为了使得能够将超级管理员权限和用户级别权限区别开来,所以这里安装sudo。首先使用root登录系统,然后安装以下的文件

pkg install sudo nano

编辑sudoers文件

visudo

找到root ALL=(ALL) ALL一行之后,添加以下一行信息

myhostname ALL=(ALL) ALL

其中myhostname是自己的用户名。wq保存文件之后,退出登录,并使用自己的用户登录系统,也可以使用sshd远程登录系统。
安装nvidia显卡驱动
安装nvidia显卡驱动只需要以下的安装命令即可

sudo pkg install nvidia-driver

这样就可以将nvidia显卡驱动安装到系统中,安装nvidia显卡驱动程序需要开启linux支持,修改文件

sudo nano /etc/rc.conf

并添加以下的一行的信息

linux_enable="YES"

此处可以通过重启电脑进一步加载linux支持,当然也可以通过以下的命来加载linux支持

sudo kldload linux64

可以通过以下的命令查看加载的情况

sudo kldstat

在启动桌面环境的时候,需要开机自动装载nvidia显卡驱动程序,需要修改以下的文件

sudo nano /boot/loader.conf

添加下面的一行代码

nvidia_load="YES"

并编辑

sudo nano /etc/rc.conf

添加以下的信息

kld_list="/boot/modules/nvidia.ko /boot/modules/nvidia-modeset.ko"

这一步主要是指明加载的nvidia显卡驱动库的信息,这样就可以启动xorg服务程序。通过以下的命令可以显示是否安装成功nvidia显卡驱动以及nvidia显卡驱动的当前状态信息:

nvidia-smi

安装xorg服务
xorg是桌面环境中最底层的服务程序,安装xorg通过以下的命令即可以进行安装

sudo pkg install xorg xorg-server xorg-drivers

笔者安装xorg服务程序之后,并不能在/etc/X11文件夹中找到xorg.conf配置文件,所以在命令行下生成对应的xorg配置文件

sudo Xorg -configure :1
sudo mv /root/xorg.conf.new /etc/X11/xorg.conf

生成的文件一般情况下可以不再进行配置,当然可以再进一步进行文件的配置。重启电脑之后,我们可以测试xorg服务是否可以使用

startx

如果可以显示X服务的窗口,那么就可以加载xorg服务。当然可以使用lspci显示当前的设备信息,系统中并没有安装lspci,所以安装以下的文件可以进行显示

sudo pkg install pciutils

出现的问题
笔者在之前安装的过程中,当启动X服务的时候出现了no screens found,最后发现是并没有找到nvidia显卡驱动程序,并且使用nvidia-smi之后也提示出显卡并不能连接,所以在/etc/rc.conf文件中添加了kld_list选项,使得可以启动nvidia驱动程序。

2.3 安装sddm管理器以及KDE-plasma5桌面环境

安装KDE-plasma5桌面环境
KDE-plasma5桌面环境是一个非常棒的桌面环境,非常接近用户,笔者这里安装了这一个安装环境。在FreeBSD系统中,有一个非常好的配置工具,即bsdconfig。所以安装KDE桌面环境之前,这里在bsdconfig中找到了安装包进行安装:

sudo pkg install plasma5-plasma-desktop sddm

由于是笔记本,这里安装了触摸板驱动程序

sudo pkg install xf86-input-synaptics

这里需要修改xorg.conf文件,参考以下的内容

Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Mouse1" "SendCoreEvents"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
#触摸板
Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option      "Device" "/dev/sysmouse"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection
#USB鼠标
Section "InputDevice"
        Identifier  "Mouse1"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option      "Device" "/dev/psm0"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

安装过程进行了比较长的时间。安装完成之后,可以进一步进行桌面环境的配置工作。
由于KDE桌面依赖于procfs,因而向fstab中写入procfs的挂载项。编辑文件

sudo nano /etc/fstab

并添加以下的内容

proc	/proc	procfs	rw	0	0

同样,为了使得KDE支持在普通用户下实现关机、重启功能,需要启动dbus和hald。可以通过bsdconfig这个命令实现启动,也可以手动进行添加。编辑文件

sudo nano /etc/rc.conf

并添加以下的内容

dbus_enable="YES"
hald_enable="YES"
cuse_enable="YES"
webcamd_enable="YES"

重启webcamd服务

sudo service devd restart

然后并将webcamd添加到用户中

sudo pw groupmod webcamd -m <username>

修改~/.xinitrc文件

nano ~/.xinitrc

并添加以下的内容,这里KDE-session是基于Xorg服务之上启动的

exec ck-launch-session startplasma-x11

安装sddm启动管理器
sddm是用户登录管理器,可以用以下的命令安装sddm启动管理器

sudo pkg install sddm

如果希望系统启动之后自动进入图形的用户登录界面,安装完成sddm之后,需要将sddm加入到开机启动项中,可以编辑文件

sudo nano /etc/rc.conf

并添加以下的内容

sddm_enable="YES"

然后重启系统之后即可以进入到桌面环境中。

3.后续过程

3.1 安装Konsole终端、Dolphin文件管理器

桌面环境安装完成之后,只有一个xterm终端管理器,并不是非常好看和适用,而且并没有文件管理器,包括firefox浏览器等等。所以这里直接可以安装

sudo pkg install Konsole Dolphin firefox

这样就安装成功了。

3.2 安装C/C++以及python运行环境

FreeBSD安装之后并没有gcc编译器、python等环境可以使用以下命令进行安装

sudo pkg install gcc python3.7

或者是直接到anaconda官网上下载安装conda的集成python环境也可以。

3.3 安装中文输入法

如果要在KDE中实现中文输入的功能,则需要安装中文输入法框架和中文输入法,键入并执行以下的命令

sudo pkg install zh-fcitx zh-fcitx-configtool fcitx-qt5 fcitx-m17n zh-fcitx-libpinyin

然后修改配置文件,由于笔者使用的tcsh,所以创建以下的文件

sudo nano ~/.cshrc

并且添加以下的内容

setenv GTK_IM_MODULE fcitx
setenv GTK3_IM_MODULE fcitx
setenv XMODIFIERS @im=fcitx

若要使中文输入法随KDE桌面环境一起启动,则可以将其执行文件的链接放入到KDE的自动目录中,在使用KDE桌面用户文件夹下执行以下的命令即可。

cp /usr/local/share/applications/fcitx.desktop ~/.config/autostart/

若在终端无法显示中文,那么再在文件中添加以下的内容即可

setenv LANG zh_CN.UTF-8
setenv MM_CHARSET zh_CN.UTF-8

保存退出之后,运行fcitx-configtool弹出输入法配置对话框,然后进行输入法的配置即可。

参考

·[1] FreeBSD 12.0安装KDE5桌面环境

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/Zhang_Pro/article/details/108409175

FreeBSD之防火墙配置-爱代码爱编程

目录 简介  使能 IPFW 编辑防火墙脚本文件,增加防火墙规则集 管理防火墙服务 参考 简介  在FreeBSD里面, 有三个防火墙组件可以选择:PF、IPF、IPFW。今天我们介绍的是IPFW。 IPFILTER,也称为 IPF,是一种跨平台的开放源代码防火墙,已移植到多个操作系统,包括FreeBSD,NetBSD,OpenBS

FreeBSD之网络配置-爱代码爱编程

## IP地址 默认网络 主机名 是否启动sshd # vi /etc/rc.conf hostname="FreeBSD-121.1" ifconfig_vmx0="inet 192.168.121.10 netmask 255.255.254.0" defaultrouter="192.168.120.1" sshd_enabl

Freebsd 8.4 Vmware 安装及软件配置-爱代码爱编程

本文主要记录在编译Citrix ADC php xdebug.so 的时候爬的一些坑,包括一下几个内容: Freebsd 8.4 Vmware安装Freebsd 软件安装编译php xdebug0x01 Freebsd 8.4 Vmware安装 参照https://gist.github.com/woahdae/3fa2c97eb2f9af23c190

FreeBSD安装软件-爱代码爱编程

FreeBSD安装软件 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 FreeBSD安装软件1.基本设置1.1普通用户su到root用户2.安装包管理器pkg2.1 更换pkg包管理器的源2.2 安装指定软件 环境: FreeBSD-12.1-RELEASE

FreeBSD12 安装dwm + st-爱代码爱编程

文章目录 安装前提安装 X Windows安装dwm将dwm用startx启动安装st 安装前提 默认你已经安装好了FreeBSD系统并可以正常运行同时使用非root用户登录系统,即你拥有一个非root用户 安装 X Windows $ sudo pkg install xorg 一般情况下 FreeBSD 是没有 sudo 命

Linux调试内存泄漏的工具——AddressSanitizer(ASan)-爱代码爱编程

以前,我们调试内存泄漏,可能会使用下面的一种或几种工具: valgrind mtrace dmalloc ccmalloc memwatch debug_new 上面的工具,我也曾经使用过,这次介绍一个新的工具——AddressSanitizer(ASan)。该工具为gcc自带,4.8以上版本都可以使用,支持Linux、OS X、ios、fr

Deepin V20 Beta + CUDA10.1+CUDNN7.6.5+PyTorch1.6.0 搭建-爱代码爱编程

Deepin V20 Beta + CUDA10.1+CUDNN7.6.5+PyTorch1.6.0 坑的介绍精要步骤1、关掉secure boot2、下载显卡闭驱动,禁用nouveau开源驱动3、开始NVIDIA安装过程。4、显卡驱动安装选项5、确认显卡驱动是否安装上。6、配置显卡7、安装CUDA10.18、安装CUDNN 7.6.5,实际7.6

英伟达发布 RTX30 系列 ,纪念的是 21 年前的哪张神卡?-爱代码爱编程

By 超神经 内容概要:英伟达在今天凌晨发布了 RTX 30 系列新品,在此之前的宣传内容中多次提及 21 年前的重大发布,本文将回顾 21 年前的 1999 年前后,NVIDIA 所经历的重要时刻。 关键词:英伟达 GPU 商业分析 美西时间 9 月 1 日清晨,NVIDIA CEO 黄仁勋继续在厨房进行新品发布。本次重磅发布的三款 RTX

说说N卡掉驱动 / 黑屏风扇狂转的事-爱代码爱编程

说点跟代码没啥关系的事 买了块2070回来DIY一个ITX,一个月光折腾系统驱动了根本就用不上。表现是一旦3D graphics占用100就会掉驱动(显示器驱动程序 nvlddmkm 已停止响应,并且已成功恢复。 Event 4101),我就打个CSGO啊……你2070跑到100占用是不是过分暂且不提,摸100就掉驱动那属实不太正常。 DEBUG:

为什么我要从 Windows 切换到 Linux?-爱代码爱编程

来源:JavaGuide「ID: JavaGuide」 喔,看到这个标题千万不要以为我要写和王垠前辈一样的内容啊,嘿嘿。不过在这里还是献上王垠前辈的那篇文章的链接吧:完全用 Linux 工作[1]。 为什么要写这篇文章? 首先介绍本篇文章产出的时间,文章写 2020/08/22。在三,四天之前,我其实并没有写这篇文章的打算,但是这三,四天以

kali安装NVIDIA驱动-爱代码爱编程

kali安装NVIDIA驱动 参考资料kali linux安装NVIDIA驱动kali 安装nvidia驱动在kali下更新内核头文件与安装nvdia显卡驱动详细步骤1.确认是否有N卡 lspci | grep -E "VGA|3D" 2.禁用 nouveau #nouveau是一个开源显卡驱动,但他只调用集成显卡。所以我们首先要禁用它!

CentOS 7 安装配置备忘录-爱代码爱编程

  因为声音有问题,删除了声音组件,导致gnome挂了,不能进入桌面 一怒之下,重新安装系统。 USB制作CentOS 7的系统盘   https://juejin.im/post/6844903928929189902 挂ntfs USB   yum install epel-release yum install ntfs-3g h