The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Не выключается питание"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Не выключается питание" 
Сообщение от pmd emailИскать по авторуВ закладки(ok) on 26-Ноя-05, 18:56  (MSK)
Не выключается компьютер после нажатия кнопки POWER на системном блоке.
Блок питания АТХ. Система довольно старая: PII-300 + 440LX (чипсет). ACPI в биосе я не нашел, только АРМ.

Система FreeBSD5.4, ядро свое. В ядре apm включен:
device apm

в NOTES следующее:
device apm
hint.apm.0.flags="0x20"

В /etc/rc.conf следующее:
apm_enable="YES"
apmd_enable="YES"

При загрузке пишет следующее:
apm0: <APM BIOS> on motherboard
apm0: found APM BIOS v1.2, connected at v1.2

Если выключать при помощи "shutdown -p now" то все отлично, а вот если нажать на кнопку выключения питания то система сразу вырубается без выключения.
Юзера могут отключать сервер только кнопкой питания. Другого способа нет.

Где копать подскажите? Как включить эту кнопку.
Спасибо всем кто откликнулся.

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "Не выключается питание" 
Сообщение от Doc emailИскать по авторуВ закладки(ok) on 26-Ноя-05, 19:41  (MSK)
>Не выключается компьютер после нажатия кнопки POWER на системном блоке.
>Блок питания АТХ. Система довольно старая: PII-300 + 440LX (чипсет). ACPI в
>биосе я не нашел, только АРМ.
>
>Система FreeBSD5.4, ядро свое. В ядре apm включен:
>device apm
>
>в NOTES следующее:
>device  apm
>hint.apm.0.flags="0x20"
>
>В /etc/rc.conf следующее:
>apm_enable="YES"
>apmd_enable="YES"
>
>При загрузке пишет следующее:
>apm0: <APM BIOS> on motherboard
>apm0: found APM BIOS v1.2, connected at v1.2
>
>Если выключать при помощи "shutdown -p now" то все отлично, а вот
>если нажать на кнопку выключения питания то система сразу вырубается без
>выключения.
>Юзера могут отключать сервер только кнопкой питания. Другого способа нет.
>
>Где копать подскажите? Как включить эту кнопку.
>Спасибо всем кто откликнулся.

копать надо в сторону другого компа!

эти старые системы так и работают... :0 у меня тажа петрушка

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Не выключается питание" 
Сообщение от pmd emailИскать по авторуВ закладки(??) on 26-Ноя-05, 20:33  (MSK)
А можно присвоить какой нибуть клавише (F12 например) команду shutdown -p now? Меня бы и это устроило.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Не выключается питание" 
Сообщение от Berk emailИскать по авторуВ закладки on 27-Ноя-05, 03:54  (MSK)
>А можно присвоить какой нибуть клавише (F12 например) команду shutdown -p now?
>Меня бы и это устроило.


man bind

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Не выключается питание" 
Сообщение от pmd emailИскать по авторуВ закладки(ok) on 27-Ноя-05, 09:57  (MSK)
Мне нужно делать это когда юзера не залогинились, тоесть из syscons.
Вроде как нажимаешт Ctrl+Alt+Del и перегружаешся. А мне  надо shutdown -o now.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Не выключается питание" 
Сообщение от blackcat Искать по авторуВ закладки on 27-Ноя-05, 14:58  (MSK)
>Мне нужно делать это когда юзера не залогинились

собираеш простенькую схемку кнопки в СОМ-порт
и вешаеш в систему демона...
(с) не мои. Работает железобетонно (freebsd 4.11, 5.3)

------------------------КУСЬ...
Subject: Схема простого переключателя для последовательного порта

Схема переключателя с индикатором текущего режима, подключаемого к
последовательному порту и периодически запускающего один из 2 скриптов
в зависимости от режима переключателя.

switcher.c
------------

/*
Simple program to monitor the state of switcher and execute two
different scripts according to the state. Current state
is displayed by LED indicator

DB-9 Connector

    Pin   Signal                   Pin  Signal
-------------------------------------------------------------------
     1    CD   Carrier Detect       6   DSR  Data Set Ready
     2    RXD  Receive Data         7   RTS  Request to Send
     3    TXD  Transmit Data        8   CTS  Clear to Send
     4    DTR  Data Term. Ready     9   RI   Ring Indicator
     5    GND  Signal GND


Circuit diagram
DB9
1   DCD o-------------|------------|
4   DTR o---/\/\/\----|            |
              10k                  \\ switcher
                                    \\
                                   |                              
5   GND o--------------------------|          
                                -------
                                |  -  |
                                | LED |
                                |  +  |
7   RTS o---/\/\/\-----------------|
              1k


Author: Tigran Zakaryan tigr@irphe.am
*/

#include <sys/ioctl.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
  int fd;
  int dtr_bit = TIOCM_DTR;
  int rts_bit = TIOCM_RTS;
  int flags, cntr_bits;
  int status, oldstat = -1;
  //
  if (argc < 4) {
        fprintf(stderr, "Usage: switcher <device> <script1> <script2>\\n");
        exit(1);
  }
  // Daemonize
  switch(fork()) {
    case 0: // Child
        setsid();
        break;
    case -1: // Error
        exit(1);
    default: // Parent
        exit(0);
  }
  if ((fd = open(argv[1], O_RDWR | O_NDELAY)) < 0) {
    exit(1);
  }
  // DTR should be high. Force it
  ioctl(fd, TIOCMGET, &cntr_bits);
  cntr_bits |= dtr_bit;
  ioctl(fd, TIOCMSET, &cntr_bits);
  // Sample the DCD line
  while(1) {
    // Get the status
    ioctl(fd, TIOCMGET, &flags);
    // Calculate present status
    status = (flags & TIOCM_CAR);
    // Did DCD drop to zero? (switch is "ON", light is "ON")
    if (oldstat != 0 && status == 0) {
      // Script1
      system(argv[2]);
      // Switch light "ON"
      ioctl(fd, TIOCMGET, &cntr_bits);
      cntr_bits |= rts_bit;
      ioctl(fd, TIOCMSET, &cntr_bits);
    }
    // Did DCD come up again? (switch is "OFF", light is "OFF")
    if ((oldstat == 0 && status != 0) || (oldstat == -1 && status != 0)) {
      // Script2
      system(argv[3]);
      // Switch light "OFF"
      ioctl(fd, TIOCMGET, &cntr_bits);
      cntr_bits &= ~rts_bit;
      ioctl(fd, TIOCMSET, &cntr_bits);
    }
    // Remember status and sleep for 1 second
    oldstat = status;
    usleep(1000000);
  }
  // Never happens
  return(0);
}


Makefile
-----------

CC=g++

all: switcher

switcher: switcher.c
        $(CC) -o switcher switcher.c
        chmod 700 switcher

clean:
        rm -f *~ core switcher

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Не выключается питание" 
Сообщение от TMN Искать по авторуВ закладки(ok) on 27-Ноя-05, 16:12  (MSK)
Встречный вопрос, добавление в ядро device apm + пару строчек в rc.conf, позволит отлавливать нажатие кнопки Power и выполнять shutdown -b now? Уж очень надо.
Честно говоря не понятно:

>в NOTES следующее:
>device  apm
>hint.apm.0.flags="0x20"
>
Где такой - NOTES, за что отвечае?
За помощь, заранее спасибо. Обязательно посмотрю man band, не разу не пользовался...

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Не выключается питание" 
Сообщение от lavr emailИскать по авторуВ закладки on 27-Ноя-05, 19:36  (MSK)
>Не выключается компьютер после нажатия кнопки POWER на системном блоке.
>Блок питания АТХ. Система довольно старая: PII-300 + 440LX (чипсет). ACPI в
>биосе я не нашел, только АРМ.
>
>Система FreeBSD5.4, ядро свое. В ядре apm включен:
>device apm
>
>в NOTES следующее:
>device  apm
>hint.apm.0.flags="0x20"
>
>В /etc/rc.conf следующее:
>apm_enable="YES"
>apmd_enable="YES"
>
>При загрузке пишет следующее:
>apm0: <APM BIOS> on motherboard
>apm0: found APM BIOS v1.2, connected at v1.2
>
>Если выключать при помощи "shutdown -p now" то все отлично, а вот
>если нажать на кнопку выключения питания то система сразу вырубается без
>выключения.
>Юзера могут отключать сервер только кнопкой питания. Другого способа нет.
>
>Где копать подскажите? Как включить эту кнопку.
>Спасибо всем кто откликнулся.


1) кнопку надо держать если ATX корпуса
2) использовать ЧТО-ТО одно: либо apm (apmd -> /etc/apmd.conf), либо
acpi - вместе нельзя, если используется apm, убедиться что acpi ->
disable
3) почему не попробовать acpi? да, факт известный что старые PC лучше
с apm работают, а новые ("новые" BIOS) лучше с ACPI

man apm
man 4 apm
man acpi

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру