簡體   English   中英

為另一個分區/目錄運行apt-get?

[英]Running apt-get for another partition/directory?

我從現場的Ubuntu CD啟動了我的系統,我需要解決一些包問題。 我已經安裝了我的硬盤,現在我想運行apt-get,好像我正常啟動一樣。 即更改apt-get的工作目錄,以便它可以在我的硬盤上運行。 我以前做過這個,但我不記得語法了。 我認為這只是一些旗幟,像這樣:

apt-get --root-directory=/mnt/partition1 install....

但我只得到“命令行選項...不理解”。 有任何想法嗎?

這應該工作:

sudo apt-get -o Dir=/media/partitioni1 update

chroot / mnt / partition1

如果您的系統使用多個磁盤分區,您可能必須安裝其中一些以使軟件包系統正常工作(10年前,當硬盤開始變得太大而無法進行原始物理備份時,我停止設置多個分區)。

如果您在該位置尚未使用可用的debian系統,則無法使用此功能。 - akostadinov

如果你在chrooting時無法讓包裝系統工作,也許它太混亂了,再也不能再被信任 - 根據我的經驗,將它恢復生機的努力很少付出代價。 如果發生這種情況,請高興您仍然可以訪問您的HD,備份您的數據並執行干凈的重新安裝。

其他答案的一些相關評論:

apt-get -o RootDir = / tmp / test_apt設置(幾乎)所有路徑都在不同的根目錄中。 btw在正在運行的系統上,如果你復制/ etc / apt,/ usr / lib / apt和mkdir -p usr / lib等var / cache var / lib / dpkg var / lib / apt / lists / partial var / cache / apt / archives / partial,最后觸摸var / lib / dpkg / status,然后apt將在該根目錄中運行。 如果添加-o Debug :: NoLocking = 1選項,它甚至可以作為非root用戶使用。 nolock選項是必需的,因為我找不到在不同的根目錄中設置鎖文件的方法。 - akostadinov

工作意味着使用搜索和下載包以及此類操作。 實際上,如果某些基本包裝尚未安裝,則無法進行安裝。 如果目標實際上是出於任何原因在新根目錄中安裝軟件包,則debootstrap可以提供幫助。 - akostadinov

運行chroot /mnt/partition1將啟動一個新的shell,其中文件系統的根目錄是/mnt/partition1 假設您的硬盤驅動器上的apt-get仍能正常工作,您可以從那里開始。

dpkg --root=/mnt/partition1 -i mypackage.deb是一個不需要chroot的選項,但是需要你自己下載包。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM