Как я решил эту проблему (только в школьной сети, дома и других были прекрасны) был «волшебным»
Я отключил беспроводной сетевой адаптер. Удалили все профили соединений (eth, wlan, mobile ...) через апплет сетевого менеджера. Перезагружать. Включенный беспроводной адаптер. Перезагрузка (я знаю, что я прихожу из Windows, и я ноб с Ubuntu). Подключите снова.Я работал некоторое время без проблем. (Я не знаю, почему, но если кто-то выяснит это, пожалуйста, скажите мне)
echo -n | sudo apt-get purge <package> | grep "disk space will be freed"
или echo -n | sudo apt-get purge --auto-remove <package> | grep "disk space will be freed"
, где заменить <package> на ваш package-name (пример: gimp). Это не будет очищать пакет с зависимостями, но только дает, сколько дискового пространства будет освобождено с помощью grep! Просто попробуйте выполнить следующую команду (чтобы освободить дисковое пространство от чистки): echo -n | sudo apt-get purge <package> | grep "disk space will be freed"
или echo -n | sudo apt-get purge --auto-remove <package> | grep "disk space will be freed"
, где заменить <package> на ваш package-name (пример : gimp) Это не очистит пакет с зависимостями, а даст только освобождение дискового пространства с помощью grep! dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n
или
dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n | more
Выше списка пакетов в соответствии с размером доступа, вы можете использовать tail для отображения пакетов, потребляющих верхний размер следующим образом: dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n | tail
dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n
или
dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n | more
Выше списка пакетов по размеру, вы можете использовать tail для отображения пакетов, потребляющих верхний размер, следующим образом: dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n | tail
[!d33 ] Поиск размера неиспользуемого пакета: - popularity-contest (8) - list the most popular Debian packages
popcon-largest-unused (8) - List size of unused packages
Выше списка пакетов по размеру, вы можете использовать tail для отображения пакетов, потребляющих верхний размер, следующим образом:
[d38 ]Вы можете использовать больше для страницы:
apt-cache show packagename перечисляет, помимо прочего, установленный размер пакета и зависимости пакета. Кроме того, apt-cache rdepends packagename перечисляет пакеты, которые используют этот пакет.
Возможно, вы захотите использовать последнюю команду и apt-cache policy packagename, чтобы определить, установлена ли обратная зависимость.
Вот сценарий, который делает это.
sudo apt-get install python-apt
и вы готовы к работе.
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
from __future__ import (absolute_import, division,
print_function, unicode_literals)
import apt
from apt.cache import Filter, FilteredCache
MB = 1024*1024
class InstalledFilter(Filter):
def apply(self, pkg):
return pkg.is_installed
def iter_base_deps(cache, package):
deps = []
version = package.installed
for dep_type in ('Depends', 'PreDepends', 'Recommends'):
deps.extend(version.get_dependencies(dep_type))
for dep in deps:
for base_dep in dep:
if base_dep.name in cache:
yield base_dep
def main():
package_ref_count = {}
results = []
cache = FilteredCache(apt.Cache())
cache.set_filter(InstalledFilter())
for package in cache:
for base_dep in iter_base_deps(cache, package):
if base_dep.name in package_ref_count:
package_ref_count[base_dep.name] += 1
else:
package_ref_count[base_dep.name] = 1
for package in cache:
base_deps_size = 0
base_deps = []
for base_dep in iter_base_deps(cache, package):
if package_ref_count[base_dep.name] == 1:
base_deps.append(base_dep)
base_deps_size += cache[base_dep.name].installed.installed_size
total_size = package.installed.installed_size + base_deps_size
results.append((total_size, package, base_deps_size, base_deps))
for total_size, package, base_deps_size, base_deps in sorted(results, reverse=True):
if package.name in package_ref_count:
continue
if total_size < MB:
break
self_size = package.installed.installed_size
base_dep_count = len(base_deps)
print('{:.1f} MB {}'.format(total_size/MB, package.name) + \
(' with {} deps'.format(base_dep_count) if base_dep_count else ''))
if base_dep_count:
print(' {:.1f} MB self'.format(self_size/MB))
for base_dep in base_deps:
size = cache[base_dep.name].installed.installed_size
print(' {:.1f} MB {}'.format(size/MB, base_dep.name))
if __name__ == '__main__':
main()
Пример вывода:
[ f2]