Estou usando o encfs para codificar o diretório /var/lib/mysql
data, mas o mysql retorna Errcode: 13
em qualquer tentativa de criar tabelas ou bancos de dados.
Para fazer isso, movi todos os arquivos para um diretório temporário, criei o encfs e movi o conteúdo temporário para o novo fs montado.
Também tenho alguns scripts que param o apache e o mysql, montam os diretórios (eu também codifico /var/www
, sem qualquer problema), e depois os reinicio.
/var/lib/mysql
e todos os arquivos e subdiretórios são usuário e grupo mysql
, com permissões de gravação e leitura:
$ ls /var/lib/mysql -cal
total 28996
drwxrwxrwx 8 mysql mysql 4096 ene 9 22:20 .
drwxr-xr-x 68 root root 4096 ene 9 19:10 ..
-rw-r--r-- 1 mysql mysql 0 ene 9 21:07 debian-5.5.flag
-rw-rw---- 1 mysql mysql 18874368 ene 9 21:07 ibdata1
-rw-rw---- 1 mysql mysql 5242880 ene 9 22:20 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 ene 9 21:07 ib_logfile1
drwx------ 2 mysql mysql 16384 ene 9 21:07 mysql
-rw-rw---- 1 mysql mysql 6 ene 9 21:07 mysql_upgrade_info
drwx------ 2 mysql mysql 4096 ene 9 21:07 performance_schema
drwx------ 2 mysql mysql 4096 ene 9 21:07 phpmyadmin
drwx------ 2 mysql mysql 4096 ene 9 21:07 database1
drwx------ 2 mysql mysql 4096 ene 9 21:07 database2
drwx------ 2 mysql mysql 4096 ene 9 21:07 test
$ sudo ls /var/lib/mysql/phpmyadmin -cal
total 440
drwx------ 2 mysql mysql 4096 ene 9 21:07 .
drwxrwxrwx 8 mysql mysql 4096 ene 9 22:20 ..
-rw-rw---- 1 mysql mysql 65 ene 9 21:07 db.opt
-rw-rw---- 1 mysql mysql 8682 ene 9 21:07 pma_bookmark.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_bookmark.MYD
-rw-rw---- 1 mysql mysql 1024 ene 9 21:07 pma_bookmark.MYI
-rw-rw---- 1 mysql mysql 12964 ene 9 21:07 pma_column_info.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_column_info.MYD
-rw-rw---- 1 mysql mysql 4096 ene 9 21:07 pma_column_info.MYI
-rw-rw---- 1 mysql mysql 8704 ene 9 21:07 pma_designer_coords.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_designer_coords.MYD
-rw-rw---- 1 mysql mysql 2048 ene 9 21:07 pma_designer_coords.MYI
-rw-rw---- 1 mysql mysql 8730 ene 9 21:07 pma_history.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_history.MYD
-rw-rw---- 1 mysql mysql 4096 ene 9 21:07 pma_history.MYI
-rw-rw---- 1 mysql mysql 8644 ene 9 21:07 pma_pdf_pages.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_pdf_pages.MYD
-rw-rw---- 1 mysql mysql 1024 ene 9 21:07 pma_pdf_pages.MYI
-rw-rw---- 1 mysql mysql 8800 ene 9 21:07 pma_relation.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_relation.MYD
-rw-rw---- 1 mysql mysql 4096 ene 9 21:07 pma_relation.MYI
-rw-rw---- 1 mysql mysql 8708 ene 9 21:07 pma_table_coords.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_table_coords.MYD
-rw-rw---- 1 mysql mysql 2048 ene 9 21:07 pma_table_coords.MYI
-rw-rw---- 1 mysql mysql 8656 ene 9 21:07 pma_table_info.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_table_info.MYD
-rw-rw---- 1 mysql mysql 2048 ene 9 21:07 pma_table_info.MYI
-rw-rw---- 1 mysql mysql 9149 ene 9 21:07 pma_tracking.frm
-rw-rw---- 1 mysql mysql 0 ene 9 21:07 pma_tracking.MYD
-rw-rw---- 1 mysql mysql 2048 ene 9 21:07 pma_tracking.MYI
-rw-rw---- 1 mysql mysql 8652 ene 9 21:07 pma_userconfig.frm
-rw-rw---- 1 mysql mysql 28 ene 9 21:07 pma_userconfig.MYD
-rw-rw---- 1 mysql mysql 2048 ene 9 21:07 pma_userconfig.MYI
E verifique se o deamon é executado como mysql
:
user@server:~$ sudo ps -eo pid,pgrp,ppid,comm,cgroup,euser,egroup,fuser,fgroup,ruser,rgroup,suser,sgroup,label| grep mysql
2475 2475 1 mysqld - mysql mysql mysql mysql mysql mysql mysql mysql /usr/sbin/mysqld
O mais estranho é que o serviço é executado e o mysql é capaz de ler todos os arquivos (mostra bancos de dados e tabelas criados anteriormente sem problemas). Mas quando tento criar ou modificar um banco de dados ou tabela, ele retorna Errcode 13
, mas posso atualizar as tabelas existentes.
Além disso, o SELinux está desabilitado:
$ sudo sestatus
SELinux status: disabled
E o mysqld está no modo de reclamação em apparmor:
~$ sudo apparmor_status
apparmor module is loaded.
17 profiles are loaded.
16 profiles are in enforce mode.
/sbin/dhclient
/usr/bin/evince
/usr/bin/evince-previewer
/usr/bin/evince-previewer//launchpad_integration
/usr/bin/evince-previewer//sanitized_helper
/usr/bin/evince-thumbnailer
/usr/bin/evince-thumbnailer//sanitized_helper
/usr/bin/evince//launchpad_integration
/usr/bin/evince//sanitized_helper
/usr/lib/NetworkManager/nm-dhcp-client.action
/usr/lib/connman/scripts/dhclient-script
/usr/lib/cups/backend/cups-pdf
/usr/lib/lightdm/lightdm/lightdm-guest-session-wrapper
/usr/lib/lightdm/lightdm/lightdm-guest-session-wrapper//chromium_browser
/usr/sbin/cupsd
/usr/sbin/tcpdump
1 profiles are in complain mode.
/usr/sbin/mysqld
2 processes have profiles defined.
1 processes are in enforce mode.
/usr/sbin/cupsd (742)
1 processes are in complain mode.
/usr/sbin/mysqld (2475)
0 processes are unconfined but have a profile defined.
Então, não sei onde mais devo pesquisar.