Sto solo testando una nuova installazione di Ubuntu (Vivid 15.04) su Vagrant e sto riscontrando problemi con mysql e registrandomi in una posizione personalizzata.
In /var/log/syslog
Ottengo
/usr/bin/mysqld_safe: cannot create /var/log/mysqld.log: Permission denied
Se io ls -l /var
ottengo
drwxrwxr-x 10 root syslog 4096 Jun 8 19:52 log
Se guardo in / var / log il file non esiste
Pensavo di aver temporaneamente disabilitato Apparmor solo per isolare se fosse quello o qualcos'altro che causava il problema, ma non sono sicuro che stia ancora creando un problema (modifica: pensa che potrebbe ancora essere abilitato, quindi non sono sicuro se questo è un problema o semplice permessi).
Se provo a creare manualmente il file come mysql, anch'io mi viene negato (ho tentato l'accesso bash per testare, lo rimuoverò dopo).
touch /var/log/mysql.log
touch: cannot touch ‘/var/log/mysql.log’: Permission denied
Se guardo un altro server in esecuzione (centos) ha le autorizzazioni di cui sopra (e scrive come utente mysql), quindi mi chiedo come mysql ottenga normalmente le autorizzazioni per accedere alla directory / var / log e come posso farlo accedere a quella cartella tramite il normale funzionamento?
Ecco il mio profilo apparmor per mysql
/usr/sbin/mysqld {
#include
#include
#include
#include
#include
capability dac_override,
capability sys_resource,
capability setgid,
capability setuid,
network tcp,
/etc/hosts.allow r,
/etc/hosts.deny r,
/etc/mysql/** r,
/usr/lib/mysql/plugin/ r,
/usr/lib/mysql/plugin/*.so* mr,
/usr/sbin/mysqld mr,
/usr/share/mysql/** r,
/var/log/mysqld.log rw,
/var/log/mysqld.err rw,
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
/var/log/mysql/ r,
/var/log/mysql/* rw,
/var/run/mysqld/mysqld.pid rw,
/var/run/mysqld/mysqld.sock w,
/run/mysqld/mysqld.pid rw,
/run/mysqld/mysqld.sock w,
/sys/devices/system/cpu/ r,
/var/log/mysqld.log rw,
# Site-specific additions and overrides. See local/README for details.
#include
}
Ho anche aggiunto il file sopra al directoru apparmor.d / disable
Nota: ho aggiunto questa riga /var/log/mysqld.log rw
, non era originariamente lì e ha lo stesso problema (dopo aver fatto il ricaricamento di un apparmor).
apparmor module is loaded.
5 profiles are loaded.
5 profiles are in enforce mode.
/sbin/dhclient
/usr/lib/NetworkManager/nm-dhcp-client.action
/usr/lib/NetworkManager/nm-dhcp-helper
/usr/lib/connman/scripts/dhclient-script
/usr/sbin/tcpdump
0 profiles are in complain mode.
1 processes have profiles defined.
1 processes are in enforce mode.
/sbin/dhclient (565)
0 processes are in complain mode.
0 processes are unconfined but have a profile defined.
Jun 8 20:33:33 vagrant-ubuntu-vivid-64 systemd[1]: Starting MySQL Community Server...
Jun 8 20:33:33 vagrant-ubuntu-vivid-64 mysqld_safe[11231]: 150608 20:33:33 mysqld_safe Logging to '/var/log/mysqld.log'.
Jun 8 20:33:33 vagrant-ubuntu-vivid-64 mysqld_safe[11231]: touch: cannot touch ‘/var/log/mysqld.log’: Permission denied
Jun 8 20:33:33 vagrant-ubuntu-vivid-64 mysqld_safe[11231]: chmod: cannot access ‘/var/log/mysqld.log’: No such file or directory
Jun 8 20:33:33 vagrant-ubuntu-vivid-64 mysqld_safe[11231]: 150608 20:33:33 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Jun 8 20:33:33 vagrant-ubuntu-vivid-64 mysqld_safe[11231]: /usr/bin/mysqld_safe: 126: /usr/bin/mysqld_safe: cannot create /var/log/mysqld.log: Permission denied