Re: materiel: control du ventilo de CPU\

Page principale

Répondre à ce message
Auteur: Stephane Driussi
Date:  
À: guilde
Sujet: Re: materiel: control du ventilo de CPU\
sur le web j'ai trouve une commande en c que j'ai bricole pour faire
start/stop. Tu peux meme en trouve ecritent en perl!!!

usage: scsitart /dev/sdb; scsistop /dev/sdb

Je m'en sert pour stopper un disque qui n'est pas 'mounte' car je ne
peux pas arreter ma machine.
Je ne sais pas si le disque peut etre 'mounte' et si il se reveille
lorsque tu fais un acces.
(fdisk -l /dev/sdb sur un sdb a l'arret renvoi une erreur).

voici les codes sources:

************* scsistart.c *******************
#include <stdio.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/ioctl.h>
#include <scsi/scsi_ioctl.h>

main(int argc, char **argv){
int fd;

  if (argc != 2) {
    fprintf(stderr, "Usage: %s /dev/something\n", argv[0]);
    exit(1);
  }


  if ((fd=open(argv[1], O_RDONLY))==-1) {
    perror(argv[0]);
    exit(2);
  }


  if (ioctl(fd, SCSI_IOCTL_START_UNIT)) {
    perror(argv[0]);
    exit(3);
  }


exit(0);
}

************* scsistop.c *******************
#include <stdio.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/ioctl.h>
#include <scsi/scsi_ioctl.h>

main(int argc, char **argv){
int fd;

  if (argc != 2) {
    fprintf(stderr, "Usage: %s /dev/something\n", argv[0]);
    exit(1);
  }


  if ((fd=open(argv[1], O_RDONLY))==-1) {
    perror(argv[0]);
    exit(2);
  }


  if (ioctl(fd, SCSI_IOCTL_STOP_UNIT)) {
    perror(argv[0]);
    exit(3);
  }


exit(0);
}


Jérôme KIEFFER wrote:

>On Thu, Nov 06, 2003 at 11:35:59AM +0100, Stephane Driussi wrote:
>
>
>>le bricolage ne me fait pas peur, mais j'arrive a faire on/off sur le
>>moteur de mes disques scsi, alors le ventilo de la carte mere, si il n'y
>>a pas de solutions soft ce serait dommage...
>>
>>
>
>sur les SCSI ... comment tu fais j'arrive quavec les disques IDE.
>
>
>