忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
123下一页
最近访问板块 发新帖
查看: 26279 | 回复: 23

[SCO UNIX] 一个关于SGI机身号的讨论 [复制链接]

论坛徽章:
0
发表于 2003-07-17 12:19 |显示全部楼层
前段时间听说有一种方法可以更改SGI上的机身号,哪位知道的朋友能否讨论一下

论坛徽章:
0
发表于 2003-07-17 13:24 |显示全部楼层

一个关于SGI机身号的讨论

具体指机器的什么值?改了对你有什么用?让sgi公司认为这台机器是刚买的吗?

论坛徽章:
0
发表于 2003-07-17 15:04 |显示全部楼层

一个关于SGI机身号的讨论

机身号就是
Serial Number:XXXX XXXX XXXX     

论坛徽章:
0
发表于 2003-07-17 15:12 |显示全部楼层

一个关于SGI机身号的讨论

[quote]原帖由 "sgi"]具体指机器的什么值?改了对你有什么用?让sgi公司认为这台机器是刚买的吗?[/quote 发表:
     

好多软件是通过机器的机器号来算软件的注册码的!!
也许是想改变机器号来实现软件的应用吧!!
不过我知道,机器号是在机器的背板上的一块电池上的,你可以换电池就可以将机器号对调了!

论坛徽章:
0
发表于 2003-07-17 16:07 |显示全部楼层

一个关于SGI机身号的讨论

为了软件的应用,请问如何改sgi的hostid.谢谢!

论坛徽章:
0
发表于 2003-07-17 16:33 |显示全部楼层

一个关于SGI机身号的讨论

这个不好在这里讲吧?

论坛徽章:
0
发表于 2003-07-17 17:51 |显示全部楼层

一个关于SGI机身号的讨论

原帖由 "szh" 发表:
   

不过我知道,机器号是在机器的背板上的一块电池上的,你可以换电池就可以将机器号对调了!
   


我想知道如果电池没电的话,是否会有影响

论坛徽章:
0
发表于 2003-07-17 17:58 |显示全部楼层

一个关于SGI机身号的讨论

我所知道的电池不会没有电的!

论坛徽章:
0
发表于 2003-07-17 19:35 |显示全部楼层

一个关于SGI机身号的讨论

我找了好久没发现SGI上有电池

论坛徽章:
0
发表于 2003-07-19 19:00 |显示全部楼层

一个关于SGI机身号的讨论

# cc -o change-sid change-sid.c -lmld
# sysinfo
System ID:
de  ad  12  34  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  
rodent 44# ./change-sid
hexadecimal system id seems to be dead1234
rodent 45# ./change-sid 12345678
rodent 46# ./change-sid
hexadecimal system id seems to be 12345678
rodent 47# 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  

-- change-sid.c --

/*
* change system id on IRIX 5.3 - only minimally tested on one machine
* consider this pre-pre-alpha - USE AT YOUR OWN RISK
* compile by   --  cc -o change-sid change-sid.c -lmld
* placed in the public domain by the author - Nov 1996
* Mark Henderson <mch@squirrel.com>;
*/

#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="eccf_addr";
    nl[1].n_name = NULL;
    if (nlist("/unix", nl) < 0) {
        fprintf(stderr, "cannot read namelist out of /dev/ksyms\n";
        exit(1);
    }
    if ((where = nl[0].n_value) == 0) {
        fprintf(stderr, "unknown kernel variable eccf_addr\n";
        exit(1);
    }
    if (lseek(kmem, where + 4, 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);
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP