我在 20.04 LTS 机器上的 Ubuntu Pro 中启用了应用程序更新,但任何尝试运行 python 代码的尝试都会在导入时立即中断。
例如,输入
将 pandas 导入为 pd
在 python3.8 shell 中返回一条消息:
numpy:无法从部分初始化的模块“numpy”导入名称“core”(很可能是由于循环导入)
后面跟着对 __init__.py 文件的引用。其实没什么用,因为这让我白白浪费了一天的时间!
我将当前的 python3.8 包与前一天的包进行了比较 - 有很多不同 - 因此没有意识到 snap 做了什么,我只是将 site-packages 目录移到一边并从 rsnapshot 存档中复制了旧目录。发生了相同的结果。
清除缓存和删除所有 .pyc 文件同样失败。
我现在已经禁用 esm-apps 的更新。许多 python 包指定了兼容版本限制,所以我需要停止 python 的自动更新。
睡一觉(总是建议这样做),我查看了日记,看到了一条消息
无法设置时区更改事件源的优先级:设备上没有剩余空间
在更新时间和日期。df 立即显示这是 /snap/“分区”,其中所有 /dev/loop* 都使用了 100%。Bingo。
以下是我的疑问:
恢复这个损坏的系统的最佳方法是什么?
是禁用 snap 并恢复到旧版本(这可能会破坏 pro)吗?
我可以将 snap “分区”复制到某个地方吗?
如何将限制从 2.5G(相当小)增加?
如何修剪 snap 分区?
有没有办法提示 snap 完成更新?
分手:
Model: ATA WDC WD30PURZ-85A (scsi)
Disk /dev/sda: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 526MB 524MB ext4
3 526MB 1064MB 538MB fat32 msftdata
4 1064MB 3001GB 3000GB ext4
Model: ATA KINGSTON SH103S3 (scsi)
Disk /dev/sdb: 120GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 120GB 120GB primary linux-swap(v1)
Model: Samsung SSD 960 PRO 512GB (nvme)
Disk /dev/nvme0n1: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 512GB 512GB raid
Model: Linux Software RAID Array (md)
Disk /dev/md0: 1024GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 717GB 717GB ext4
2 717GB 967GB 250GB ext4
3 967GB 1024GB 57.2GB linux-swap(v1) swap
Model: Samsung SSD 960 PRO 512GB (nvme)
Disk /dev/nvme1n1: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 512GB 512GB raid
数据:
Filesystem Size Used Avail Use% Mounted on
udev 63G 0 63G 0% /dev
tmpfs 13G 3.8M 13G 1% /run
/dev/md0p1 657G 201G 423G 33% /
tmpfs 63G 0 63G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 63G 0 63G 0% /sys/fs/cgroup
/dev/md0p2 229G 16G 202G 8% /var
/dev/loop0 9.7M 9.7M 0 100% /snap/canonical-livepatch/246
/dev/loop1 56M 56M 0 100% /snap/core18/2667
/dev/loop2 9.9M 9.9M 0 100% /snap/canonical-livepatch/264
/dev/loop3 106M 106M 0 100% /snap/core/16574
/dev/loop5 64M 64M 0 100% /snap/core20/2182
/dev/loop4 106M 106M 0 100% /snap/core/16202
/dev/loop6 64M 64M 0 100% /snap/core20/2105
/dev/loop7 56M 56M 0 100% /snap/core18/2812
/dev/loop8 75M 75M 0 100% /snap/core22/1033
/dev/loop9 50M 50M 0 100% /snap/snapd/17950
/dev/loop10 41M 41M 0 100% /snap/snapd/20671
/dev/loop11 75M 75M 0 100% /snap/core22/1122
/dev/loop12 92M 92M 0 100% /snap/lxd/24061
tmpfs 13G 4.0K 13G 1% /run/user/1000
折断:
Name Version Rev Tracking Publisher Notes
canonical-livepatch 10.8.1 264 latest/stable canonical** -
core 16-2.61.1 16574 latest/stable canonical** core
core18 20231027 2812 latest/stable canonical** base
core20 20240111 2182 latest/stable canonical** base
core22 20240111 1122 latest/stable canonical** base
lxd 4.0.9-a29c6f1 24061 4.0/stable/… canonical** -
snapd 2.61.1 20671 latest/stable canonical** snapd