Проблема с удалением файла var cache apt srcpkgcache bin removecaches 13 доступ запрещен

Обновлено: 03.07.2024

На днях одна читательница спросила меня, что у нее проблемы с ошибкой такого рода:

E: Не удалось получить блокировку /var/cache/apt/archives/lock — открыть (11: Ресурс временно недоступен)
E: Невозможно заблокировать каталог /var/cache/apt/archives/

Она пыталась следовать одному из советов, упомянутых в разделе Что делать после установки Ubuntu 14.04, когда столкнулась с этой ошибкой. Это одна из распространенных ошибок обновления в Ubuntu, а также одна из наименее раздражающих.

Причина:

Если вам интересно, что вообще вызвало эту ошибку, причина вполне очевидна в самой ошибке. Ошибка гласит: Не удалось получить блокировку /var/cache/apt/archives/lock — открыть (11: Ресурс временно недоступен). Именно это и происходит.

Пока вы пытаетесь установить какой-либо пакет с помощью команды apt, запущен какой-то другой менеджер пакетов или выполняется обновление.

Возможно, у вас открыт Центр программного обеспечения или другой терминал использует команды apt или apt-get.

Решение:

Первое и главное — ничего не делать. Я имею в виду, как только другая программа, использующая ресурс, завершит процесс, ресурсы снова станут доступны.

В противном случае поищите другие программы, которые могут использовать apt. Закройте эту программу.

Вы также можете найти, запущен ли экземпляр команды apt (используйте ps aux | grep -i apt), а затем завершить процесс.

Проще всего это сделать с помощью команды killall:

Если приведенные выше команды не решают проблему E: Не удалось получить блокировку /var/cache/apt/archives/lock — открыть (11: Ресурс временно недоступен), попробуйте выполнить следующие команды одну за другой, чтобы исправить ошибку. проблема:

Приведенные выше команды удаляют файлы блокировки, и, таким образом, процессы управления пакетами apt и dpkg можно снова использовать. Хотя это и не обязательно, вам может понадобиться перенастроить dpkg с помощью следующей команды:

Я надеюсь, что этот краткий совет поможет решить эту распространенную ошибку обновления в Ubuntu. Любые вопросы или предложения приветствуются. Чао :)

Я новичок в Linux и не могу исправить эту ошибку, с которой столкнулся в Ubuntu 16.04. Я чувствую, что мой вопрос отличается от других вопросов, связанных с обновлением apt-get, потому что ситуация отличается. Информация о моей системе выглядит следующим образом:

Всякий раз, когда я набираю команду:

Может ли кто-нибудь помочь мне. Я пытался выполнить следующую команду, после чего возникла ошибка при программировании в Visual Basic, когда возникла эта ошибка:

У вас есть sudo, который завершается с ошибкой "Отказано в доступе". Это довольно тревожно. Может быть, /var находится в файловой системе только для чтения? Что показывает «монтирование»?

@GerardH.Pille он упомянул, что является новичком в Linux, так что я нахожу это маловероятным. Он явно неправильно назвал файл source.list, и я предполагаю, что одна из его попыток испортила процедуру.

@rwenz3l Возможно, вы правы, но может быть и ошибаетесь (в данном случае). Я не помню, чтобы когда-нибудь у меня застрял сеанс apt, но я использую Linux всего 20 лет.

2 ответа 2

N: Игнорирование файла "mono-xamarin.listsudo" в каталоге "/etc/apt/sources.list.d/", так как он имеет недопустимое расширение имени файла

четко указывает на неправильное имя файла:

E: невозможно заблокировать каталог /var/lib/apt/lists/

указывает, что вы не являетесь пользователем root ИЛИ процесс apt-get уже запущен, но произошел сбой, и в результате осталось нечистое состояние.

проверить запущенные процессы apt-get:

вы должны увидеть что-то вроде этого:

где 8737 — это процесс, который завис, если вы видите несколько процессов, уничтожьте каждый из них с помощью:

перепроверьте, продолжается ли процесс. Если вы не можете завершить процесс таким образом, используйте:

после этого вам нужно очистить файлы блокировки apt-get:

наконец нужное обновление:

Возможно, у вас там что-то сломалось. Попробуйте это: wget -q -O - NAME_OF_MISSING_WHATEVER sc | apt-key add — добавить его. Кроме того, какие последние действия вы/кто-то еще предприняли там до того, как это произошло? Это первый раз в этой ОС, когда вы делали обновление apt-get (это когда-либо работало раньше)? Если вы только что установили свой дистрибутив Linux, возможно, вам нужно повторно загрузить файл *.ISO, затем проверить значение MD5, чтобы убедиться, что оно совпадает, и если вы записываете его на CD/DVD, убедитесь, что вы используете CD/DVD программное обеспечение для записи с возможностью проверки правильности написания ISO (я добавил это, так как вы новичок в Linux).

Да, @Frido-X, это обновление apt-get работало раньше, но, как я уже говорил в своем первоначальном вопросе, после ввода команды:

Недавно я установил основной пакет Debian 9 через USB (мне пришлось использовать ISO-образ меньшего размера из-за достижения лимита данных в Интернете).Он отлично установился и работает так, как я ожидал, определил мое оборудование и все такое, и никаких проблем в этом отношении.

Однако у меня проблемы с правами доступа к файлам, и я ничего не могу здесь сделать, например, не могу установить, обновить или распаковать файлы. Несколько строк кода, которые я пробовал, продолжают давать мне следующие ошибки об отказе в разрешении. Основное (я думаю) - это подходящее обновление, не знаю, что делать, так как я совершенно новичок в Linux. Я перепечатал ошибки, которые я получаю ниже (здесь у меня есть нумерация строк, но их нет в командной строке).


[email protected]:~$ apt update
Чтение списков пакетов. Готово
строка 1) W: ошибка chmod 0700 каталога /var/lib/apt/lists/partial - SetupAPTPartialDirectory (1: операция не разрешена)
строка 2) E: не удалось открыть файл блокировки /var/ lib/apt/lists/lock - открыть (13: доступ запрещен)
L3) E: Невозможно заблокировать каталог /var/lib/apt/lists/
L4) W: Проблема с отсоединением файла /var /cache/apt/pkgcache.bin - RemoveCaches (13: Отказано в доступе)
L5) W: Проблема с отсоединением файла /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Отказано в доступе)

Мы будем очень признательны за любую помощь, спасибо за внимание.

ЯсКинасис

Известный участник

Для задач, которые будут вносить изменения в систему, вам потребуются привилегии root.
Вместо того, чтобы переключаться на учетную запись пользователя root, вы должны сделать это из своей учетной записи, используя sudo, которая запросит у вас пароль и временно предоставит вам права root.
Например.

При первом запуске команды sudo она запросит ваш пароль. Пока вы правильно вводите пароль (и предполагаете, что ваш пользователь является членом группы sudo), команда будет выполняться и вносить изменения в вашу систему.

После выполнения первой команды sudo вы можете использовать другие команды sudo без повторного ввода пароля. Но есть ограничение по времени, обычно 5 или 10 минут после вашей последней команды sudo.
Если срок истекает, sudo снова запросит у вас пароль.

Кроме того, когда вы закончите использовать sudo, вы можете вручную установить срок действия разрешения с помощью команды:

Это заставит sudo удалить ваши учетные данные, поэтому при следующем использовании sudo вам придется заново вводить пароль.

И почему это полезно?

Представьте, что вы выполнили команду sudo, а затем вышли из комнаты. Если кто-то еще придет до истечения срока действия ваших привилегий sudo/superuser, он сможет выполнить любую команду, которая ему нравится, используя sudo, без необходимости вводить ваш пароль.

Поэтому, если вы собираетесь запустить одну или несколько команд sudo и выйти из комнаты: рекомендуется использовать команду sudo -k в конце.
Например.
Чтобы безопасно выполнять автоматическое обновление и обновление, пока вы ходите в туалет, вы должны использовать:

При вводе этой команды вам будет предложено ввести пароль.
После того, как вы ввели свой пароль, списки пакетов начнут обновляться, затем apt обновит и установит все обновленные пакеты (опция -y просто автоматически ответит «да» на любые вопросы, заданные apt), затем sudo -k вызывается для очистки ваших учетных данных.

Таким образом, пока эти команды работают, вы можете безопасно проводить в туалете столько времени, сколько захотите. И если команды закончатся до того, как вы вернетесь, ваши дети/сосед по комнате/коллеги не смогут запустить какие-либо несанкционированные команды. (Если они уже не знают ваш пароль!)

И для дополнительной защиты, если на выбранном вами рабочем столе есть функция блокировки экрана, возможно, стоит активировать ее, пока вы отсутствуете, если вы не хотите, чтобы люди видели, какие видео с кошками вы смотрели в вашей истории Интернета! XD ха-ха!

В любом случае, sudo — это то, что вам нужно для выполнения команд, которые изменят вашу систему!

Читайте также: