首页 > 其他分享 >使用pkg -r 命令选项向jail虚拟子系统里安装软件@FreeBSD

使用pkg -r 命令选项向jail虚拟子系统里安装软件@FreeBSD

时间:2024-06-18 21:56:47浏览次数:11  
标签:ubu jails 100% jail pkg FreeBSD curl 子系统

刷FreeBSD 论坛的时候,看到这样一招:使用pkg -r选项,往jail等虚拟机子系统里安装软件。jails - How to install a pkg offline into a jail? | The FreeBSD Forums

root@fbhost:~ # pkg
pkg: not enough arguments
Usage: pkg [-v] [-d] [-l] [-N] [-j <jail name or id>|-c <chroot path>|-r <rootdir>] [-C <configuration file>] [-R <repo config dir>] [-o var=value] [-4|-6] <command> [<args>]

For more information on available commands and options see 'pkg help'.

-r选项后面跟<rootdir> ,也就是是虚拟子系统的根目录,比如对下面的ubu这个虚拟子系统,根目录是是/usr/jails/jails/ubu

先列表看看运行的jail虚拟机子系统

root@fbhost:~ # jls
   JID  IP Address      Hostname                      Path
    18  10.0.0.2        fb12.my.domain                /usr/jails/jails/fb12
    21  10.0.0.3        ubu.my.domain                 /usr/jails/jails/ubu

看看ubu子系统里面有没有curl

root@fbhost:~ # jexec ubu curl csdn.net
jexec: execvp: curl: No such file or directory

看来是没有 ,本地是有的

root@fbhost:~ # curl
curl: try 'curl --help' or 'curl --manual' for more information

在jail子系统里安装curl

root@fbhost:~ # pkg -r /usr/jails/jails/ubu install curl 
Updating FreeBSD repository catalogue...
pkg: No SRV record found for the repo 'FreeBSD'
Fetching meta.conf:   0%
FreeBSD repository is up to date.
All repositories are up to date.
The following 4 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
	curl: 8.7.1
	libnghttp2: 1.61.0
	libpsl: 0.21.5
	libssh2: 1.11.0_1,3

Number of packages to be installed: 4

The process will require 6 MiB more space.
2 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/4] Fetching libnghttp2-1.61.0.pkg: 100%  144 KiB 147.0kB/s    00:01    
[2/4] Fetching libssh2-1.11.0_1,3.pkg: 100%  281 KiB 287.9kB/s    00:01    
[3/4] Fetching libpsl-0.21.5.pkg: 100%   64 KiB  65.6kB/s    00:01    
[4/4] Fetching curl-8.7.1.pkg: 100%    1 MiB   1.6MB/s    00:01    
Checking integrity... done (0 conflicting)
[1/4] Installing libnghttp2-1.61.0...
[1/4] Extracting libnghttp2-1.61.0: 100%
[2/4] Installing libssh2-1.11.0_1,3...
[2/4] Extracting libssh2-1.11.0_1,3: 100%
[3/4] Installing libpsl-0.21.5...
[3/4] Extracting libpsl-0.21.5: 100%
[4/4] Installing curl-8.7.1...
[4/4] Extracting curl-8.7.1: 100%

现在再来看看jail里面是否装好了

root@fbhost:~ # jexec ubu curl csdn.net
<html>
<head><title>301 Moved Permanently</title></head>
<body>
<center><h1>301 Moved Permanently</h1></center>
<hr><center>openresty</center>
</body>
</html>

果然,ubu这个虚拟子系统里的curl已经装好了,pkg -r真的非常方便。因为Jail虚拟容器和PKG软件包管理系统都是FreeBSD的原生应用,所以它们之间配合非常默契,不用到jail子系统里,直接在host主机也能使用pkg向jail子系统安装各种软件。

标签:ubu,jails,100%,jail,pkg,FreeBSD,curl,子系统
From: https://blog.csdn.net/skywalk8163/article/details/139759427

相关文章

  • Net上传Nuget包以及把多个.nupkg文件打包成一个文件
    1、打包Nuget包第一种方式:●使用NuGetCLI工具将整个项目打包为NuGet包●打开命令行终端●导航到包含项目文件的项目目录例如:cdC:\MyProject●使用以下命令将项目打包为NuGet包:例如:nugetpack[项目文件路径]请将[项目文件路径]替换为实际的项目文件路径。例如,如果你的项......
  • 编译安装qemu-devel @FreeBSD
    缘起使用cbsd创建riscvjail的时候提示:youhavenoqemu-user,pleaseinstallqemu-devlewithBSD_USERandSTATICops(emulators/qemu-devel)使用pkg安装之后,创建的riscvjail启动报错:Startingjail:fbriscv,paralleltimeout=5chroot:/bin/sh:Execformaterr......
  • 虚拟化 之一 详解 jailhouse 架构及原理、软硬件要求、源码文件、基本组件
      Jailhouse是一个基于Linux实现的针对创建工业级应用程序的小型Hypervisor,是由西门子公司的JanKiszka于2013年开发的,并得到了官方Linux内核的支持,在开源社区中获得了知名度和吸引力。Jailhouse  Jailhouse是一种轻量级的虚拟化技术,可以将多个操作系统(或......
  • 使用vcpkg编译的glog报错:error C1189: #error: <glog/logging.h> was not included corr
    errorC1189:#error:<glog/logging.h>wasnotincludedcorrectly.使用vcpkg编译的glog,包含logging.h后编译下面的代码:#include<glog/logging.h>#include<iostream>intmain(){printf("Test\n");return0;}报错:errorC1189:#error:<......
  • 使用AppJail配置网络并创建tiny jail(未成功)
    创建tinyjail成功了,但是网络配置这块,jail里只能ping通外面,而无法pkg更新软件。本文章是这篇文章Jail管理器AppJail的使用@FreeBSD-CSDN博客的网络篇。首先host主机配置pf防火墙参考这里:PacketFilter-AppJailHandbook 在/etc/rc.conf文件中添加pf_enable="YES"pflog_......
  • Jail管理器AppJail的使用@FreeBSD
    Jail的简介Jail是FreeBSD操作系统中一个功能强大的安全机制,自FreeBSD4.X版本起便投入使用,并且随着系统的发展,其功能、效率、稳定性和安全性得到了持续的强化。Jail基于chroot的概念,通过更改一系列程序的根目录,为程序提供了一个隔离的安全环境,将其与系统的其他部分完全分隔......
  • apt 和 dpkg 的区别
    Debian系Linux发行版中使用deb格式的软件安装包,这些软件都安装包通过dpkg进行安装,而apt是一个基于dpkg的软件管理器,它提供了在线安装和自动管理软件依赖的功能。安装软件使用dpkg安装本地软件包dpkg-i<deb软件包文件>使用apt安装在线软件及依赖aptinstal......
  • 我创建了一个文件夹/软件包,其中有两个子软件包(第一个=subpkg1,第二个=subpkg2),在subpkg1
    我正在使用VS代码学习Java。我创建了一个文件夹/包(name=pkg)然后,我在该包中创建了两个包(第一个=subpkg1,第二个=subpkg2)但我在subpkg1中创建了一个文件(test1)并从subpkg2中导入文件(name=food)然后编译并运行。我一直收到pkg.subpkg2doesn'texist的错误信息(见......
  • vcpkg在vs2022下integrate install之后仍找不到第三方库的解决方案
    首先是vcpkg的安装,许多其他帖子都有,从github上拉取下来之后运行bootstrap-vcpkg.bat即可。不再赘述。接下来是使用部分,假设需要安装pcl库。在vs2022的开发者powershell中输入vcpkginstallpcl此时下载完成,成功拉取了pcl包。接下来按照教程所说为在vs2022的开发者powershell......
  • 安装和使用delphi最后的余辉:lazarus集成编译环境@FreeBSD
    遥想当年,最牛最流行的两个编程IDE是Delphi和VisualBasic,结果这么多年下来,VB已经没有往昔的热度,而Delphi也已经消亡在历史的长河中。不过Delphi的精神没消失,lazarus坚守delphi的编程风格,散发delphi最后的余辉。Lazarus介绍Lazarus是一个基于FreePascal的跨平台集成开发环境(I......