У дозволі відмовлено, вам корінь?


81

Я отримую цю помилку, коли намагаюся встановити програми за допомогою терміналу:

home@ubuntu:~$ apt-get install myunity
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

Також я не можу встановити оновлення за допомогою терміналу.


4
Це не дублікат, однакова помилка, але різні причини.
Хорхе Кастро

3
Спробуйтеsudo apt-get update
Avinash Raj

я думаю, що ваш менеджер оновлень gui відкритий під час запуску оновлення apt-get, і одне, що ви повинні бути суперкористувачем або користуватися sudo, перш ніж використовувати оновлення apt-get
smn_onrocks

Ви навіть є власником цього комп’ютера, якщо так, то вам потрібно показати, що, будучи власником root ( sudo ) перед будь-якою інсталяцією, будь ласка
Olu Smith

1
Дивіться також askubuntu.com/questions/427479/…
Avinash Raj

Відповіді:


80

Рішення полягає в тому, щоб прочитати повідомлення про помилку: ви root? . Використовуйте sudoдля запуску команди з правами root, наприклад:sudo apt-get update


24

Відповідно до документації громади про використання терміналу ,

судо: виконання команд з підвищеними привілеями

  1. Більшість наступних команд повинні бути попередньо виконані з командою sudo . Це тимчасово підвищує привілеї до адміністративного рівня кореневих користувачів, що необхідно при роботі з каталогами або файлами, які не належать вашому обліковому запису користувача. Під час використання sudo вам буде запропоновано ввести пароль. Тільки користувачі з правами sudo (адміністративні) зможуть використовувати цю команду. Ніколи не слід використовувати звичайний sudo для запуску графічних додатків як Root (див. RootSudo для отримання додаткової інформації про правильне використання sudo.)

Отже, оскільки apt-get встановлює програмне забезпечення і, таким чином, впливає на систему, вам потрібно скористатися sudoкомандою, щоб дати собі права адміністратора.

Таким чином, ви маєте командувати sudo apt-get install myunity

Якщо ви хочете оновити систему, запустіть

sudo apt-get update
sudo apt-get dist-upgrade

Це оновить базу даних вашої системи, а потім встановить будь-які оновлення.


7
Це не допомагає позбутися помилки:unable to lock the administration directory (/var/lib/dpkg/), are you root?
IgorGanapolsky

10

Перш ніж виконувати будь-яке адміністративне завдання: встановити, видалити, змінити загальні налаштування системи тощо root. Це особливо стосується apt-get. Саме повідомлення повідомляє вам, де проблема:

ти корінь?

Якщо вас немає root, installкоманда взагалі не буде працювати.

Спосіб виправити це використовується sudoперед командою:

➜  ~  apt-get update
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
➜  ~  sudo apt-get update
Fetched 616 kB in 25s (23.9 kB/s)

Як ви можете помітити, він завершився без проблем, коли я користувався sudo. Якщо у вас є якісь open (13: Permission denied), майже впевнені, що ви цього не rootхочете використовувати sudo.


Дякую за допомогу, оскільки я не вкоренився, я не думав, що мені потрібно використовувати судо, але для мене це все досвід навчання. Просто хочу, щоб ви могли вказати оновлення в терміналі
француз,

4

Спробуйте з

sudo apt-get update 

Якщо ви все-таки отримаєте помилку блокування, спробуйте цю команду, вона дасть детальну інформацію про процес

ps -e | grep -e apt -e adept | grep -v grep

Потім вбити процес за допомогою ідентифікатора процесу, а потім виконати команду оновлення

А також ви можете видалити цей файл, який вирішить ваша проблема

rm /var/lib/dpkg/lock 

1
Не забудьте закрити Програмний центр перед використанням apt-get. Інакше оновлення заблокується.
Дан Йохансен

1
Блокування існує для захисту файлів конфігурації вашого сховища. Процеси вбивства та видалення файлів блокування можуть обережно призвести до неправильно налаштованої системи. Ця відповідь дійсно НЕБЕЗПЕЧНА. Перед тим, як видалити файл блокування, ви повинні бути втричі впевнені, що процес його проведення закрився, або вийшов з ладу, чи будь-що інше. Правильна відповідь - це @braiam.
Рмано

Такого файлу чи каталогу немає:/var/lib/dpkg/lock
IgorGanapolsky

Оновник тримав замок, тому я не міг запустити apt-get install. Мені довелося чекати, поки оновлення закінчиться (лише кілька хвилин), тоді воно спрацювало,
gaborsch

3

просто біжи

sudo apt-get update

sudo - це запуск його як суперкористувача


2

Просто прочитайте вихід помилки: are you root?тому що ви цього не зробите. Як звичайний користувач, у вас недостатньо привілеїв для встановлення пакетів.

Перейдіть sudoдо команди для підвищення привілеїв. За умови, що в акаунті є привілеї sudo, які працюватимуть.


0

У мене була ця помилка , і в моєму випадку я повинен був видалити noexecна /varв/etc/fstab

що прекрасно працює на моїх CentOS, Fedora та Alpine Linux

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.