[Comm] Re: Проблемы Linux.

Denis Kirienko =?iso-8859-1?q?Denis=2EKirienko_=CE=C1_gmail=2Ecom?=
Пн Дек 26 20:00:23 MSK 2005


FreeWolle Voluntary wrote:
> Проблемы Linux.
Это - не проблемы Linux. А вот мэйлер у вас действительно ужасный и 
проблемный.

> Посоветуйте, какой модуль из стандартно доступных в Linux надо  подключать для получения абсолютного доступа к диску, например, через 
BIOS, ведь в DOS это просто - в Turbo-C v2.01 просто поставил строчку 
#include <bios.h> и затем с помощью функции biosdisk можно вытворять с 
дисками даже самые нелепые вещи, например

Не поверите - этот файл называется stdio.h! Почитайте какую-нибудь 
литературу по поводу псевдофайлов, связанных с устройствами, лежащими в 
каталоге /dev. Так вот, чтобы получить полный доступ к первому жесткому 
диску в системе необходимо открыть псевдофайл /dev/hda, чтобы получить 
доступ к первому разделу первого жесткого диска - псевдофайл /dev/hda1.
Просто работаете с ними, как с файлами, и никакой нестандартный bios.h 
не нужен.

> Такую программу я запускаю каждый раз из загружаемого CD-RW с FreeDOS, когда приходит конец файловой системе Linux и перед каждой переустановкой системы, а ведь куда удобней запускать эту програмку, скомпилированную под Linux в режиме root после Su с паролем. ;)

Вам что нужно, заполнить раздел нулями? Для этого и программу писать не 
надо. Например, необходимо обнулить раздел /dev/hda1. Что мы знаем?

1. Есть псевдофайл /dev/hda1, связанный с этим разделом.
2. Есть утилита dd, которая копирует информацию из одного файла в другой.
3. Есть псевдофайл /dev/zero, из которого можно до бесконечности читать 
нулевую последовательность байт.

А теперь нужно объединить все это вместе, заставив dd читать данные из 
/dev/zero и писать в /dev/hda1:

# dd if=/dev/zero of=/dev/hda1

Это и называется UNIX-way. Конструирование из простых программ и простых 
  вещей нужного вам решения сложной проблемы.

--
Денис




Подробная информация о списке рассылки community