27. oktober 2002 - 21:54Der er
9 kommentarer og 2 løsninger
Slet fil (Linux)
Hej folkens. Jeg sidder og roder lidt med en skript hvor jeg gerne skulle få lov at slette nogle bestemte filer. Desværre så kører det ikke helt som planlagt, da jeg får følgende fejlbesked:
---
Warning: chmod failed: Operation not permitted in /var/www/html/filer/test/index.php on line 74
Warning: unlink() failed (No such file or directory) in /var/www/html/filer/test/index.php on line 75
--- Som i nok ser så forsøger jeg at få følgende til at virke ;)
Problemet ligger i at du kører som den bruger din www-server kører med. Og hvis den ikke er ejer af den fil du prøver at køre chmod og unlink på, så får du den fejl du beskriver. Sørg for at filen er ejet af den bruger som www-serveren kører under, så virker det. Ellers må du lave et suid perl script som fx kører som root som kan lave det du har brug for og så kalde det med exec() fra din php-fil.
oz2kas << Det vil give nøjagtigt samme problem, da det ikke handler om hvordan man udfører kommandoen, men om hvilke privilegier den bruger har som serveren kører under.
Er det en eller anden opsætning jeg skal have gjort i enten Apache eller PHP for at tillade mig brugen af chmod kommandoen? Unlink failer ligeledes med:
---
Warning: unlink() failed (Permission denied) in /var/www/html/eurolance/filemanager/users/index.php on line 76
--- Øger gerne flere points hvis vi kan nå et mål her :O)
Ovenstående gør at perl-scriptet bliver udført som "root" *BEWARE!*
den kan du så kalde fra dit php-script med:
exec("delfile.pl $fulldelpath",$result); if ($result) echo $result;
Så kan det lade sig gøre. Men du skal lige være opmærksom på at delfile.pl er et djævelsk værktøj i den udformning jeg har lavet den i, da den ikke tjekker NOGET SOM HELST, og en ondsindet bruger derfor kan slette en hvilken som helst fil med den.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.