FreeBSD下安装Linux兼容系统Ubuntu

FreeBSD有个很神奇的功能,就是跟Linux二进制兼容,也就是可以直接运行linux的bin文件。还有个更神奇的功能,就是能运行出一套Linux系统,完全是linux的用户,linux的目录系统,而且还可以选是Centos系统还是Ubuntu系统以及它们自己独特的软件包管理系统。

现在开始我们的神奇之旅吧!

配置和启动Linux兼容

复制代码
sysrc linux_enable="YES"
service linux start

安装Debian/Ubuntu基本系统

复制代码
pkg install debootstrap
debootstrap focal /compat/ubuntu 

focal对应20.04版本,如果我们希望安装更新的版本,可以选择22.04 Jammy版本(临时版本23.04 Lunar或者23.10 Manti还不支持)

debootstrap jammy /compat/jammy

安装完那后,修改/etc/fstab

复制代码
# Device        Mountpoint              FStype          Options                      Dump    Pass#
devfs           /compat/jammy/dev      devfs           rw,late                      0       0
tmpfs           /compat/jammy/dev/shm  tmpfs           rw,late,size=1g,mode=1777    0       0
fdescfs         /compat/jammy/dev/fd   fdescfs         rw,late,linrdlnk             0       0
linprocfs       /compat/jammy/proc     linprocfs       rw,late                      0       0
linsysfs        /compat/jammy/sys      linsysfs        rw,late                      0       0
/tmp            /compat/jammy/tmp      nullfs          rw,late                      0       0
/home           /compat/jammy/home     nullfs          rw,late                      0       0

进入Linux用户模式

复制代码
chroot /compat/jammy /bin/bash

使用uname看一下,果然是Linux拉! 而且ubuntu的apt命令它也支持,真是太好用了!

调试

在ubuntu下su 进入普通用户报Permission denied

su - linuxskywalk

-su: /etc/profile: Permission denied

查看/etc/profile的权限发现是:-rw-------+ 修改成644问题解决:

chmod 644 /etc/profile

ubuntu下sudo ls 报错unable to resolve host fb14

sudo ls

sudo: unable to resolve host fb14

经查,是网络那边还没搞定

在linux兼容环境中,修改/etc/hosts文件,加入127.0.0.1 fb14即可。

相关推荐
一技安身31 分钟前
【信创】docker-26.0.2.tgz 原理 + 完整安装
linux·运维·服务器
程曦曦1 小时前
MySQL 生产库误删 98 张表后的时间点恢复实战:从 binlog 解析到资金对账
linux·数据结构·其他·算法·ubuntu·运维开发
Dachui_11221 小时前
内网穿透 Webhook 告警实战:客户端离线、应用探测、资源删除全覆盖
运维·远程工作·内网穿透·devops·webhook·服务器监控·应用探测
数据智研1 小时前
【数据分享】300个城市-5G试点城市DID数据(2014-2025)
大数据·运维·人工智能·信息可视化·数据分析
honsor1 小时前
工业级网口温湿度变送器 ModbusTCP 机房动环环境监测终端
运维·网络·人工智能·物联网·安全·云计算·智能温湿度监测系统
赵民勇1 小时前
systemd-mount命令详解
linux
fengkai45451 小时前
八、Docker详解1-3
运维·docker·容器
H_oRIZoN_2 小时前
Linux入门DAY42【51 单片机】DS18B20 数字温度传感器完整解析(单总线原理 + 时序 + 读取流程)
linux·单片机·linux应用编程
j7~2 小时前
【Linux网络加餐】(篇六)网络版计算器(上):模板方法模式、序列化与 JSON
linux·c++·json·序列化·反序列化·网络版计算机
流浪0012 小时前
Linux系统篇34——信号(六):信号处理期间又来了怎么办?——sigaction、sa_mask、可重入函数与 volatile
linux·运维·面试·操作系统·信号处理·信号