Титла: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 11:42 Трябва да записвам временни файлове, които обаче да не се търкат а да стоят постоянно, докато аз ги изтъркам ръчно или чрез собствен скрипт.
/tmp се търка при ребоот и на всеки 7 дена. /var/tmp е по постоянно - не се търка при ребоот, но се търка на всеки 30 дена, според age-а на файловете. Tърся нещо стандартно за системата? или някоя друга 'tmp' директория? как може файловете в /var/tmp да оцеляват. Разбира се винаги може да направя моя собствена tmp директория в проекта и да я ползвам. Но все ми ще да е нещо стандартно. Титла: Re: Постоянна /tmp системна директория? Публикувано от: lunarvalley в Jun 04, 2019, 12:11 коя дистрибуция?
Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 12:15 Centos 5 и 6. С планове за съвместимост с centos 7.
Титла: Re: Постоянна /tmp системна директория? Публикувано от: ray в Jun 04, 2019, 12:18 Досега не знаех че /var/tmp чисти файлове по-стари от 30 дни или след 30 дни, може да е нещо специфично за дадени дистрибуции, само предполагам.
Иначе тук има някакъв обзор на разликите и развитието на двете: https://unix.stackexchange.com/questions/30489/what-is-the-difference-between-tmp-and-var-tmp Лично аз съм ползвал следното за постоянен сторидж: /home/tmp (със съответните права, както /tmp). Може и /home/username/tmp, ако е само за един потребител. PS: това обаче беше защото не ми стигаше мястото в /tmp, а не като алтернативно място за стандартните неща от /tmp. А ако е само за определен сървис и може да се промени мястото на времените файлове, пак може да свърши работа. Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 12:21 Досега не знаех че /var/tmp чисти файлове по-стари от 30 дни или след 30 дни, Това доколкото разбрах е нововъведение в systemd >:( и centos 7. https://www.thegeekdiary.com/centos-rhel-7-how-tmpfiles-clean-up-tmp-or-var-tmp-replacement-of-tmpwatch/ --- PS и в Centos 6 се търкат в /var/tmp по-старите от 30d. от /etc/cron.daily/tmpwatch Не искам също да барам конфиг файлове. Търся накакъв стандартен механизъм. Титла: Re: Постоянна /tmp системна директория? Публикувано от: ray в Jun 04, 2019, 12:34 Смътно помня че имаше някакъв начин (systemname.overload) или нещо подобно за да промениш конфигурацията в systemd без да пипаш оригиналните файлове.
Правил съм нещо такова, но беше преди години :-[ https://askubuntu.com/questions/659267/how-do-i-override-or-configure-systemd-services#659268 Титла: Re: Постоянна /tmp системна директория? Публикувано от: lunarvalley в Jun 04, 2019, 12:42 Цитат systemd ::) Титла: Re: Постоянна /tmp системна директория? Публикувано от: go_fire в Jun 04, 2019, 13:29 В такива случаи Мариян е въвел шиндошарското /storage. Щом го търпят в такава огромна компания, значи не е проклятие да се ползват практики на врага.
п.п. Ако те е страх да пипаш в кореновия каталог, то можеш да си създадеш на клончето на проекта. При такъв случай старите майстори разправяха задължително да се намира поне едно равнище по-нагоре, от това, което подаваме на Апаха за индекс. Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 13:52 п.п. Ако те е страх да пипаш в кореновия каталог, то можеш да си създадеш на клончето на проекта. В действителност ме е страх да е в клончето на проекта. Понеже файлове постоянно се създават и търкат. Затова търся нещо стандартно в кореновия каталог. Обаче така че да не съдавам допълнително директории. Например както предложи ray в /home/tmp - това е идеално. Обаче как ще стои въпртосът за един вероятен бъдещ хостинг? Там дали ще ми позволят да си създам /home/tmp ? В момента няма такива ограничения, щото всичко на сървера може да променям и създавам. Ама правя далечна сметка - така че да върви на хостинг. Титла: Re: Постоянна /tmp системна директория? Публикувано от: ray в Jun 04, 2019, 14:04 Тъй като имам известен опит с поне три хостинг компании (като поддръжка :) ) е силно препоръчително да ги питаш изрично, ако знаеш кои са ;D
Повечето имат доста ограничения и не дават достъп до неща извън потребителската ти папка, но пък "username/tmp" може да свърши работа. Обаче там няма да имаш права да насочваш услуги към тази папка а вероятно и ограничения и за други неща :-[ Всъщност ако вземеш "облачен хостинг" това може да реши проблема, но ще е по-скъп от споделения (но пък имаш гарантиран ресурс и права). На "споделения" всеки който товари много взема и от твоя ресурс, въпреки всички ограничения и т.н. Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 04, 2019, 15:01 @Naka, при стандартните cpanel-ски хостинги пътят е /home/user/tmp . Не съм забелязвал да се чисти тази директория, но трябва да проверя. Твоите права при споделените хостинги се разпростират съответно тук /home/user/. (няма да ти дадат да пишеш в /home/tmp)
Ако искаш да има съвместимост и да си сигурен, че нещо няма да ти забърши файловете, бих ти предложил да използваш: ~/temp По този начин, винаги ще си имаш темп папка, която ти да си триеш независимо къде я местиш (независимо какъв user си за съответния сървър) Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 15:06 @Naka, при стандартните cpanel-ски хостинги пътят е /home/user/tmp . Не съм забелязвал да се чисти тази директория, но трябва да проверя. Твоите права при споделените хостинги се разпростират съответно тук /home/user/. (няма да ти дадат да пишеш в /home/tmp) А при хостинг sys_get_temp_dir() https://www.php.net/manual/en/function.sys-get-temp-dir.php какво ще върне? би трябвало да върне /tmp и да мога да пиша в /tmp. (това е за друго нещо, не за конкретният проблем.) Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 04, 2019, 15:12 пробвах това:
Код но нищо не връща. Не ме бива по коденето, така че ако греша, дай точно какъв php файл да създам и ще ти го пробвам. Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 15:21 сложи един print отпред
Код: <?php Титла: Re: Постоянна /tmp системна директория? Публикувано от: remotexx в Jun 04, 2019, 15:23 Колеги, бъркате дефинициите нещо... Как това "да стоят постоянно, докато аз ги изтъркам ръчно" е дефиниция за временен файл, когато на практика си е точно постоянен или нормален файл, записваш си го когато си искаш, триеш когато искаш, ами тогава що се натискаш да го пишеш в тмп, давай в домашната при другите нормални файлове
П.П. Ей зорлем ще го направите 'обратен' тоя файл :P Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 04, 2019, 15:24 сложи един print отпред Връща това: /tmp ПП: @remote, аз затова предложих "temp". Объркването мисля че идва само от името, а не от това дали е наистина временна :) Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 15:31 а това:
Цитат touch('/tmp/somefile.txt'); @Ремо усещам се че бъркам дефиницията........ама не съвсем. Файла подлежи на търкане след време. Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 04, 2019, 15:39 bool(true)
пп: Но пак казвам: не те съветвам на споделен хостинг да използваш системния тмп. Той се следи обикновено и от защитни софтуери и може да ти затрие файловете още по-бързо от системните кронове. Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 04, 2019, 15:44 Цитат пп: Но пак казвам: не те съветвам на споделен хостинг да използваш системния тмп.Това е за друго. Ако се използва /tmp времето за съществуване на файла ще е 2-3 сек. максимум. Значи при хостинг свободно може да се пише в /tmp и вероятно в /var/tmp щото е със същият премишън. тогава защо при cpanel-ските хостинги има път /home/user/tmp ??? За такива като мене ли? Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 04, 2019, 16:19 Предполагам , да :) В цпанелския темп седят някакви други работи и мисля че не се чисти. Ето ти пример: Цитат tmp# ls а в сървърния не знам точно кога пишеш. Имай предвид, че има и разлики дали към цпанела има и cloudlinux или не. За това ти предлагам и ~/temp . Такава не съм срещал и аз винаги си я правя за такива цели. Титла: Re: Постоянна /tmp системна директория? Публикувано от: ray в Jun 04, 2019, 16:58
Вече около 5 години не се занимавам с хостинги, но по памет потребителите работят в някакъв вид jail, и там имат създаден /tmp etc., но той сочи към /user/tmp. По принцип в “затвора” се копират всички необходими неща. Но нямаш достъп до истинския /tmp Проверете, създайте нещо и вижте да не е там :) Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 05, 2019, 09:51 @ray така е както казваш, само дето при нас на claudlinuxa си отиват в /home/user/.cagefs/tmp, a не отиват и в /home/user/tmp . Титла: Re: Постоянна /tmp системна директория? Публикувано от: ray в Jun 05, 2019, 11:11 Дам, нормално, нещата се развиват 8) дори при cPanel !
https://www.servercake.blog/cagefs-security/ Пак да пиша че може да ползва и "dedicated/virtual/cloud" server, там ще си има пълни права. Защото не знам какво ще стане ако се наложи рестарт, нещо друго на сървъра със споделени хостинги. Не знам каква е разликата в цените, но още преди 5 години 'облаците" вече навлизаха доста бурно ::) Титла: Re: Постоянна /tmp системна директория? Публикувано от: Naka в Jun 05, 2019, 11:25 За това ти предлагам и ~/temp . Такава не съм срещал и аз винаги си я правя за такива цели. А коя е home директорията? (при хостинг?) при мен Код: var_dump(realpath('~')); A с какъв пермишън(user) ще се запише един файл например в /tmp ? при мен (Центос) е с apache.apache https://stackoverflow.com/questions/20535474/php-get-user-home-directory-for-virtual-hosting/21473475 Цитат On most regular servers, those daemons (apache, nginx, etc.) have no real "home directory". Титла: Re: Постоянна /tmp системна директория? Публикувано от: ray в Jun 05, 2019, 12:03 Най-вероятно ще бъде собственост на твоя потребител, не на някой системен или системна група.
Мисля че все още широко се ползва suEXEC и suPHP: https://help.myhosting.com/hc/en-us/articles/360002392424--cPanel-Enable-or-Disable-Apache-suEXEC-and-suPHP https://documentation.cpanel.net/display/EA/Apache+Module%3A+SuPHP Но нека @makeme каже, тук по-скоро посочвам някои доста използвани инструменти при споделения хостинг. Също така не знам при дадена хостинг компания как се изпълнява php-кода - mod_php | fastCGI | suPHP ? PS: най-сигурния начин за тестване е да купиш 1-2 хостинга за 2-3 месеца (няма да е скъпо) ако може така и там да тестваш реално. Това ако си сигурен че ще ти трябва и хостинг, единия е добре да е на cloud. Титла: Re: Постоянна /tmp системна директория? Публикувано от: makeme в Jun 05, 2019, 15:27 Най-вероятно ще бъде собственост на твоя потребител, не на някой системен или системна група.Точно това е, че никога не се знае. На клаудлинукс обикновено е lsapi ($2). При стоковите вече се ползва PHP-FPM (cgi) ($2). И всички останали изброени по-горе може да са в някакъв различен сетъп. От там като сметнеш че говорим само за цпанели, а има и други сетъпи (плеск например) -> sky is the limit :) Иначе самия user по всички споделени хостинги стъпва върху идеята за chroot. За PHP, не мисля че ще можеш да ползваш сървърните променливи, а по-скоро някакви shell exec команди. Другият вариант е стандартния (както са CMS-ите) -> от документ руута нататък. (...public_html/tmp..). По този начин където и да мигрираш променливата ще ти върне тамошния document root. |