FAQ Степан Ильин aka Step Хакер, номер #089, стр. 089-126-4 Q: Подскажи, пожалуйста, программу-дефрагментатор для файловой системы ext3. Под винду софта хоть отбавляй. А для Линукса? A: Для начала разберемся с понятиями. Фрагментация — это процесс дробления данных на кусочки. Когда эти кусочки сильно разбросаны, жесткому диску приходится интенсивно позиционировать головку, чтобы прочитать каждый блок. Естественно. это влечет за собой снижение производительности и ресурса работы жесткого диска в целом. Поэтому, работая в винде, рекомендуется использоваться дефрагментаторы, которые восстанавливают целостность файла (размещают относящиеся к нему блоки как можно ближе). Однако в современных файловых системах UNIX подобной проблемы не существует в принципе. Фрагментация под ext3 и ReiserFS редко составляет больше 5%. Эти ФС разработаны так, что даже когда рядом нет места для записи очередного блока, он записывается следом как можно ближе. Соответственно, головке нет необходимости прыгать по всем цилиндрам. Нет фрагментации — нет реальной необходимости и в дефрагментаторах. Q: Знаю, что в зависимости от различных параметров PHP по-разному выводит сообщения об ошибках. Можешь рассказать подробнее? A: Существует несколько режимов оповещения об ошибках. Режим по умолчанию обозначается с помощью нескольких параметров в файле php.ini: * Параметр display_errors (on или off) указывает, следует ли отображать сообщения об ошибках в браузере. * Параметр log_errors (on или off) инициирует запись об ошибках сообщения в файл журнала. Для mod_php по умолчанию этим файлом является error_log. * Параметр error_reporting определяет, в каких случаях следует генерировать предупреждение, а в каких его можно проигнорировать. Все эти параметры могут быть обозначены не только через конфиг php.ini, но и во время работы скрипта с помощью функции ini_set(). Опытные гуру рекомендуют несколько режимов работы: 1.Во время разработки сайта на тестовом сервере включать display_errors и отключать log_errors. 2.Во время работы на реальном сервере, напротив, отключать display_errors, но включать log_errors. Это поможет тебе понять, что произошло, и исправить ошибку, но в тоже время не даст потенциальному хакеру полезную информацию. Используя одни лишь сообщения об ошибках и предупреждениях, можно значительно ускорить отладку скриптов. Но во многих случаях и этого окажется недостаточно. По ходу выполнения скрипта необходимо периодически выводить так называемые отладочные сообщения — значения переменных, к примеру. Чтобы этот хлам не выводить на экран, отечественные разработчики разработали специальную хакерскую консоль (http://dklab.ru/lib/Debug_HackerConsole/). Рекомендую! Q: Установил Slackware Linux и даже немного пригорюнился. Загружается целую вечность. Можно смело варить кофе — вернешься к окончанию загрузки. Это можно каким-нибудь образом пофиксить? Отключить там что-нибудь… :). A: Самое узкое место в загрузке системы — сервис rc.hotplug. Если это возможно, то его лучше отключить. Для этого надо снять атрибут «исполняемый» для файла /etc/rc.d/rc.hotplug. Стоит заметить, что в некоторых случаях без этого сервиса не обойтись, поэтому отключить его не получится. Также уменьшить время загрузки можно путем нехитрых манипуляций с файлом /etc/rc.d/rc.M. Нужно лишь закомментировать в нем строки: |