درود خدمت همه دوستان
آیا در لینوکس و سیستم عامل Centos دستوری برای حذف تمام دیتا ها (شامل دایرکتوری ها،فایل منیجر، بک آپ ها و دیتابیس) در یک زمان مشخص وجود داره ؟
مثلا این دستور داده بشه که 2 ماه دیگه تو فلان ساعت هر آن چیزی که وجود داره حذف بشه (حتی بک آپ ها)
تو نت سرچ کردم مواردی وجود داره ولی خوب چون امکان تست وجود نداره نمیدونم کار میکنه یا نه ؟
اگه تجربه ای تو این زمینه دارید ممنون میشم بفرمایید
ممنون از توجه شما
لینک کوتاه اشتراک گذاری
سلام
@sinayas1
ببینید کامند حذف که خب هست!
شما میتونید کرون ست کنید که هم 20 روز هر 4 روز
هر 2 ساعت
مسیر بدید اونجا رو پاک کنه!
rm
@Alimotreb
ممنون از شما
طبق راهنمایی شما برای حذف دایرکتوری از دستور زیر استفاده کردم و به خوبی عمل کرد
*/5 * * * * rm -rf /home/test/
جدا از دستور بالا من میخوام یک فایل PHP رو هم اجرا کنم از دستورات زیر استفاده کردم ولی عمل نکرد
*/5 * * * * php -f /home/user/public_html/drop.php/
*/5 * * * * php -f /usr/local/bin/php/home/user/public_html/drop.php/
*/5 * * * * php -f /usr/local/bin/php /home/user/public_html/drop.php/
*/5 * * * * php /home/user/public_html/drop.php/
*/5 * * * * php -q /home/user/public_html/drop.php/
لینک کوتاه اشتراک گذاری
سلام
@sinayas1
مورد اول که اوکیه
برای مورد دوم
*/5 * * * * php -q /home/user/public_html/drop.php اینطوری قرار بدید جای user هم یوزرش رو قرر بدید
ادرس دقیق فایل رو منظورم هست که بدید به کرون جاب
باید اجرا بشه و میشه بدون مشکل ، اگر تغییری نمیبینید احتمال زیاد کد PHP رو باید بررسی کنید
@Alimotreb
ممنون از شما این کامند هم کار نکرد
اون یوزر رو هم تغییر میدم به اسم دایرکتوری خودم
کد PHP هم چیز خاصی نیست برای حذف جدول هست و وقتی تو مرورگر باز میکنم به درستی پاک میکنه جدول رو
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// sql to delete a record
$sql = "DELETE FROM MyGuests WHERE id=3";
// use exec() because no results are returned
$conn->exec($sql);
echo "Record deleted successfully";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
لینک کوتاه اشتراک گذاری
سلام
@sinayas1
ظاهرا که در کد ایرادی نیست
به جای php در کامندتون ، خط زیر رو بزارید و کرون رو اجرا کنید ببینید اجرا میشه
/usr/local/bin/php
@Alimotreb
متاسفانه اینم اجرا نشد !
لینک کوتاه اشتراک گذاری
سلام
@sinayas1
سطح دسترسی فایل رو 755 کنید تست بگیرید
@Alimotreb
انجام دادم کامندهای مختلف رو هم تست کردم ولی بازم اجرا نشد !
لینک کوتاه اشتراک گذاری
بدون کرون
@sinayas1
دستور رو تو SSH بزنید
بزنید php -q و ...
ببینید اجرا میشه یا نه تا بگم ایراد کارتون کجاست!
@Alimotreb
ممنون از وقتی که میزارید
تو SSH که اجرا کردم این خطا رو داد ولی دیتابیس پاک شد و فایل کار کرد
PHP Warning: PHP Startup: Unable to load dynamic library 'memcached.so' (tried: /usr/local/lib/php/extensions/no-debug-non-zts-20180731/memcached.so (/usr/local/lib/php/extensions/no-debug-non-zts-20180731/memcached.so: cannot open shared object file: No such file or directory), /usr/local/lib/php/extensions/no-debug-non-zts-20180731/memcached.so.so (/usr/local/lib/php/extensions/no-debug-non-zts-20180731/memcached.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
DB deleted successfullyYou have new mail in /var/spool/mail/root
لینک کوتاه اشتراک گذاری
سلام
@sinayas1
memcache رو باید توی PHP فعال کنید
execution_time رو هم ببرید بالا از فایل php.ini
به احتمال زیاد موردتون رفع میشه
ورژنتون هم اگر 7.2 هست 7.1 کنید تست بگیرید