Правильно установить бит выполнения в зависимости от типа файла?

В MySQL 5.7 поле password в поле таблицы mysql.user было удалено, теперь имя поля authentication_string.

Сначала выберите базу данных:

mysql> use mysql;

А затем покажите таблицы:

mysql> show tables;

Вы найдете таблицу user и увидите ее поля:

mysql> describe user;

Вы поймете, что нет поля с именем password, поле пароля называется authentication_string. Поэтому просто сделайте следующее:

update user set authentication_string=password('XXXX') where user='root';

Как предложил @Rui F Ribeiro, в качестве альтернативы вы можете выполнить:

mysql> SET PASSWORD FOR 'root' = PASSWORD('new_password');
3
13.04.2017, 15:36
2 ответа

Я не знаю, каков ваш вариант использования, но у меня редко бывают исполняемые файлы в моей веб-папке. А на производственных машинах я также удаляю разрешение на запись для большинства файлов.

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

find /path/to/webroot/ -type f -exec chmod 644 -c '{}' \;
find /path/to/webroot/ -type d -exec chmod 755 -c '{}' \;
# change owner 
chmod root:www-data /path/to/webroot/ -R

bash .fix-perm

где .fix-perm - это просто файл сценария

#.fix-perm
chmod g+w cache -R
chmod g+w logs -R
1
27.01.2020, 21:13

Это пройдёт по вашим файлам и установит исполняемый бит в зависимости от того, считает ли файл , что файл должен быть исполняемым:

find /var/www/html -type f -exec bash -c 'if file -b "$1" | grep -q executable; then chmod +x "$1"; else chmod -x "$1"; fi' None {} \;

Команда find очень похожа на вашу. Изменение заключается в добавлении команд bash. Их будет проще понять, если они распределены по нескольким строкам, например:

if file -b "$1" | grep -q executable
then
    chmod +x "$1"
else
    chmod -x "$1"
fi

Вы, конечно, можете изменить аргумент chmod в соответствии со своими потребностями.

6
27.01.2020, 21:13

Теги

Похожие вопросы