Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

MySQL+ACL

0 views
Skip to first unread message

SZÉKELYI Szabolcs

unread,
Oct 24, 2009, 8:05:29 PM10/24/09
to

Udv!

Adott egy pendrive, amin -- tobbek kozott -- egy MySQL adatbazis van,
amit tobb szervernek kellene hasznalnia (persze nem parhuzamosan). A
problema ott kezdodik, hogy az uidok elterese miatt az egyik szerver nem
latja a fajlokat, amiket a masik letrehozott rajta. Az egyik Debian
Lenny, a masik Ubuntu Jaunty, az alabbi szenvedeseket az utobbin
kovettem el.

Gondoltam sebaj, majd ACL-ekkel adok olvasasi jogot es jo lesz. De nem.
A MySQL ugy viselkedik, mintha valahogy figyelmen kivul hagyna az ACL-eket:

1. $ sudo sudo -u mysql file /var/lib/mysql/adatbazis/tabla.frm
/var/lib/mysql/adatbazis/tabla.frm: MySQL table definition file Version 10

2. Kis C program strace logja, ami -- elvileg -- ugyanazt csinalja, mint
a szerver:

chdir("/var/lib/mysql/") = 0
setgid32(123) = 0
setuid32(112) = 0
open("./adatbazis/tabla.frm", O_RDONLY|O_LARGEFILE) = 3
close(3) = 0

Tok jo, az ACL tehat mukodik, ehhez kepest a szerver strace logja:

chdir("/var/lib/mysql/") = 0
setgid32(123) = 0
setuid32(112) = 0
[pid 11755] open("./adatbazis/tabla.frm", O_RDONLY|O_LARGEFILE) = -1
EACCES (Permission denied)


Van valami, ami elkeruli a figyelmemet? Teljesen ertetlenul allok a
dolog elott.

Koszonom,
--
cc

_________________________________________________
linux lista - li...@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux

Gábor Lénárt

unread,
Oct 26, 2009, 5:10:18 AM10/26/09
to

On Sun, Oct 25, 2009 at 02:05:29AM +0200, SZÉKELYI Szabolcs wrote:
[...]

> chdir("/var/lib/mysql/") = 0
> setgid32(123) = 0
> setuid32(112) = 0
> [pid 11755] open("./adatbazis/tabla.frm", O_RDONLY|O_LARGEFILE) = -1
> EACCES (Permission denied)
>
>
> Van valami, ami elkeruli a figyelmemet? Teljesen ertetlenul allok a
> dolog elott.

Csak tipp: Esetleg az apparmor nem okoz gondot ubuntu-n? dmesg nem mutat
olyasmi apparmor uzeneteket, hogy ezt bizony a mysqld nem teheti meg? Ha
igen, akkor editalj apparmor profilet, vagy szabadulj meg az osszes apparmor
csomagtol ubuntuban, esetleg idolegesen kapcsold ki. Bar mondjuk a
/var/lib/mysql benne szokott lenni, hacsak nem symlinkeltel oda valamit,
vagy hasonlo, es nem is az a "valos" path ... Bar nem vagyok biztos benne,
hogy mysqld-re van apparmor profile, de hatha ...

SZÉKELYI Szabolcs

unread,
Oct 30, 2009, 7:36:31 AM10/30/09
to

Gábor Lénárt wrote:
> On Sun, Oct 25, 2009 at 02:05:29AM +0200, SZÉKELYI Szabolcs wrote:
> [...]
>> chdir("/var/lib/mysql/") = 0
>> setgid32(123) = 0
>> setuid32(112) = 0
>> [pid 11755] open("./adatbazis/tabla.frm", O_RDONLY|O_LARGEFILE) = -1
>> EACCES (Permission denied)
>>
>>
>> Van valami, ami elkeruli a figyelmemet? Teljesen ertetlenul allok a
>> dolog elott.
>
> Csak tipp: Esetleg az apparmor nem okoz gondot ubuntu-n? dmesg nem mutat
> olyasmi apparmor uzeneteket, hogy ezt bizony a mysqld nem teheti meg? Ha
> igen, akkor editalj apparmor profilet, vagy szabadulj meg az osszes apparmor
> csomagtol ubuntuban, esetleg idolegesen kapcsold ki. Bar mondjuk a
> /var/lib/mysql benne szokott lenni, hacsak nem symlinkeltel oda valamit,
> vagy hasonlo, es nem is az a "valos" path ... Bar nem vagyok biztos benne,
> hogy mysqld-re van apparmor profile, de hatha ...

Bingo.

Van ra profile, es persze, hogy az adatbazis fajlokat symlinkeltem,
hiszen azok a pendrive-on vannak. Arra pedig nem volt olvasasi joga per
apparmor. Plusz egy sor a profile-jaba es mukodik szepen.

Koszonom,
--
cc

0 new messages