Welke specifieke versie van Ubuntu is dit en is deze Ubuntu Server Edition?
Recente Ubuntu Server-edities (zoals 10.04) worden geleverd met AppArmor en het profiel van MySQL staat mogelijk standaard in de afdwingende modus. U kunt dit controleren door sudo aa-status
. uit te voeren zoals zo:
# sudo aa-status
5 profiles are loaded.
5 profiles are in enforce mode.
/usr/lib/connman/scripts/dhclient-script
/sbin/dhclient3
/usr/sbin/tcpdump
/usr/lib/NetworkManager/nm-dhcp-client.action
/usr/sbin/mysqld
0 profiles are in complain mode.
1 processes have profiles defined.
1 processes are in enforce mode :
/usr/sbin/mysqld (1089)
0 processes are in complain mode.
Als mysqld is opgenomen in de afdwingingsmodus, dan is het waarschijnlijk degene die het schrijven weigert. Inzendingen worden ook geschreven in /var/log/messages
wanneer AppArmor de schrijfacties/toegangen blokkeert. Wat u kunt doen is /etc/apparmor.d/usr.sbin.mysqld
bewerken en voeg /data/
. toe en /data/*
onderaan als volgt:
...
/usr/sbin/mysqld {
...
/var/log/mysql/ r,
/var/log/mysql/* rw,
/var/run/mysqld/mysqld.pid w,
/var/run/mysqld/mysqld.sock w,
**/data/ r,
/data/* rw,**
}
En laat AppArmor de profielen opnieuw laden.
# sudo /etc/init.d/apparmor reload
WAARSCHUWING:met de bovenstaande wijziging kan MySQL lezen en schrijven naar de /data-directory. We hopen dat je de veiligheidsimplicaties hiervan al hebt overwogen.