LINUX.ORG.RU

Выключение питания в Linux. Как ?


0

0

Написана прога . Работает на линухе. Проблема на которую я толком ненашёл никакого ответа. С недавнего времени начался падёжь винтов. Слетала ext3 . На IDE винтах - кернел паника ( неможет типа обнаружить RAM диск и фсё) на SATA - монтируется в read only и капец ... Подозрения пали на метод выключения автомата а именно простое выключение питания . Понятно что для нормального завершения работы Linux'a есть halt/shutdown но речь идёт об автомате с которым бесцеремонные пользователи особо панькаться не будут . Power Off и всех делов. Пошаря гуглем натолкнулся на возможную причину - кеширование . Есть мнение отключить кеширование hdparm -W0 Говорят винт работать будет медленнее но в моём случае важна не скорость а стабильность

Может кто подскажет , спасёт ли отключение кеширования и может есть ещё какие фишки что бы можно было делать Linux'у тупой PowerOff неопасаясь за последствия ?

Спасибо

Re: Выключение питания в Linux. Как ?

то есть охото тупо нажимать на кнопку Power Off? если да то скорее ни чего не поможет т.к. диски примонтированы, только если рам диск (грузить в него все что нужно с диска на стадии загрузки, а затем размонтировать), но нужно много рама чтобы нормально работать.

srv ()
Ответ на: Re: Выключение питания в Linux. Как ? от srv

Re: Выключение питания в Linux. Как ?

Блин 
Как же так
Писали для Линуха - типа круто
А оказывается надо было для виндозы писать ? Там с PowerOff всё пучком :-(

Памяти в системе 256 Mb
Сама программа жрёт мало , Правда она использует самые простые иксы

Идея немного понятна но несовсем понятно что переносить в рам 
Всю систему с программой ( минимум что бы иксы заработали ) ?

vasilevs ()
Ответ на: Re: Выключение питания в Linux. Как ? от vasilevs

Re: Выключение питания в Linux. Как ?

> Писали для Линуха - типа круто

Если поэтому, то стреляйся.

>Идея немного понятна но несовсем понятно что переносить в рам

R/O partition тебя спасет. У меня так работает псевдо-embedded устройство -- все что может изменяться использует рамдиск.

Zulu ★★☆☆ ()

Re: Выключение питания в Linux. Как ?

acpid можно повесить? Там вообще, архитектура какая? Если ACPI есть, то вешаешь демона, он будет кнопку power off слушать, и выполнять действия при её нажатии. На действие вешаешь poweroff. Или если нет ACPI, то кнопка не должна тупо отключать питалово, а должна евент какой-нить кидать.

Zmacs ()
Ответ на: Re: Выключение питания в Linux. Как ? от Zulu

Re: Выключение питания в Linux. Как ?

>> Писали для Линуха - типа круто

>Если поэтому, то стреляйся.

Не , самострел отменяется Я в линухах 5 лет администрирования серваков Просто проблемы такой не вставало никогда так как с серваками такого варварского действа как тупое PowerOff ессно никто не делал . C автоматом - другое делао ...

>R/O partition тебя спасет. У меня так работает псевдо-embedded устройство -- все что может изменяться использует рамдиск.

Не, не тот случай Там файлик базы данных которой и меняется А если он будет в рам и произойдёт PowerOff то все изменения - к чертям Это критично :-(

vasilevs ()
Ответ на: Re: Выключение питания в Linux. Как ? от Zmacs

Re: Выключение питания в Linux. Как ?

+1 Zmacs  имхо надо копать в сторону acpi , а в виндах как по вашему это работает ? в крайнем случае можно собрать какой нить девайс который будет например на ком порту висеть и написать демона который будет ребутить по некоторому сигнало сервер .

также есть ups-ы которые имеют софт который может вырубать сервер .

j262 ★★ ()
Ответ на: Re: Выключение питания в Linux. Как ? от Zmacs

Re: Выключение питания в Linux. Как ?

>что мешает использовать блок бесперебойного питания?

>acpid можно повесить? Там вообще, архитектура какая? Если ACPI есть, то вешаешь демона, он будет кнопку power off слушать, и выполнять действия при её нажатии. На действие вешаешь poweroff. Или если нет ACPI, то кнопка не должна тупо отключать питалово, а должна евент какой-нить кидать.

Ни упс ни кнопки всякие не помогут ибо на практике это выглядит так
Стоит себе музыкальный автомат, работает
В конце смены , усталый или пьяный бармен подходит и тупо выдёргивает резетку из выдавшего виды тройника ... 

vasilevs ()
Ответ на: Re: Выключение питания в Linux. Как ? от j262

Re: Выключение питания в Linux. Как ?

Хотя таки да , ups пожно притарабанить но это удорожит конструкцию и утяжелит сам автомат 
Упс это на крайний случай

>..а в виндах как по вашему это работает ...
А в виндах не скажу сам процесс работы но фак что после тупого PowerOff крах системы не происходит 
100 % 
( у меня есть компьютерный клуб где у малолеток самая популярная кнопка - это Power и Reset. Компы уже год стоят без переустановки системы ...  Вот вам и микрософт маст дай ) 

vasilevs ()
Ответ на: Re: Выключение питания в Linux. Как ? от vasilevs

Re: Выключение питания в Linux. Как ?

незнаю что в виндах , эта дура наверное кеширует всякую херню ...
но я очень сомневаюсь что в виндах та-же база не накроется ....
 
может можно попробовать ext3 монтировать с journal_data или journal_data_ordered ? хотя опять таки для базы данных imho это не вариант .

j262 ★★ ()
Ответ на: Re: Выключение питания в Linux. Как ? от j262

Re: Выключение питания в Linux. Как ?

Меня тут ткнули в ссылку
http://www.jasonbrome.com/blog/archives/2004/04/03/writecache_enabled.html


Особенно понравилась цитата с netbsd.org

"if you want *real* protection (that is, metadata consistency) you must (on netbsd and linux) disable write cache. using writeback cache on the drive, you're only protected from some things (accidently hit reset, kernel panic). you're not protected from power failure. i have a ups, but i still disable write cache. a ups can fail, and a machine's psu can fail as well."

Вроде свет в конце тунеля :-)

vasilevs ()
Ответ на: Re: Выключение питания в Linux. Как ? от vasilevs

Re: Выключение питания в Linux. Как ?

> Не, не тот случай Там файлик базы данных которой и меняется А если он будет в рам и произойдёт PowerOff то все изменения - к чертям Это критично

А разбить диск на два раздела религия не позволяет? Что-то подсказывает что опыта работы с *nix очень мало...

Опции монтирования типа sync и commit= придуманы не для Вас?

В случае критичности потери данных, таки ставят упс...

anonymous ()

Re: Выключение питания в Linux. Как ?

Что за автомат? Опиши конкретно для чего он и его функционал.

P.S. Какие нах.й базы данных в автоматах у юзеров, сидящих на силовом рубильнике. И тд. и тп.

P.P.S. Похоже вы к холодильнику примотали скотчем крылья и летать заставили (а че круто и хавка всегда в наличие), а он падла падает.

sdio ★★★★★ ()
Ответ на: Re: Выключение питания в Linux. Как ? от anonymous

Re: Выключение питания в Linux. Как ?

> А разбить диск на два раздела

> Опции монтирования типа sync и commit=

+1

Разметить диск; все разделы кроме одного - ro, на rw - только данные и монтировать с нужными опциями (sync ...).

sin_a ★★★★★ ()
Ответ на: Re: Выключение питания в Linux. Как ? от vasilevs

Re: Выключение питания в Linux. Как ?

Я в клубе работал. 
Там уже через пару месяцев ntfs такие номера откалывать начинает,
что просто песец.
А вот с линуксом на xfs не разу небыло проблем.
Хотя жестко вырубают через отключение электричетва регулярно.
Можт тебе файловую систему сменить.

owlmind ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.