Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]PHP a uprawnienia chmod...
Zibi0802
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 24.03.2006

Ostrzeżenie: (0%)
-----


Usiłuję wykonać kopiowanie pliku za pomocą PHP.

Czyli shell_exec(" ....") ... i to działa.

Niestety działa tylko tam gdzie user apache ma uprawnienia ( czyli w moim przypadku katalog tmp ).
Skrypt wytwarza mi tam plik.

Muszę wytworzony plik textowy wrzucać do różnych katalogów userów ( /home/user )

Chmod by nadać uprawnienia nie działa ( bo działa tylko z poziomu osoby wykonującej skrypt czyli apache ), a ten z kolei nie ma do tego uprawnień. ( chmod($plik,0777); )

Cel:
Skopiowanie pliku XXX z /tmp/ do /home/user1/
( user1 jest przykładowym katalogiem i w warunkach roboczych będzie zmienną ... )
Pytania:
1. Jak nadać uprawnienia "na chwilę" na skopiowanie tego pliku ( oczywiście chodzi mi o zmianę uprawnień z poziomu skryptu NIE z poziomu wysyłki na FTP czy też serwera ) ?
2. Może jest jakiś inny sposób niż nadanie uprawnień na chwilę ?

Ten post edytował Zibi0802 21.07.2009, 13:23:33
Go to the top of the page
+Quote Post
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Na 1 i 2 sam sobie odpowiedziałeś wcześniej:
Cytat
Chmod by nadać uprawnienia nie działa ( bo działa tylko z poziomu osoby wykonującej skrypt czyli apache ), a ten z kolei nie ma do tego uprawnień. ( chmod($plik,0777); )


Gdyby takie szopki były możliwe, mógłbyś dowolnie modyfikować zawartości katalogów innych userów, a na to pozwalają jedynie kijowo skonfigurowane serwery www.

Ten post edytował blooregard 21.07.2009, 13:38:05


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
Zibi0802
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 24.03.2006

Ostrzeżenie: (0%)
-----


Ale ja chcę tylko zeby user logował się loginem/hasłem i żeby plik wytworzony przez skrypt lądował w jego katalogu domowym...

Jest jakaś możliwość ?
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ok, pokaż sytuację praktyczna.

Bo jeśli chodzi o świeże profile, to się robi inaczej. Z mojej wiedzy nt. unixów wynika, że aby osiągnąć to, co chcesz, to jakiś proces musiałby działać na prawach roota i je kopiować.

W praktyce, niebezpieczne...

Ale jest rozwiązanie pośrednie - zadania crona zwykle są startowane przez roota, więc tam mógłbyś dać skrypt, który to wszystko przenosi.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Zibi0802
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 24.03.2006

Ostrzeżenie: (0%)
-----


Praktycznie:

1. Uzytkownik idzie na urlop.
2. Ustawia sobie autoodpowiedź i ... przychodzi do mnie żeby mu poczte na osobę zastępującą przekierować.
3. Chciałbym z poziomu skryptu dać mu możliwość po zalogowaniu wskazania osoby do której mają również iść emaile.
4. W związku z tym wytwarzam skryptem plik .forward w katalogu /tmp na chwilę ( w środku odpowiednie nazwy kont pocztowych - podane przez usera )
5. Chcę ten plik skopiować do katalogu usera żeby przesył poczty zadziałał.
Go to the top of the page
+Quote Post
webdice
post
Post #6


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Nie wiem czy Cię dobrze zrozumiałem. Zainteresuj się suPHP.
Go to the top of the page
+Quote Post
Zibi0802
post
Post #7





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 24.03.2006

Ostrzeżenie: (0%)
-----


Szukam raczej jakiegoś prostego rozwiązania, bądź skryptu ...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 23:34