можно ли на хостинге удалить файлы с ftp без возможности восстановить их ? PHP: <?php $filename='bases.txt'; unlink($filename); ?> unlink удалять без возможности восстановить ? проверяя на своём локалхосте он удаляет минуя корзины, файл можно восстановить специальными программами для восстановления удалённых данных... есть ли способы безвозвратного удаления ?
Gain, как вариант - сначала полностью затереть случайными значениями, а после удалить. Приблизительно так PHP: <?php $s = rand(0,100000000); //открываем файлы, очищаем их, пишем в них $filename = '1.php'; $handle = fopen($filename, "w"); fwrite($handle, $s); fclose($handle); //удяляем unlink ($filename); ?> PS: 1. Права на файлы должны быть 775 я так понимаю 2. Гуру php - если где ошибка в коде - поправьте плз Добавлено: Ну или вот еще вариант - перед стиранием файла увеличить его размер (у меня на тесте файл размером в 1351 байт стал 3700 байт, т.е. затерлись все ячейки в которых были записи и добавились плюс ко всему новые.) Мне лично кажется, что в таком варианте восстановить файл ДО ИЗНАЧАЛЬНОГО ЗНАЧЕНИЯ не зная нижеприведенного алгоритма будет трудновато, да и никто не мешает провести эту операцию несколько раз (т.е. прочитать - записать, прочитать - записать, затереть). И кстати, в нижеприведенном варианте можно открывать любые файлы (по крайней мере у меня получилось переписать jpg, docx, pdf, psd). Критика приветствуется PHP: <?php $filename = 'function.php'; //читаем файл $handle_read = fopen($filename, 'r'); $result_read = file_get_contents($filename); fclose($handle_read); //кодируем данные и удаляем некоторые составляющие символы, одновременно увеличивая размер данных $s = base64_encode(bin2hex(htmlspecialchars($result_read))); $bad = array ('g' , 'a' , '=' , 'q' , 'r' , 'j' , 'x' , '6' , 'v' , 'm' , '2' , 'z' , 'd' , 'l' , 'w' , 'q' , 'b' ); $s = str_replace($bad, "" , $s); //пишем что получилось $handle_write = fopen($filename, "w"); fwrite($handle_write, $s); fclose($handle_write); //удаляем unlink ($filename); ?>
Любой хостинг хранит бекапы за последние 2 недели. Таким образом восстановили крупный сайт после того, как 1 из разработчиков случайно удалил корневые файлы.
что мешает закриптовать вышеописаным образом файлы, оставить их на 2 недели а после - удалить? Стоуден детектед
Такой вариант лучше. Но, это чисто публично они говорят о хранении сроком в 2 недели. Я думаю они хранят гораздо больше, дабы получить от клиентов огромную благодарность за спасенных сайт через месяц к примеру. Тем более многие сайты занимают мало пространства и пространства БД, хранить их можно любое время. Ибо цены на жесткие диски итак уже ниже плинтуса.
Не могу не согласиться с тобой. Но тогда ответ на вопрос Gain-а - НИКАК Я предложил хотя-бы какой-то вариант, ибо безвозвратное удаление - это тот еще холивар
Все верно. Затирай не затирай, бэкапы могут храниться годами. Даже если сайт занимает 1гб. Стандарт берем жесткий диск на 3 ТБ - 3072 гб. 1 сайт может храниться целых 3072 дня. К примеру. Если даже разбить на 10 сайтов - за 1 год могут храниться бекапы от 10 сайтов.
хДД вариант тока аккуратно ломануть хостера и принудительно грохнуть его ЖД...а лучше вообще стереть его с лица интернета!!! БУГАГАГАГА!!!! *злобно смеюсь*
это так везде делаются бекапы ? если брать выделенный сервер, то имея доступ к ОС можно контролировать сервер, и hdd ?
Да, бекапы делаются всегда. Ну пракдически всегда. Если брать выделенный сервер - по большей части - это виртуальная машина в кластере blaid серверов. И бекапят они не твои файлы внутри, а целиком виртуальную машину.
О чем я и говорю. Стирать сразу через 2 недели никто ничего не будет. Все хранится и никуда не девается. Благо сейчас терабайты стоят копейки.
Если ДЦ, нормальный с хорошей командой, то из бэкапа быстро восстановят, со скоростью полета стрелы! Без толку, ну только если у вас есть бабки, заплатить за пожар в ДЦ! +допонительная уголовная статья, для комрадов