Hogyan férhetek hozzá php-ből egy pendrive-hoz saját gépen?
Sziasztok!
Nem sikerül hozzáférnem a pedrive-n lévő fájlokhoz PHP alól. (Ubuntut használok.) Ha beírom a csatolási pont címét a böngészőbe, akkor látom a tartalmát, de ugyanezt PHP-ből már nem tudom megnyitni. A mappa jogosultsága rwx a tulajnak, a többieknek nincsen semmilyen joga. Ha MC-ben a haladó chown-al átállítom (777), akkor sem változik semmi, még a mappa jogosultság sem.
Az etc/fstab-ban nincs megemlítve ez az usb-s csatlakozási pont.
A php melyik felhasználói névvel fut? A print(exec('whoami',$kimenet)); print_r($kimenet); parancsokra csak egy üres tömböt kapok.
Mi lehet a hiba? Hogy tudok hozzáférni a fájlokhoz?
Az opendir() paraccsal ki tudom listázni a /home/user mappát, de a /media-t már nem. Sőt már a /home mappát sem.
Az exec() paranccsal is próbálkoztam már. Ez majd ahhoz fog kelleni, hogy át tudjak helyezni fájlokat.
■ Nem sikerül hozzáférnem a pedrive-n lévő fájlokhoz PHP alól. (Ubuntut használok.) Ha beírom a csatolási pont címét a böngészőbe, akkor látom a tartalmát, de ugyanezt PHP-ből már nem tudom megnyitni. A mappa jogosultsága rwx a tulajnak, a többieknek nincsen semmilyen joga. Ha MC-ben a haladó chown-al átállítom (777), akkor sem változik semmi, még a mappa jogosultság sem.
Az etc/fstab-ban nincs megemlítve ez az usb-s csatlakozási pont.
A php melyik felhasználói névvel fut? A print(exec('whoami',$kimenet)); print_r($kimenet); parancsokra csak egy üres tömböt kapok.
Mi lehet a hiba? Hogy tudok hozzáférni a fájlokhoz?
Az opendir() paraccsal ki tudom listázni a /home/user mappát, de a /media-t már nem. Sőt már a /home mappát sem.
Az exec() paranccsal is próbálkoztam már. Ez majd ahhoz fog kelleni, hogy át tudjak helyezni fájlokat.
Ha Apache-on keresztül hívod
és ahova az usb-t felcsatolod
Továbbra sem sikerül; biztonság?
A csatolási pont /media/. Milyen jog vagy csoport tagság kell ahhoz, hogy hozzáférjek a /media mappa tartalmához?
Ha növelem az apache felhasználó jogait, akkor az jelent valamilyen többlet biztonsági kockázatot egy otthoni gépen?
Esetleg a /media könyvtárra
Nem működik
Megnéztem a jogosultságokat:
/media
- tulaj: root rwx
- csoport: root r-x
- mások: r-x
/media/cs_meghajto - Ezek nem állíthatók át.
- tulaj: user rwx
- csoport: user ---
- mások: ---
Korábban betettem a www-data felhasználót az user csoportba és most legutóbb a root csoportba is, de ennek ellenére nem működik.
Ez utóbbi csökkenti a gép biztonságát?
Csökkenti
mount
mount
parancsman
-ját. Be lehet mountolni egy meghajtót egy másik felhasználóval is, és akkor hozzá tudsz férni az azon levő adatokhoz is.Így sem megy...
(sudo mount /dev/sdb1 /media/pendrive -o uid=33
A csatolás jó volt.)
Hibaüzenet
Nincs hibaüzenet
display_errors=On
display_startup_errors=On
error_reporting=E_ALL & ~E_NOTICE
html_errors=On
log_errors=On
Még a következő kettőt átállítva sem kapok hibaüzenetet.
track_errors = On
error_reporting=E_ALL & ~E_STRICT
Hogyan tovább?
Ha jól sejtem, van root jogod
root userből:
su - www-data
Ha sikerül, akkor átmész a problémás könyvtárba és megpróbálod megnyitni azt a fájlt, amit PHP-ből nem tudsz.
Így biztosan kapsz hibaüzenetet vagy a cd-re vagy a cat-re.
cd-s hibaüzenetek
A sudo su www-data parancs hatására csak egy $ jel jelent meg a terminálban. (A su www-data nem sikerült, mert nem tudom a www-data jelszavát.) Ezek nem tudom, hogy normálisak-e.
Elkezdtem lépegetni a cd-vel, a /media és a /media/pendrive is sikerült. Felcsatlakoztattam a pendrivet a szokásos módon (egyszerűen csak bedugtam) és a cd 0000-s0s0 parancsra azt kaptam, hogy:
cd: 16: can't cd to 0000-s0s0
Majd felcsatlakoztatattam sudo mount /dev/sdb1 /media/pendrive -o uid=33 paranccsal, cd pendrive erre a cd: 18: can't cd to pendrive üzenetet kaptam.
Ez mit jelent? A man cd parancsra, No manual entry for cd...
cd
cd
az a change directory, azaz könyvtárváltás. Ha nem tudsz belépni abba a könyvtárba, akkor ott valami gondok vannak, ezért nem is fog menni PHP-ból. Valószínűleg valami jogosultsági vagy hardveres / szoftveres probléma van.Ha van gmail accountod, akkor
Nincsen
Nem t'om, mi a megoldás, csak
Az eszébe jutott-e már
Miért ne látna?
Engem már szivatott meg
Ja, bocs, akkor