如果一台Riscv FreeBSD系统没有pkg怎么办?

FreeBSD使用pkg软件包管理系统,就像Ubuntu和Debian的apt软件包管理系统一样,非常简单方便。但是如果一台Riscv FreeBSD系统没有pkg怎么办?

本来是这是几乎不会碰到的问题,FreeBSD 装好后就有pkg,但是如果用的是官方的FreeBSD riscv 映像文件,如

复制代码
FreeBSD-14.1-RELEASE-riscv-riscv64.raw.xz

使用qemu启动这个映像的虚拟机,会发现没有pkg软件。同时还会发现没有curl和wget ,当然也不会有git ....

新版本连portsnap也没有了,所以想直接下载ports再编译安装也不可能了。

bsdconfig竟然也没法装,因为它需要pkg(没有找到riscv版本的pkg的包)

这时候应该怎么做呢?

这时候只能想办法手工下载ports系统了,git和portsnap都不能用,那么就只有两种方法了:

1 使用ftp

ftp ftp.freebsd.org ,然后到放置ports.txz的目录去下载

复制代码
ftp
ftp> open 
(to) ftp.freebsd.org
Trying 192.50.199.248:21 ...
Connected to ftp.geo.freebsd.org.
220 This is ftp0.kwc.freebsd.org - hosted at KDDI Web Communications Inc in Tokyo, Japan.
Name (ftp.freebsd.org:root): anonymous
331 Please specify the password.
Password: 
230-
230-This is ftp0.kwc.FreeBSD.org, graciously hosted by KDDI Web Communications Inc.
230-
230-FreeBSD files can be found in the /pub/FreeBSD directory.
230-
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /pub/FreeBSD/releases/riscv/riscv64/14.1-RELEASE
250 Directory successfully changed.
ftp> ls
229 Entering Extended Passive Mode (|||55848|)
150 Here comes the directory listing.
-rw-r--r--    1 ftp      ftp             9 May 31 13:13 BUILDDATE
-rw-r--r--    1 ftp      ftp            12 May 31 13:13 GITBRANCH
-rw-r--r--    1 ftp      ftp           783 May 31 10:15 MANIFEST
-rw-r--r--    1 ftp      ftp            13 May 31 13:13 REVISION
-rw-r--r--    1 ftp      ftp      228140756 May 31 10:15 base-dbg.txz
-rw-r--r--    1 ftp      ftp      171286268 May 31 10:15 base.txz
-rw-r--r--    1 ftp      ftp      59060488 May 31 10:15 kernel-dbg.txz
-rw-r--r--    1 ftp      ftp      26918004 May 31 10:15 kernel.txz
-rw-r--r--    1 ftp      ftp      51527060 May 31 10:15 ports.txz
-rw-r--r--    1 ftp      ftp      215062536 May 31 10:15 src.txz
-rw-r--r--    1 ftp      ftp      17009436 May 31 10:15 tests.txz
226 Directory send OK.

2 使用一台机器周转再scp拷贝过来

先下载到第三方机器,然后scp从第三方机器拷贝过来

事实上我就是这样做的。

把ports.txz文件解压到/usr/ports

然后进入/usr/ports/ports-mgmt/pkg 目录,执行make 安装:

复制代码
cd /usr/ports/ports-mgmt/pkg
make install 

好了,这样就把pkg安装好了,后面就可以用pkg来安装想要的软件了。

当然如果该软件没有riscv编译版本,那么还是只能用ports编译安装了。

相关推荐
XiaoMaqqqq2 小时前
市面上正规的IP驱动产业新场景新工具哪家强
运维·python·网络协议·tcp/ip
huainingning3 小时前
RJ SW Console口忘记密码处理方法
linux·运维·服务器
布裘3 小时前
【银河麒麟】桌面系统循环登录,无法进入桌面?
linux·运维·服务器
慧都小项3 小时前
程序到了Linux才出错?用CLion把调试接到目标环境
linux·运维·服务器
Lsetea4 小时前
OpenSSL verify报unhandled critical extension:error 34与关键扩展排查
运维·https·ssl证书·openssl·证书链
guo_wen_qiang4 小时前
docker的备份与迁移
运维·docker·容器
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(一):物理内存初始化 — memblock 怎么把内存交给 buddy
linux·运维·服务器
2401_868534785 小时前
无线网络规划设计
服务器·网络
库拉镜像AI牛牛6 小时前
短剧内容自动化生产:知漫剧工作室落地教程
大数据·服务器·前端·人工智能·语音识别
Android系统攻城狮6 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_max调用流程与实战(五十九)
linux·运维·服务器·gstreamer音视频·音视频进阶·gstreamer音视频进阶