jogosultság kérdés: sudo vs igazi root

Fórumok

Sziasztok!

Lenne egy egyszerű problémám: Nincs írási jogom a /var/log könyvtárba sudo-val pedig a tulajdonos root a group is root és rwx joga van a rootnak ide. Viszont ha su-val átmegyek root userbe akkor tudok írni a log könyvtárba... mi a különbség a sudo és a valódi root felhasználó között?

TinyCore 3.6-os Linuxon van ez a jelenség... lehet hogy ennek a disztrónak a bugja?

így néz ki a probléma:

tc@localhost ;) whoami
tc
tc@localhost ;) sudo whoami
root

tc@localhost ;) ls -l /var | grep log
drwxr-xr-x 3 root root 480 máj 27 20:30 log/

tc@localhost ;) sudo echo "test" >/var/log/test
-sh: can't create /var/log/test: Permission denied

tc@localhost ;) sudo su
root@localhost ;) echo "test" > /var/log/test
root@localhost ;)

Hozzászólások

"lehet hogy ennek a disztrónak a bugja?"
Nem. Ez a shell normális működése. Érdemes elolvasni a shell manjában az átirányításokról szóló részt. A te példádban ugyanis a sudo parancs kimenetét próbálod az eredeti, felhasználóként futó shellben átirányítani.

sudo sh -c 'echo "test" >/var/log/test'

A sudo manját is érdemes átfutni, van is példa erre:

man sudo:
To make a usage listing of the directories in the /home partition. Note that this runs the commands in a sub-shell to make the cd and file redirection work.

$ sudo sh -c "cd /home ; du -s * | sort -rn > USAGE"