Superuser

Autor Thema: wo genau sitzt das bauteil mit der mac ?  (Gelesen 5476 mal)

gemm

  • Gast
wo genau sitzt das bauteil mit der mac ?
« am: 14. September 2004, 12:44:25 »
wo steckt das elende ding in einer o2, in dem die mac adresse (und damit alle lizenzen) codiert sind ? der pci tray (wie mancherorts im netz beschrieben) ist es nicht.
cpu modul auch nicht (haette mich auch gewundert)
frontplane ? wuesste nicht, wo ....
mainboard (befuerchte ich fast) - aber wo genau ? kann ich das teil irgendwie auslesen/neu beschreiben ?

folgendes problem - habe eine final defekte o2 (blitzschlag) auf welcher eine menge lizenzen haengen (komplettes varsity + spezialsoftware). selbige moechte ich natuerlich auf eine andere maschine transferieren (allein der offizielle lizenztransfer der spezialsoftware kostet weit mehr als eine neue maschine).
da ich mich nunmal eher mit hardware als mit software (flexlm) auskenne, mochte ich das eprom/eeprom umloeten....

alternativen ?

mood-indigo.org - Das unabhängige Silicon Graphics User Forum

wo genau sitzt das bauteil mit der mac ?
« am: 14. September 2004, 12:44:25 »

rob_gester

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #1 am: 14. September 2004, 12:54:05 »
thread:
  mood-indigo.org - Das SGI Heimanwender Forum
  Irix
  Allgemeine Fragen
  Mac-Adresse ändern
rob

gemm

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #2 am: 14. September 2004, 13:14:39 »
dann zitiere ich mal eben o.g. thread:
....bei der O2 dagegen praktisch unmöglich....

die software-loesung kenne ich schon ein weilchen. leider gibts nichts fuer o2 (ip32)/irix 6.5.

hat das schonmal jemand bei ip32 systemen unter irix6.5 ausprobiert/geschafft ?

http://www.squirrel.com/squirrel/sgi-sysid.html

Impact

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #3 am: 14. September 2004, 13:32:38 »
Also bei der O2 ist das meines Wissens nach die PCI Riser Card.

Hatte mal was ähnl. vollführen müsen wo ich der O2+ mit R12k die MAC einer O2 mit R10k verpassen musste.

Riser Card ausgetauscht - und fertig.

Viele Grüsse,
Markus
;)

gemm

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #4 am: 14. September 2004, 13:36:49 »
hm, das stimmt mich nachdenklich. meine software laeuft/lief auf der maschine auch komplett ohne die pci-riser karte (vergessen das teil einzubauen nach cpu austausch).

ausserdem ist die alte maschine eine r10k und die neue eine rm7k; da passt die alte riser-karte nicht; es sei denn, ich baue den ganzen krempel ins alte gehaeuse um.


edit: habe mir die pci-riser karte der r10k mal angesehen. das einzige aktive bauteil (bzw. das einzige bauteil ueberhaupt) ist eine art transistor.
aber: auf der seite des pci-steckplatzes ist tatsaechlich ein aufkleber mit der seriennummer/mac-adresse.
sollte tatsaechlich dieses transistoraehnliche teil das gesuchte sein ?
« Letzte Änderung: 14. September 2004, 13:41:36 von gemm »

Hamster

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #5 am: 14. September 2004, 13:38:05 »
Hallo !

Zitat

Also bei der O2 ist das meines Wissens nach die PCI Riser Card.

Right !
Auf der Risercard ist ein kleiner "Dreibeiner". Das Teilchen sieht aus wie ein Transistor  ;)
Dabei handelt es sich um ein serielles PROM.
Ob das Ding umprogrammierbar ist weiss ich nicht. Tausch der Risercard würde doch genügen.

Bis denne ...
Thomas

gemm

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #6 am: 14. September 2004, 13:43:55 »
oh - da war ich mit meinem edit zu langsam.

der riser der r10k ist von der hoehe her anders als der in der rm7k und passt mechanisch nicht ins gehaeuse. die rm7k hat das gleiche gehaeuse wie die r5k - und selbige koennen eine zweite interne festplatte aufnehmen. die r10k braucht den platz fuer den cpu-kuehler....
« Letzte Änderung: 14. September 2004, 13:44:12 von gemm »

Impact

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #7 am: 14. September 2004, 13:55:53 »
Ahm gemm.....

Ich weiss nicht wie weit du da gehen würdest, aber es besteht ja noch die möglichkeit mit einem 10-15W Lötkolben und sehr Feiner Spitze dieses auszulöten und auf der Neuen wieder anzubringen.

Ebenso ist es auch evtl. Interessant wie tief die Riser Card bei einer R5k/ R7k ist (sorry ich hatte nie eine und die O2+ mit R5k2 an der ich mal saß habe ich nie reingeschaut).

Wenn sie genauso Tief ist oder halbwegs passen könnte würde ich einfach das vorderige Metall Chassis der R10k weg lassen.

Aber irgendwas habe ich noch im Hinterkopf..... da sollte etwas vom Design zw. R1xk und R5kx/ R7kx, mal abgesehen davon dass das Case von Internen Aufbau für das Mainboard Schmaler ist, sodass ja 2 HDD Sleds verbaut werden können, somit sollte die Riser Card auch nicht so ohne weiteres ausgetauscht werden kann.
Bei den R1xk Pendanten ist sie ja auch wegen der Wuchtigen CPU auch extrem Tief.

Versuch mal zu Improvisieren - wirst es schon irgendwie auf die Reihe bekommen.

Und nochwas....
Ein "ChangeSysID" für IP32 ist mir schon bekannt. Allerdings nur wenn dann extra für IRIX 6.3 ;)

Viele Grüsse,
Markus

gr00

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #8 am: 14. September 2004, 13:57:28 »
Das Board der R5K Maschinen passt aber auch ins Gehäuse der R10K Kisten, wenn man den Verlust des zweiten Platteneinschubs verschmerzen kann.

gemm

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #9 am: 14. September 2004, 14:07:58 »
bei den r10k/r12k ist die riser card so "hoch", dass sie ueber den cpu-kuehler hinweg geht. die r5k/rm7k haben stattdessen einen zweiten platz fuer einen hdd einschub. die beiden riser-cards unterscheiden sich also in der "hoehe" um ca eine festplattendicke (ca 2,5 cm).
um das passend zu machen, muessen eben die ganzen innereien (board + frontplane - wegen dem zweiten scsi-anschluss) von einem gehaeuse ind andere transferiert werden (scheissarbeit, weil ueberall scharfkantiges metall; ausserdem brechen gerne irgendwelche haltezungen vom sockel ab).

da ist mir das umloeten schon lieber - ich hatte mich ja seelisch schon mit einem smd bauteil auf der hauptplatine abgefunden (dann doch lieber totalumbau).
aber dieses transistorteil auf beinchen sollte kein problem darstellen.

noch schwinge ich den loetkolben nicht. wenn also doch noch jemand eine software-loesung fuer 6.5 hat....
« Letzte Änderung: 14. September 2004, 14:12:11 von gemm »

tg_it

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #10 am: 14. September 2004, 15:18:44 »
ich poster hier jetzt einfach mal den quellcode von einem sysid change von ip30. evtl läuft dieser mit etwas arbeit auf auf ip32.

/*

     Change the system id on an IP30/Octane running Irix 6.5

     No warranty at all with this software; it may cause a nuclear reaction

     in your machine.



     Instructions:

           cc -o sidchange-octane-ip30 sidchange-octane-ip30.c -lelf

           ./sidchange-octane-ip30 newsysid

     

     Notes:

           You must run this program as root

           Run with no arguements this should print your current system id

           Do this first as a test.

*/

     

#include <fcntl.h>

#include <unistd.h>

#include <stdio.h>

#include <sys/types.h>

#include <sys/uio.h>

#include <nlist.h>

#include <string.h>

#include <errno.h>



int

main(int argc, char *argv[])

{

     int kmem;

     unsigned int new_id, cur_id;

     off_t where;

        struct nlist64 nl[2];



     nl[0].n_name="is_octane_lx";

     nl[1].n_name=NULL;



     if (argc == 2)

           new_id = strtoul(argv[1], NULL, 16);





     if ((kmem = open("/dev/kmem", O_RDWR)) < 0) {

           fprintf(stderr, "cannot open /dev/kmem\n");

           fprintf(stderr, "%s\n", strerror(errno));

           return 1;

     }

   

     if (nlist64("/unix", nl) < 0) {

           fprintf(stderr, "cannot read namelist out of /dev/ksyms\n");

           return 1;

     }

   

     if ((where = nl[0].n_value) == 0) {

           fprintf(stderr, "unknown kernel variable is_octane_lx\n");

           return 1;

     }

     

     if (lseek(kmem, where + 4, SEEK_SET) == (-1)) {

           fprintf(stderr, "lseek on /dev/kmem failed\n");

           return 1;

     }



     if (read(kmem, &cur_id, 4) < 4) {

           fprintf(stderr, "read from /dev/kmem failed\n");

           fprintf(stderr, "%s\n", strerror(errno));

           return 1;

     }

     printf("The System ID Is Currently: %08x\n", cur_id);



     if (argc == 2) {

           if (lseek(kmem, where + 4, SEEK_SET) == (-1)) {

                 fprintf(stderr, "lseek on /dev/kmem failed\n");

                 return 1;

           }

           if (write(kmem, &new_id, 4) < 4) {

                 fprintf(stderr, "write to /dev/kmem failed\n");

                 fprintf(stderr, "%s\n", strerror(errno));

                 return 1;

           }

           printf("The System ID Has Changed To: %08x\n",new_id);

     }

     close(kmem);

     return 0;

}


bye
thomas

tg_it

  • Gast
Re: wo genau sitzt das bauteil mit der mac ?
« Antwort #11 am: 14. September 2004, 15:24:42 »
ip32 code für irix 6.3

/* change system id on IRIX 6.3 - only minimally tested on an IP32 machine
  consider this a very early alpha - mch@squirrel.com

  Placed in the public domain by the author - 1996

  since the system ID on different types of SGI hardware is obtained in
  different ways, YMMV. This may even crash your machine.

  compile by   --  cc -o change-sid63 change-sid63.c -lelf

  run this with no parameters first and make sure it reports the
  correct system id

  if all is well, you can run it with the system id you want

 e.g.
   marmot:/home/mch/tmp> cc -o change-sid63 change-sid63.c -lelf
   marmot:/home/mch/tmp> su
   Password:
   marmot# /sbin/sysinfo
   System ID:
   12  34  56  78  00  00  00  00  00  00  00  00  00  00  00  00  
   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
   marmot# ./change-sid63
   hexadecimal system id seems to be 12345678
   marmot# ./change-sid63 69c0ffee
   marmot# /sbin/sysinfo
   System ID:
   69  c0  ff  ee  00  00  00  00  00  00  00  00  00  00  00  00  
   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
   marmot#

*/


#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/uio.h>
#include <nlist.h>
struct nlist nl[2];

main(argc,argv)
int argc;
char *argv[];
{
   int kmem;
   int just_read = 0;
   unsigned int new_id, cur_id;
   off_t where;
   just_read = (argc <= 1);
   if (argc > 1)
        new_id = strtoul(argv[1], NULL, 16);

   if ((kmem = open("/dev/kmem", O_RDWR)) < 0) {
       fprintf(stderr, "cannot open /dev/kmem\n");
       exit(1);
   }
   nl[0].n_name="sys_id";
   nl[1].n_name = NULL;
   if (nlist("/unix", nl) < 0) {
       fprintf(stderr, "cannot read namelist out of /unix\n");
       exit(1);
   }
   if ((where = nl[0].n_value) == 0) {
       fprintf(stderr, "unknown kernel variable sys_id\n");
       exit(1);
   }
   if (lseek(kmem, where, SEEK_SET) == (-1)) {
       fprintf(stderr, "lseek on /dev/kmem failed\n");
       exit(1);
   }
   if (!just_read) {
       if (write (kmem, &new_id, 4) < 4) {
           fprintf(stderr, "write to /dev/kmem failed\n");
           exit(1);
       }
   }
   else {
       if (read(kmem, &cur_id, 4) < 4) {
           fprintf(stderr, "read failed\n");
           exit(1);
       }
       printf("hexadecimal system id seems to be %08x\n", cur_id);
   }
   close(kmem);
   exit(0);
}