Мытарства с FreeBSD
07.04.2010По производственной необходимости понадобилось поставить на новый компьютер FreeBSD 8.0. Вроде бы все ничего – уже тысячу раз ставили и все нормально. Ан нет. Сразу при старте появились ошибки вида
acd0: TIMEOUT READ_BIG FAILURE
Это так себя ведут некоторые контроллеры приводов. Пришлось устраивать танцы с бубнами и ковырять BIOS. Увы уже не помню что сделал чтоб заработало, поэтому привести не смогу.
После всего этого система поставилась и даже заработала. Подхватив всё имеющееся оборудование. Однако не тут то было. Оказалось что система игнорирует часть оперативной памяти. (В машинке установлено ее аж 4 Гига). С сообщением вроде
786432К of memory above 4GB ignored
Проблема скорее всего в том, что используется архитектура i386, а у нее ввиде 32-битности есть некоторые ограничения. Долгое общение с гуглом дало следующий результат – проблему можно попробовать решить двумя способами:
- Скомпилировать ядро с поддержкой PAE.
- Поставить FreeBSD на архитектуре AMD64
Второго варианта я как то сначала испугался, ибо то процессор у меня Intel Core 2 Duo E8400. Поэтому решил попробовать вариант первый. Сказано сделано, прописываем в конфиге ядра
options PAE
и вперед
$ make buildkernel
Сразу хочу огорчить. После этого память вроде стала использоваться вся, однако началось периодическое отпадывание аппаратуры, поэтому лично я этот режим бы не советовал.
После чего начал курить мануалы по amd64. Оказалось, что так она называется потому, что придумала эту архитектуру фирма AMD. Но на данный момент она поддерживается и процессорами Intel тоже. Мой Core 2 Duo судя по материалам поддерживается.
Чтож, заслал в скачку FreeBSD-8.0-Release-amd64. О результатах сообщу позже.
UPDATED.
Установка прошла практически без сучка и задоринки. Система встала и начала работать. По ощущениям даже несколько быстрее. Оперативная память теперь видна и доступна вся.
Задача следующая – запустить под фрей раздел который раньше работал под WindowsXP. Пока непонятно – какая файловая система на нем (Fat32, Ntfs). Задача поставлена такая – нельзя его преобразовывать в ufs например, он должен обязательно остаться таким каким был, но на фряхе его надо использовать.