- 主题:迁移一个BBS后什么用户都不能登陆怎么回事?
输啥用户包括guest都找不到
我已经把 .PASSWD 等文件拷来
并重启了BBS
但仍然任何用户都上不了
请输入代号: guest
错误的使用者代号...
因为在不同系统间迁移
重新configure和make过
但类似的事情我以前也做过,从kubuntu迁移到redhat
现在是从redhat迁移到fluxubuntu
还忘了什么?
--
修改:askthesky FROM 220.181.38.244
FROM 220.181.38.244
没有
相同的CPU
换了一块硬盘作主盘
都是32位
【 在 fancyrabbit (fancy★Job-Hunting...★喵) 的大作中提到: 】
: 磁盘文件数据结构是否有变化,如有变化需要转换
: 比如 userec 结构里我记得有 time_t,你如果从32迁移到64。。。
--
FROM 220.181.38.244
【 在 fancyrabbit (fancy★Job-Hunting...★喵) 的大作中提到: 】
: 那。。还有是 .PASSWDS 不是 .PASSWD
手误,其实没错
: 别的就没啥了,重启清共享内存没
没主动弄过。新硬盘,新装的系统
miscd flush 过
--
FROM 220.181.38.244
呵呵,我麻烦康神帮忙看ing...-.- 顺便广告..
【 在 luckwithme (Marvel) 的大作中提到: 】
: 其实我觉得最好的办法就是gdb调调看,呵呵
--
FROM 220.181.38.244
(gdb) s
176 n1 &= 0xdf;
(gdb) s
177 n1 -= 'A';
(gdb) s
178 if (n1 < 0 || n1 >= 26)
(gdb) s
182 n1 = hash->hash0[n1];
(gdb) p n1
$4 = 24
(gdb) s
174 n1 = *userid++;
(gdb) p n1
$5 = <value optimized out>
(gdb) bt
#0 ucache_hash (userid=0xbff40ce2 "yinhang") at ucache.c:174
#1 0x080db786 in getuser (userid=0xbff40ce2 "yinhang", user=0x816cc40)
at ucache.c:517
#2 0x080c26d8 in login_query () at newmain_single.c:260
#3 0x080c2ed8 in main_bbs (convit=0, argv=0xbff41e9c "bin/bbsd")
at newmain_single.c:1081
#4 0x080be3b0 in bbs_main (argv=0xbff41e9c "bin/bbsd") at bbsd_single.c:489
#5 0x080beb3b in main (argc=1752066425, argv=0x676e61) at bbsd_single.c:672
(gdb)
182怎么会跳到174,晕
(gdb) list 178
173
174 n1 = *userid++;
175 if (n1 >= 'a' && n1 <= 'z')
176 n1 &= 0xdf;
177 n1 -= 'A';
178 if (n1 < 0 || n1 >= 26)
179 return 0;
180
181 /* disable it usage->hash0[n1]++;*/
182 n1 = hash->hash0[n1];
(gdb) list 185
180
181 /* disable it usage->hash0[n1]++;*/
182 n1 = hash->hash0[n1];
183
184 while (n1 < 0) {
185 n1 = -n1 - 1;
186 if (!*userid) {
187 /* disable it usage->hash[n1][0]++; */
188 n1 = hash->hash[n1][0];
189 } else {
(gdb)
【 在 luckwithme (Marvel) 的大作中提到: 】
: 其实我觉得最好的办法就是gdb调调看,呵呵
--
FROM 220.181.38.244
咦,再n又回到184了
理解成无理优化吧..
【 在 askthesky (征集京剧坤老生~~) 的大作中提到: 】
: (gdb) s
: 176 n1 &= 0xdf;
: (gdb) s
: ...................
--
FROM 220.181.38.244
现在这个问题很简单
就是 .PASSWD 和 .BOARDS 没有装入 shm
miscd flush 一下那俩文件就变了
这个怎么强制解决呢?
【 在 askthesky (征集京剧坤老生~~) 的大作中提到: 】
: 咦,再n又回到184了
: 理解成无理优化吧..
--
FROM 220.181.38.244
问题是康神很忙./..\
【 在 fancyrabbit@zzxy-NO-SPAM-org (core·我和波波兔没关系!) 的大作中提到: 】
: orz!
--
修改:askthesky FROM 220.181.38.244
FROM 220.181.38.244
当年的问题解决了
估计是上次重启前没有先killall miscd再cp一遍文件..
现在遇到一有点麻烦的问题:
从32位系统想迁移到64位系统....
二进制文件是不是要一一转过。有没有现成的工具可用呢?...
.PASSWORD
.BOARDS
还有什么...
【 在 askthesky (征集京剧坤老生~~) 的大作中提到: 】
: 现在这个问题很简单
: 就是 .PASSWD 和 .BOARDS 没有装入 shm
: miscd flush 一下那俩文件就变了
: ...................
--
修改:askthesky FROM 123.118.13.138
FROM 123.118.13.138
.PASSWORD 文件每个用户的长度好象没问题
查 .IDlists 看看 —— 修改它并不影响用户登陆
【 在 askthesky (征集京剧坤老生~~) 的大作中提到: 】
: 当年的问题解决了
: 估计是上次重启前没有先killall miscd再cp一遍文件..
: 现在遇到一有点麻烦的问题:
: ...................
--
修改:askthesky FROM 123.118.13.138
FROM 123.118.13.138