Difference between revisions of "Debian 分区满了怎么办"

From 清冽之泉
Jump to navigation Jump to search
Tags: Mobile web edit Mobile edit
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[File:2023-10-19_21-22Gparted面对多数文件系统都得用LiveUSB去调.png|600px]]
 
[[File:2023-10-19_21-22Gparted面对多数文件系统都得用LiveUSB去调.png|600px]]
   
在使用围棋 AI 时,老唐遇到了软件解压时,磁盘分区不足,导致 apt 报错的问题。经过多方排查,才知道是 <code>/tmp</code> 分区满了,且 <code>/</code> 分区立马也要满了。一旦重启,<code>/tmp</code> 分区较为空闲时, apt 能正常工作;一旦安装那个占用几个 G 的软件时,进度达 45% 时就报错。
+
在使用围棋 AI 时,遇到了软件解压时,磁盘分区不足,导致 apt 报错的问题。经过多方排查,才知道是 <code>/tmp</code> 分区满了,且 <code>/</code> 分区立马也要满了。一旦重启,<code>/tmp</code> 分区较为空闲时, apt 能正常工作;一旦安装那个占用几个 G 的软件时,进度达 45% 时就报错。
   
 
报错为:
 
报错为:
Line 9: Line 9:
 
__TOC__
 
__TOC__
 
== 不重装 ==
 
== 不重装 ==
这是很常见的问题,老唐以前安装 LaTeX 时也曾遇见 <code>/</code> 分区容量 (disk partition space)不足的问题。总不可能分区容量不足就重装系统吧!所以,怎样在不重装的情况下,调整分区的容量?我们需要一款叫作 Gparted 的软件。
+
这是很常见的问题,以前安装 LaTeX 时也曾遇见 <code>/</code> 分区容量 (disk partition space) 不足的问题。总不可能分区容量不足就重装系统吧!所以,怎样在不重装的情况下,调整分区的容量?我们需要一款叫作 Gparted 的软件。
   
 
在讨论所有问题之前,我们必须明确一个理论:我们正在使用 <code>/</code> <code>/usr/bin</code> <code>/usr/lib</code> <code>/home/user</code> <code>/tmp</code> 等分区,不要生猛地硬调。正在用的分区,强行改写分区状况,那肯定丢数据。当然,你想强制去调,你会发现正在用的分区上锁了没法调。
 
在讨论所有问题之前,我们必须明确一个理论:我们正在使用 <code>/</code> <code>/usr/bin</code> <code>/usr/lib</code> <code>/home/user</code> <code>/tmp</code> 等分区,不要生猛地硬调。正在用的分区,强行改写分区状况,那肯定丢数据。当然,你想强制去调,你会发现正在用的分区上锁了没法调。
Line 17: Line 17:
   
 
== 已分配 ==
 
== 已分配 ==
对硬盘上分配过的部分,即已 <code>mount</code> 的部分,必须在既没 mount,也没 umount 的情况下调。听到这里你恐怕想打人了,这是个啥状态?其实就是在 U 盘里装一个 live boot 系统,用 U 盘里的系统去更改电脑里系统的磁盘分区。
+
对硬盘上分配过的部分,即已 <code>mount</code> 的部分,必须在既没 mount,也没 umount 的情况下调。听到这里你恐怕想打人了,这是个啥状态?其实就是在 U 盘里装一个 live boot 系统,用 U 盘里的系统去更改电脑里系统的磁盘分区。
   
 
具体操作:
 
具体操作:
 
# 进 [https://gparted.org/ Gparted 官网]
 
# 进 [https://gparted.org/ Gparted 官网]
 
# 下载 [https://gparted.org/livecd.php Gparted Live USB],它就相当于一个超小 Linux 系统,足以完成更改电脑 Debian 磁盘分区的重任
 
# 下载 [https://gparted.org/livecd.php Gparted Live USB],它就相当于一个超小 Linux 系统,足以完成更改电脑 Debian 磁盘分区的重任
# 在 [https://gparted.org/livecd.php Gparted Live USB 制作页面] 学习怎么把这个超小 Linux 装进 U 盘。参考命令 <code>sudo dd if=~/Downloads/gparted-live-1.5.0-6-amd64.iso of=/dev/sdc bs=4M; sync</code>
+
# 在 [https://gparted.org/livecd.php Gparted Live USB 制作页面] 学习怎么把这个超小 Linux 装进 U 盘。参考命令 <code>sudo dd if=/home/user/Downloads/gparted-live-1.5.0-6-amd64.iso of=/dev/sdxxx-for-yours bs=4M; sync</code>
 
# 进电脑 BIOS,选择从 U 盘启动。进入超小 Linux 后,会见到 Gparted 已预装且自动启动
 
# 进电脑 BIOS,选择从 U 盘启动。进入超小 Linux 后,会见到 Gparted 已预装且自动启动
 
# 选择想要调整的硬盘
 
# 选择想要调整的硬盘

Latest revision as of 22:48, 14 August 2024

2023-10-19 21-22Gparted面对多数文件系统都得用LiveUSB去调.png

在使用围棋 AI 时,遇到了软件解压时,磁盘分区不足,导致 apt 报错的问题。经过多方排查,才知道是 /tmp 分区满了,且 / 分区立马也要满了。一旦重启,/tmp 分区较为空闲时, apt 能正常工作;一旦安装那个占用几个 G 的软件时,进度达 45% 时就报错。

报错为:

E: Write error - write (28: No space left on device) 或
E: Sub-process /usr/bin/dpkg returned an error code (1)

不重装

这是很常见的问题,以前安装 LaTeX 时也曾遇见 / 分区容量 (disk partition space) 不足的问题。总不可能分区容量不足就重装系统吧!所以,怎样在不重装的情况下,调整分区的容量?我们需要一款叫作 Gparted 的软件。

在讨论所有问题之前,我们必须明确一个理论:我们正在使用 / /usr/bin /usr/lib /home/user /tmp 等分区,不要生猛地硬调。正在用的分区,强行改写分区状况,那肯定丢数据。当然,你想强制去调,你会发现正在用的分区上锁了没法调。

未分配

对硬盘上未分配过的部分,可以用 Gparted 直接调。

已分配

对硬盘上已分配过的部分,即已 mount 的部分,必须在既没 mount,也没 umount 的情况下调。听到这里你恐怕想打人了,这是个啥状态?其实就是在 U 盘里装一个 live boot 系统,用 U 盘里的系统去更改电脑里系统的磁盘分区。

具体操作:

  1. Gparted 官网
  2. 下载 Gparted Live USB,它就相当于一个超小 Linux 系统,足以完成更改电脑 Debian 磁盘分区的重任
  3. Gparted Live USB 制作页面 学习怎么把这个超小 Linux 装进 U 盘。参考命令 sudo dd if=/home/user/Downloads/gparted-live-1.5.0-6-amd64.iso of=/dev/sdxxx-for-yours bs=4M; sync
  4. 进电脑 BIOS,选择从 U 盘启动。进入超小 Linux 后,会见到 Gparted 已预装且自动启动
  5. 选择想要调整的硬盘

Gparted 调整分区的核心技巧:假设左边 50G在用,右边 40G 未分配。那先把未分配合并形成 90G 一大块,再把它拆分成前边 30G,中间在用 50G,右边 10G 空着。就像一个吞并再拆分的游戏,调整好后点应用,就成功了。

这对以后安装新系统的启示是:尽量买大硬盘,按系统自动分区都不会出问题。在硬盘容量有限的情况下,各分区比例大概为:

/boot/efi 0.2G 0.133%
/ 40G 26.62%
/tmp 10G 6.65%
/home 100G 66.60%