jail內部ubuntu apt升級失敗問題解決

在FreeBSD jail 里安裝啟動Ubuntu jammy系統,每次裝好執行jexec ubjammy sh進入Ubuntu系統后,執行apt update報錯。?這個問題困惑了好久,突然有一天仔細去看報錯信息,查看了(man 5 apt.conf) ,才搞定問題。簡單來說就是把apt的配置里APT::Cache-Start調大就行,但是一開始由于不明白原理,所以走了彎路。

最簡單的操作就是這篇文檔里的方法:https://blog.csdn.net/skywalk8163/article/details/140383232

?這里把處理步驟、彎路,更詳細的記錄下來:

問題:apt update升級報錯

?apt full-upgrade
E: Dynamic MMap ran out of room. Please increase the size of APT::Cache-Start. Current value: 25165824. (man 5 apt.conf)
Reading package lists... Error!
E: Dynamic MMap ran out of room. Please increase the size of APT::Cache-Start. Current value: 25165824. (man 5 apt.conf)
E: Error occurred while processing libsurgescript0.5.4.4 (NewVersion1)
E: Problem with MergeList /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_jammy_universe_binary-amd64_Packages
E: The package lists or status file could not be parsed or opened.

文心一言的回答
?

錯誤信息表明你的APT緩存空間不足,并且出現了與libsurgescript0.5.4.4軟件包相關的合并列表(MergeList)問題。以下是一些建議的步驟來解決這個問題:

  1. 增加APT緩存大小
    打開你的/etc/apt/apt.conf/etc/apt/apt.conf.d/50user(或其他以.conf結尾的文件在/etc/apt/apt.conf.d/目錄下),然后增加或修改APT::Cache-Limit的值。不過,錯誤中提到的是APT::Cache-Start,但通常我們修改的是APT::Cache-Limit。以下是一個例子,將緩存大小增加到500MB(512 * 1024 * 1024 字節):

    echo 'APT::Cache-Limit "524288000";' | sudo tee -a /etc/apt/apt.conf.d/99cachelimit

    注意:如果你已經有一個APT::Cache-Limit的設置,請確保新值大于當前值。

  2. 修復損壞的列表
    由于提到了MergeList問題,你可能需要清理并重新生成軟件包列表。可以使用以下命令:

    sudo apt clean 
    sudo rm -rf /var/lib/apt/lists/* 
    sudo apt update


    這些命令會清除現有的列表,并重新從軟件源下載。

  3. 檢查軟件源
    錯誤中還提到了archive.ubuntu.com_ubuntu_dists_jammy_universe_binary-amd64_Packages,這通常是Ubuntu的軟件源。確保你的/etc/apt/sources.list/etc/apt/sources.list.d/*中的軟件源是正確的,并且對于Jammy版本是有效的。

  4. 檢查第三方軟件包
    libsurgescript0.5.4.4可能是一個第三方軟件包,不屬于Ubuntu的官方倉庫。如果你從非官方源安裝了它,請確保該源是可靠的,并且該軟件包與你的Ubuntu版本兼容。

  5. 手動下載并安裝軟件包
    如果以上步驟都無法解決問題,并且你確定需要libsurgescript0.5.4.4軟件包,你可以嘗試從其官方網站或其他可信來源手動下載DEB包,并使用dpkg進行安裝。但請注意,這可能會帶來依賴問題,所以通常最好使用APT來管理軟件包。

  6. 查看系統日志
    使用journalctl或查看/var/log/syslog(或/var/log/apt/history.log)可能會提供更多關于錯誤的詳細信息。

  7. 重啟服務或系統
    有時簡單的重啟APT服務(通常是systemctl restart apt.service,但APT通常沒有單獨的服務)或整個系統可以解決一些臨時問題。但請注意,這通常不是解決根本問題的方法。

希望這些建議能幫助你解決問題!

?嘗試修復

先執行這個試試

echo 'APT::Cache-Limit "524288000";' | tee -a /etc/apt/apt.conf.d/99cachelimit

不行

APT::Cache-Start

echo 'APT::APT::Cache-Start "524288000";' | tee -a /etc/apt/apt.conf.d/99cachelimit

刪除?rm -rf /var/lib/apt/lists

不行

嘗試配置Cache-Limit和Cache-Grow

事實證明光修改Cache-Limit和Cache-Grow不行:

echo 'APT::Cache-Limit "0";' > /etc/apt/apt.conf.d/99cachelimitecho 'APT::Cache-Grow "16777216";' >>/etc/apt/apt.conf.d/99cachelimit

最終還是靠修改Cache-Start搞定:

echo 'APT::Cache-Start "67108864";' > /etc/apt/apt.conf.d/99cachelimit

注意如果使用重定向符號>> ,如果后面直接跟文件名字的話,空格也會成為名字的一部分。

總結

這個問題很久沒有解決,主要是沒有仔細看報錯信息,沒有弄明白報錯信息里的?Cache-Start 的設定方法。

因為是jail里的ubuntu,所以沒有vi ,文心一言給的命令也需要修改才能執行,導致走了彎路。

其實核心思想,就是在apt配置目錄里/etc/apt/apt.conf.d/,隨便寫一個文件,比如99cachelimit ,文件里加上APT::Cache-Start "67108864";這句話就行了。這樣就把Cache-Start值調為64M了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/44556.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/44556.shtml
英文地址,請注明出處:http://en.pswp.cn/web/44556.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL 數據庫(基礎)- 函數

MySQL 數據庫(基礎)- 函數 介紹 函數 是指一段可以被另一段程序調用的程序或代碼。也意味著,這一段程序或代碼在 MySQL 中已經給我們提供了,我們需要做的就是在合適的業務場景調用對應的函數,完成對應的業務需求即可…

python的簡單爬取

需要的第三方模塊 requests winr打開命令行輸入cmd 簡單爬取的基本格式(爬取百度logo為例) import requests url"http://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png" resprequests.get(url)#回應 #保存到本地 with open(&…

中國物流信息軟件系統(WMS等)行業概覽,2027年將達到235.1億元

導語 大家好,我是社長,老K。專注分享智能制造和智能倉儲物流等內容。 新書《智能物流系統構成與技術實踐》人俱樂部 完整版文件和更多學習資料,請球友到知識星球【智能倉儲物流技術研習社】自行下載 這份文件是《2023年中國物流信息軟件系統行…

【Python】下載與安裝

目錄 一、 下載安裝Python 1. 配置環境變量 2. 檢查是否配置成功 一、 下載安裝Python 在我上傳的資源可以免費下載!!! https://download.csdn.net/download/m0_67830223/89536665?spm1001.2014.3001.5501https://download.csdn.net/dow…

淺談后置處理器之JSON提取器

淺談后置處理器之JSON提取器 JMeter 的 JSON 提取器(JSON Extractor)是一個強大的后置處理器,它允許用戶從HTTP響應、數據庫查詢或其他類型的響應中提取JSON數據,并將這些數據存儲為變量,以便在后續的請求中重用。這對…

Mojo AI編程語言(三)數據結構:高效數據處理

目錄 1. Mojo AI編程語言簡介 2. 數據結構在數據處理中的重要性 3. Mojo AI中的基礎數據結構 3.1 數組 3.2 列表 3.3 字典 4. 高效數據結構的實現與優化 4.1 哈希表 4.2 樹結構 4.3 圖結構 5. 高效數據處理技術 5.1 并行處理 5.2 內存優化 5.3 數據壓縮 6. 實戰…

【Redis】哨兵(sentinel)

文章目錄 一、哨兵是什么?二、 哨兵sentinel文件參數三、 模仿主機redis宕機四、哨兵運行流程和選舉原理SDOWN主觀下線ODOWN客觀下線 五、 使用建議 以下是本篇文章正文內容 一、哨兵是什么? 哨兵巡查監控后臺master主機是否故障,如果故障了…

js項目生產環境中移除 console

1、terser-webpack-plugin webpack 構建的項目中安裝使用 安裝: npm install terser-webpack-plugin --save-dev 配置 在webpack.config.js文件中 new TerserPlugin({terserOptions: {output: {comments: false, // 去除注釋},warnings: false, // 去除黃色警告,co…

nx上darknet的使用-目標檢測-自定義訓練與制作預訓練模型

目錄 1 訓練yolov4-tiny 1.1 文件準備 1.1.1 Annotations 1.1.2 JPEGImages 1.1.3 labels 1.1.4 trained_models 1.1.5 classes.name 1.1.6 create_labels_txt.py 1.1.7 custom_training.data 1.1.8 get_labels.py 1.1.9 get_train_val.py 1.1.10 train…

python制作甘特圖的基本知識(附Demo)

目錄 前言1. matplotlib2. plotly 前言 甘特圖是一種常見的項目管理工具,用于表示項目任務的時間進度 直觀地看到項目的各個任務在時間上的分布和進度 常用的繪制甘特圖的工具是 matplotlib 和 plotly 主要以Demo的形式展示 1. matplotlib 功能強大的繪圖庫&a…

內網對抗-基石框架篇單域架構域內應用控制成員組成用戶策略信息收集環境搭建

知識點: 1、基石框架篇-單域架構-權限控制-用戶和網絡 2、基石框架篇-單域架構-環境搭建-準備和加入 3、基石框架篇-單域架構-信息收集-手工和工具1、工作組(局域網) 將不同的計算機按照功能分別列入不同的工作組。想要訪問某個部門的資源,只要在“網絡…

Electron運行報錯:Error Cannot find module ‘node_moduleselectroncli.js‘

Electron運行報錯:Error: Cannot find module ‘node_modules\electron\cli.js’ 顧名思義,命令行執行Electron .時候,會優先從項目目錄查找對應依賴,如果是報錯顯示是找不到項目目錄下的依賴,我們可以從安裝在全局的…

DAMA學習筆記(五)-數據存儲和操作

1.引言 數據存儲與操作包括對存儲數據的設計、實施和支持,最大化實現數據資源的價值,貫穿于數據創建/獲取到處置的整個生命周期。 數據存儲與操作包含兩個子活動(圖6-1)。 圖6-1 語境關系圖:數據存儲與操作 (1) 數據庫…

記錄vite項目中Cornerstone的兼容問題(持續更新)

🔎 在vite項目中打包提示錯誤 ESM integration proposal for Wasm" is not supported currently. ?? 問題描述 Error: Could not load /home/xxx/xxx/node_modules/icr/polyseg-wasm/dist/ICRPolySeg.wasm (imported by node_modules/icr/polyseg-wasm/di…

js ES6 part3

Number 是內置構造函數&#xff0c;用來創建數值 const price 12.345console.log(price.toFixed(2))//保留兩位小數 12.35 綜合案例購物車 <body><div class"list"><!-- <div class"item"><img src"https://yanxuan-item…

【代碼隨想錄】【算法訓練營】【第66天】 [卡碼95]城市間貨物運輸II [卡碼96]城市間貨物運輸III

前言 思路及算法思維&#xff0c;指路 代碼隨想錄。 題目來自 卡碼網。 day 66&#xff0c;周五&#xff0c;ding ding~ [卡碼95] 城市間貨物運輸II 題目描述 卡碼95 城市間貨物運輸II 解題思路 前提&#xff1a; 思路&#xff1a; 重點&#xff1a; 代碼實現 C語言 …

數據結構(Java):隊列Queue集合力扣面試OJ題

1、隊列 1.1 隊列的概念 隊列是一個特殊的線性表&#xff0c;只允許在一端&#xff08;隊尾&#xff09;進行插入數據操作&#xff0c;在另一端&#xff08;對頭&#xff09;進行刪除數據。隊列具有先進先出FIFO(First In First Out)的特性。 入隊&#xff1a;數據只能從隊尾…

有獎競猜!斗牛士軍團與法蘭西騎士的終極之戰,誰將笑傲歐洲之巔?

痛快看球&#xff0c;暢玩游戲&#xff0c;AGON愛攻帶你進入酣暢淋漓的足球世界&#xff01; 7月15日&#xff0c;綠茵賽場硝煙再起&#xff0c;兩支身披榮光的王者之師&#xff0c;一路過關斬將&#xff0c;最終會師決賽。一場萬眾矚目的巔峰對決即將拉開帷幕&#xff0c;究竟…

linux UDP通訊:接口函數示例

一、主要用的接口&#xff1a; //服務器端 1. socket() 創建套接字 2. bind() 綁定套接字 與TCP區別開來&#xff0c;沒有listen()、accept()建立連接的過程 3. 通信 recvfrom() sendto() 4. close //客戶端 1. socket() 創建套接字 與TCP區別開來&#xff0c;沒有connect()建立…

數據結構——排序算法(冒泡、快速、選擇、插入)

文章目錄 1. 概念 2. 十大排序算法 3. 冒泡排序 4. 冒泡代碼實現 5. 快速排序 6. 快速代碼實現 7. 選擇排序 8. 選擇代碼實現 9. 插入排序 10. 插入代碼實現 1. 概念 排序&#xff08;Sort&#xff09;是將無序的記錄序列&#xff08;或稱文件&#xff09;調整成有序…