Назад | Перейти на главную страницу

Не удается создать / записать в файл '/ mnt / temp / something' (код ошибки: 13)

Я изменил каталог tmp конфигурации mysql на смонтированный диск и на service mysql restart Я получаю следующую ошибку:

Can't create/write to file '/mnt/temp/something' (Errcode: 13)

Насколько я понимаю, Error Code 13 относится к ошибке разрешения файла.

Но странная часть:

  1. владелец временного каталога уже mysql и разрешение файла 1777

    drwxrwxrwt 2 mysql mysql 4.0K Nov 14 08:34 temp/

  2. Я могу создать файл в этом месте с пользователем без полномочий root.

  3. На mnt есть 600 ГБ места, так что это не должно быть проблемой.

  4. Я могу создать tmp каталог легко на корневом диске

/etc/mysql/my.cnf:

user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /mnt/mysql
tmpdir          = /mnt/temp
#tmpdir         = /var/tmp

Не допускается ли создание каталога tmp на смонтированном диске? Или еще что я делаю не так? Пожалуйста, помогите.

Это немного устарело, но я сам решил аналогичную проблему (используя / mnt / tmp в качестве системного временного каталога) и должен был выяснить, почему MySQL не запускается.

Вероятно, вы столкнулись с настройками AppArmor, которые не позволяют MySQL использовать каталоги на диске / mnt. Вам нужно будет добавить свой новый путь tmp в список разрешенных путей брони приложения MySQL.

Если вы посмотрите в свой системный журнал, вы, вероятно, увидите что-то вроде этого сообщения каждый раз, когда пытаетесь запустить сервер mysql:

type=1400 audit(1425343954.203:23): apparmor="DENIED" operation="mknod" parent=1 profile="/usr/sbin/mysqld" name="/mnt/tmp/ibMXP5lg" pid=16418 comm="mysqld" requested_mask="c" denied_mask="c" fsuid=106 ouid=106

В этом случае вам необходимо отредактировать файл:

/etc/apparmor.d/usr.sbin.mysqld

И добавляем строки:

/mnt/tmp/ r,
/mnt/tmp/** rwk,

в файл. Затем просто перезапустите AppArmor:

$ sudo service apparmor restart