Это похоже на то, что вы сделали для установки php-5.3
Просто запустите:
yum install php-mysql
У меня возникла эта проблема, когда набор программ выполнялся в каталоге, который я пытался удалить. Чтобы переместить каталог, мне пришлось сначала убить все запущенные программы из этого каталога.
В следующих командах будьте очень осторожны при выборе имени вашей программы. Я использовал следующие команды для справки:
ps aux | grep -i [NAME_OF_ANNOYING_PROGRAM] | grep -v grep
# make sure that you are only about to kill the programs you want to kill
ps aux | grep -i [NAME_OF_ANNOYING_PROGRAM] | grep -v grep | awk '{print $2}' | sudo xargs kill -9
sudo mv /usr/local/[DIR_FOR_ANNOYING_PROGRAM] /usr/local/[DIR_FOR_ANNOYING_PROGRAM]2
Общая процедура:
kill -9
с большой осторожностью)все программы из каталога Я использовал подсистему Windows для Linux. У меня был открыт каталог в другом экземпляре bash. Закрытие позволило мне переместить каталог.
Проблема здесь, вероятно, связана со списком управления доступом (ACL )папки «Музыка». ACL — это отдельная система разрешений для обычных POSIX-систем, которые обычно перечислены в ls -l
. Некоторые другие каталоги в домашней папке и в других местах также имеют ACL.
Чтобы просмотреть списки ACL в домашнем каталоге, используйте:
/bin/ls -le ~
Скорее всего, вы увидите правило типа 0: group:everyone deny delete
для музыкального каталога. Как вы заметили, вы можете обойти проблему с sudo
. Если вы не хотите этого делать (или не можете ), у вас есть другие варианты, учитывая, что вы являетесь владельцем файла. Вы можете удалить оскорбительную запись из ACL музыкального каталога на основе ее индекса (0 в примере, который я привел выше ):
/bin/chmod -a# 0 Music
Либо можно удалить все записи в ACL:
/bin/chmod -N Music
Теперь вы можете перемещать каталог (в соответствии с обычными разрешениями POSIX ). Если вы хотите вернуть ACL обратно после перемещения, вы можете использовать:
/bin/chmod +a "group:everyone deny delete" Music_tmp
И снова нажмите /bin/ls -le
, чтобы подтвердить, что ACL соответствует вашим требованиям. Ознакомьтесь с примерами ACL в man chmod
для получения дополнительной информации. В частности, это введение полезно:
Each file has one ACL, containing an ordered list of entries. Each entry refers to a user or group, and grants or denies a set of permissions. In cases where a user and a group exist with the same name, the user/group name can be prefixed with "user:" or "group:" in order to specify the type of name.
Я не думаю, что эта справочная страница объясняет правила порядка следования, но эта страница ясно объясняет правила порядка для ACL. В частности, явное правило deny
будет применяться перед явным правилом allow
. Таким образом, пока существует запись group:everyone deny delete
, невозможно дать пользователю разрешение на удаление с помощью правила allow
. Это связано с тем, что доступ запрещен для группы everyone
, в которую входит и вы, и это правило будет применено первым.
Это также может произойти, когда один из файлов внутри защищен -от записи. Сегодня у меня был пограничный случай, когда access.log
был защищен от записи -для Apache, который уже был остановлен. Я просто удалил этот файл, так что дальше я смог переместить родительский каталог.