标签 FreeBSD 下的文章

pkg install apache24 - 在FreeBSD上安装 apache web

在FreeBSD里安装apache web挺简单的。

  • 安装命令:pkg install apache24
  • 启动apache命令:/usr/local/sbin/httpd -k start
  • 更改配置文件后,重载apache命令:/usr/local/sbin/httpd - graceful
  • 停止apache命令:/usr/local/sbin/httpd -k stop

apache的配置文件默认为:/usr/local/etc/apache24/httpd.conf。如需启用用户主目录下的public_html作为网页访问网址,除了要移除注释/etc/apache24/extral/httpd-userdir.conf外,还需要启用 LoadModule userdir_module libexec/apache24/mod_userdir.so 这一行。

参考:

视频:https://www.bilibili.com/video/BV1M44y1B7dK/

Failed to write core file (error 14) - freebsd - libcrypto.so.7

现象:freebsd系统不能ssh,提示 failed to write core file for process sshd error 14。

尝试:手动尝试启动sshd,也是错误。运行如pkg,tar的命令,也是一样的错误提示。询问得知,出现问题前,曾尝试解压、安装一个软件。查看该软件的内容,有lib目录,估计错误将软件的lib文件覆盖了freebsd的系统关键文件了。再查看freebsd的/lib目录中,libcrypto.so.7的文件日期较新。最后在freebsd官方下载相应系统版本的base.txz文件,解压后将libcrypto.so.7放回到freebsd的lib目录中,sshd就能正常启动了。

参考:https://forums.freebsd.org/threads/shared-object-libcrypto-so-7-not-found.50488/

为 FreeBSD 12.1 安装 xfce 桌面 - 简体中文显示

想起约二十年前,在电脑80GB的硬盘上划分区,用光盘安装FreeBSD系统的事情来,觉得挺有趣的。之后,电脑主要是用Windows系统,从Windows XP到Windows 10,没再用过FreeBSD系统了。我觉得在安装FreeBSD系统的过程中,能查、学到一些东西,能让你知道“这是一个什么问题”,和“应该怎么去尝试处理问题”,这是很有味道的。

前几天,我把一张电脑台抹净,放上电脑主机(H81芯片主板、G1840处理器、8GB内存和120GB SSD)和显示器,打算重温一下FreeBSD系统的安装过程。

老规矩,我先看FreeBSD的使用手册。现在的电脑主机基本不配光驱了,但FreeBSD提供了U盘的安装文件。我先从网易的FreeBSD镜像站下载了约1GB大小的安装文件,在Windows里用rufus软件将文件写到一个空的U盘里。之后,我将U盘插到电脑主机上,从U盘引导启动,安装好FreeBSD的系统。

如果不考虑分区,用单独的硬盘来安装FreeBSD系统是挺容易的,一路上上使用默认值来装就可以。对于我这个新手来说,难的是如何配置中文的桌面环境。安装好系统,如果不能看和写汉字,那是挺难受的,好像不允许我一整天不能说一句话般。这里大概记录一下安装软件的命令和配置文件内容,仅供参考。

相对于二十年前,现在通过pkg命令安装软件要方便、省事得多。估计国内有镜像了,下载文件的速度不慢;且如xorg配置,会自动化了,不必如以前那样要手动生成配置文件,不必手工调整文件中的参数了。

  1. pkg install xorg # 安装X.org
  2. pkg install xfce # 安装xfce桌面
  3. pkg install wqy-fonts # 安装文泉驿字体
  4. xset fp+ /usr/local/share/fonts/wqy # 为X环境添加文泉驿字体
  5. xset fp rehash # 刷新字体库
  6. pkg install zh-fcitx # 安装fcitx中文输入法
  7. pkg install drm-kmod # 安装基本显卡驱动(我这主机用的是G1840的集成显示处理)
  8. pkg install firefox # 安装火狐浏览器

我这里是新建了liujia的用户,且加入到wheel组中。

~/.login_conf (主要是在桌面中能较好阅读汉字)

me:\
        :charset=utf-8:\
        :lang=zh_CN.UTF-8:\
        :LC_ALL=zh_CN.UTF-8:\
        :LC_COLLATE=zh_CN.UTF-8:\
        :LC_CTYPE=zh_CN.UTF-8:\
        :LC_MESSAGES=zh_CN.UTF-8:\
        :LC_MONETARY=zh_CN.UTF-8:\
        :LC_NUMERIC=zh_CN.UTF-8:\
        :LC_TIME=zh_CN.UTF-8:

~/.xinitrc

export XMODIFIERS='@im=fcitx'
. /usr/local/etc/xdg/xfce4/xinitrc

/etc/rc.conf

dbus_enable="YES" # xfce 桌面相关
snd_hda="YES" # 声卡
kld_list="/boot/modules/i915kms.ko" # 显卡驱动

如需进入桌面时自动运行fcitx输入法,请复制 /usr/local/share/applications/fcitx.desktop 到 ~/.configg/autostart/ (如果没有autostart目录,可先创建)

参考:

FreeBSD 11 里设置NFS,简单文件共享

过程:

1.vi /etc/rc.conf # 更改服务配置内容,添加以下:
rpcbind_enable="YES"
nfs_server_enable="YES"
mountd_flags="-r"

2.mkdir -p /exports/obj # 创建导出目录

3.vi /etc/exports # 创建或修改导出配置文件,简单举例内容(只读):
/exports/obj -ro

4.service nfsd start # 启动nfs服务

5.如客户端是Windows 10,请先添加“NFS服务”组件
freebsd-nfs-windows-1.png

6.showmount -e szt.anqun.org # 在Windows命令提示符里,列出NFS服务端的导出目录

7.mount szt.anqun.org:/exports/obj N: # 在Windows命令提示符里,将NFS服务端的/exports/obj映射到本地的N:盘
freebsd-nfs-windows-2.png

8.在Windows“计算机”资源管理器访问N:
freebsd-nfs-windows-3.png

参考:

在 FreeBSD 11.2 里安装 Magento2.3

环境:FreeBSD 11.1-RELEASE

过程:

1.pkg install apache24 # 安装 apache2.4
2.pkg install mysql57-server # 安装 mysql server 5.7
3.pkg install php72 php72-curl php72-gd php72-mbstring php72-mysqli php72-openssl php72-pdo_mysql php72-xml php72-dom php72-json php72-xsl php72-ctype php72-intl php72-hash php72-soap php72-filter php72-phar php72-zip php72-iconv php72-bcmath php72-simplexml php72-xmlwriter php72-tokenizer php72-opcache xmlreader php72-xmlreader php72-session php72-wddx php72-sockets php72-readline php72-pcntl php72-gettext php72-exif php72-fileinfo php72-zlib php72-calendar php72-ftp # 安装 php7.2 和相关扩展
4./usr/local/etc/apache24/httpd.conf # 编辑 httpd 的配置文件,本例,启用了好些模块 rewrite_module, mpm_event_module, http2_module, ssl_module, mod_proxy_fcgi, mod_proxy,引用了 httpd-vhosts.conf 文件,禁用了 mpm_worker_module 模块
5./usr/local/etc/apache24/extra/httpd-vhosts.conf # 编辑虚拟主机配置文件,如下例,是添加了https站点 szt.anqun.org的配置内容

Listen 443
<VirtualHost *:443>
        Protocols h2 http/1.1
        ServerName szt.anqun.org

        SSLEngine on
        SSLCertificateFile "/root/.acme.sh/szt.anqun.org/fullchain.cer"
        SSLCertificateKeyFile "/root/.acme.sh/szt.anqun.org/szt.anqun.org.key"

        DocumentRoot "/usr/local/www/szt_anqun_org/public_html"
        ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/usr/local/www/szt_anqun_org/public_html/$1
        ErrorLog "/usr/local/www/szt_anqun_org/logs/error.log"

    <Directory "/usr/local/www/szt_anqun_org/public_html">
        AllowOverride All
        DirectoryIndex /index.php index.php index.html
        Require all granted
        Allow from all
    </Directory>

</VirtualHost>

6.sysrc apache24_enable=yes # 允许 apache24 服务
7.sysrc mysql_enable=yes # 允许 mysql-server 服务
8.sysrc php_fpm_enable=yes # 允许 php-fpm 服务
9.service apache24 start # 启动 apache24 服务
10.service mysql-server start # 启动 mysql-server 服务
11.service php-fpm start # 启动 php-fpm 服务
freebsd-magento2-3.png
12.ALTER USER 'root'@'localhost' IDENTIFIED BY 'niDEpASSWORD' ; # 首次启动mysql5.7后,root的密码会写在/root/.mysql_secret 文件里,需要用 ALTER USER 命令更改密码后使用
13.下载不带演示数据的magento2安装文件,解压到 /usr/local/www/szt_anqun_org/public_html,且将目录权限设置为www用户所有
14.切换到magento的目录,执行以下命令安装:

sudo -u www php bin/magento setup:install --base-url=https://szt.anqun.org/ \
--db-host=localhost --db-name=mage --db-user=mage --db-password=wpmima888 \
--admin-firstname=Magento --admin-lastname=User --admin-email=liujia@anqun.org \
--admin-user=admin --admin-password=admin123 --language=en_US \
--currency=USD --timezone=America/Chicago --use-rewrites=1

freebsd-magento2-1.png
15.在浏览器访问前台和后台,正常
freebsd-magento2-2.png

参考:https://devdocs.magento.com/guides/v2.3/install-gde/install/cli/install-cli-subcommands.html