我是个菜鸟。突然我的文件服务器停止工作了。当我去查看时,它告诉我启动时没有剩余空间。我确实有“旧”版本,我试图卸载它们。我看了很多答案,但都无济于事。我继续运行:
dpkg: error processing archive /var/cache/apt/archives/linux-image-3.19.0-32-generic_3.19.0-32.37_i386.deb (--unpack):
cannot copy extracted data for './boot/System.map-3.19.0-32-generic' to '/boot/System.map-3.19.0-32-generic.dpkg-new': failed to write (No space left on device)
和:
mauricio@FileServer:/boot$ sudo apt-get remove linux-image-3.19.0-15-generic
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-image-extra-3.19.0-15-generic : Depends: linux-image-3.19.0-15-generic but it is not going to be installed
linux-image-extra-3.19.0-32-generic : Depends: linux-image-3.19.0-32-generic but it is not going to be installed
linux-image-extra-3.19.0-68-generic : Depends: linux-image-3.19.0-68-generic but it is not going to be installed
linux-image-generic : Depends: linux-image-3.19.0-68-generic but it is not going to be installed
Recommends: thermald but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
这就是我所拥有的:
mauricio@FileServer:/boot$ sudo dpkg --list 'linux-image*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============================-====================-====================-==================================================================
un linux-image <none> <none> (no description available)
un linux-image-3.0 <none> <none> (no description available)
ii linux-image-3.19.0-15-generic 3.19.0-15.15 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
ii linux-image-3.19.0-22-generic 3.19.0-22.22 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
ii linux-image-3.19.0-23-generic 3.19.0-23.24 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
ii linux-image-3.19.0-25-generic 3.19.0-25.26 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
ii linux-image-3.19.0-26-generic 3.19.0-26.28 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
iF linux-image-3.19.0-28-generic 3.19.0-28.30 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
iF linux-image-3.19.0-30-generic 3.19.0-30.34 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
iF linux-image-3.19.0-31-generic 3.19.0-31.36 i386 Linux kernel image for version 3.19.0 on 32 bit x86 SMP
in linux-image-3.19.0-32-generic <none> i386 (no description available)
in linux-image-3.19.0-68-generic <none> i386 (no description available)
ii linux-image-extra-3.19.0-15-ge 3.19.0-15.15 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
ii linux-image-extra-3.19.0-22-ge 3.19.0-22.22 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
ii linux-image-extra-3.19.0-23-ge 3.19.0-23.24 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
ii linux-image-extra-3.19.0-25-ge 3.19.0-25.26 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
ii linux-image-extra-3.19.0-26-ge 3.19.0-26.28 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
iU linux-image-extra-3.19.0-28-ge 3.19.0-28.30 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
iU linux-image-extra-3.19.0-30-ge 3.19.0-30.34 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
iU linux-image-extra-3.19.0-31-ge 3.19.0-31.36 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
iU linux-image-extra-3.19.0-32-ge 3.19.0-32.37 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
iU linux-image-extra-3.19.0-68-ge 3.19.0-68.76 i386 Linux kernel extra modules for version 3.19.0 on 32 bit x86 SMP
iU linux-image-generic 3.19.0.68.66 i386 Generic Linux kernel image
我正在运行这个版本:
mauricio@FileServer:/boot$ uname -r
3.19.0-26-generic
我不知道该怎么办。如果你能帮忙,我将不胜感激。
我df
按要求输入了:
mauricio@FileServer:/boot$ df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 2013992 0 2013992 0% /dev
tmpfs 405876 7316 398560 2% /run
/dev/mapper/FileServer--vg-root 72422704 20125860 48594880 30% /
tmpfs 2029376 424 2028952 1% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
tmpfs 2029376 0 2029376 0% /sys/fs/cgroup
/dev/sda1 240972 238260 0 100% /boot
cgmfs 100 0 100 0% /run/cgmanager/fs
tmpfs 405876 52 405824 1% /run/user/1000
/home/mauricio/.Private 72422704 20125860 48594880 30% /home/mauricio
mauricio@FileServer:/boot$
答案1
您的空间问题可能不是因为 /boot 已满。
首先,打开终端窗口并输入
df
如果在输出中看到“/boot”有单独的行,则表示您有一个单独的启动分区。在这种情况下,您需要在 /boot 上腾出一些空间。
否则,“/boot”只是一个更大分区中的一个目录,其中包含其他文件。因此,/boot 正在与其他类型的文件争夺空间。您可能因为磁盘中已装满文件而导致空间不足,而不是因为启动时操作系统版本过多。在这种情况下,您需要对所有其他文件进行一些处理,并且您几乎可以忽略操作系统的额外版本。
最后,如果您确实需要删除操作系统的旧副本,只需从启动目录中删除它们即可。您可以从最旧的映像开始(在您的例子中是 linux-image-3.19.0-15-generic、initramfs-3.19.0-15* 等)。虽然使用 apt-get 卸载可能是最干净的,但您可以从启动分区恢复大部分或全部空间,而无需正式执行卸载。
注意:删除旧的“linux-image-3.19.0...”或“initramfs-3.19.0...”文件(它们是启动映像的早期版本)不会导致任何“依赖性”问题。您看到的依赖性问题与软件包、库等有关,它们不在您的启动目录中,但由操作系统的各个修订版共同使用。
这个想法是避免使用包管理器,只需从启动目录中删除您不打算使用的图像:
首先,在终端窗口中使用
ls
查看所有启动映像的名称。
您将获得类似以下名称的文件
initramfs-3.19.0-15...img
vmlinuz-3.19.0-15...
config-3.19.0-15...
System.map-3.19.0-15...
(我使用“...”来表示对这些文件名的不确定性。)
这些是启动目录中的文件,它们来自启动目录中最旧(3.19.0-15)版本的操作系统。您无需使用包管理器来删除这些文件,只需使用 即可rm
。请小心操作,确保您不会删除最新的启动映像文件。如果您删除 2 或 3 个最旧的集合(按版本号 3.19.0-15、3.19.0-22 等),您将有足够的空间进行最新更新。
在终端中,你将输入
sudo rm initramfs-3.19.0-15...img
sudo rm vmlinuz-3.19.0-15...
ETC。
其中文件名的精确拼写是您使用 获得的ls
。您需要 sudo,因为您必须具有删除这些文件的权限。“rm”是用于删除文件的 unix 终端命令。
最后,您可能想要研究如何配置系统以仅保留 2 或 3 个最新映像。这样,当您更新时,/boot 中的旧文件将自动被删除。您只需要最后几个版本作为后备,以防您在使用最新版本时遇到问题。