建议楼主不要再用rh9这种落伍八百年的版本了,如果不是想当网管天天telnet的吧,用用suse,Ubuntu之类的发行版好了,也不要虚拟机安装,直接双系统,避免一些磁盘管理上面的问题。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的石阡网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
具体这个问题呢,先ls /mnt/subhd,看看有没有mount成功了。
假死的话另外开一个终端,ps -ef|grep cp ,找到这条命令的pid ,然后 kill -9 pid杀死进程就行了。
如果是network的话,你可以说The command is blocked。
但如果是你自己的程序的话,可能是blocked,也可能是hung up,就看你到底是在等待事件,还是在假死机了。
无法判断的时候干脆说个seems like也成
按住 Alt-Print 的时候就相当于按住了 Sys Rq 键,这个时候输入的一切都会直接由 Linux内核来处理,它可以进行许多低级操作。这个方法可以在各种情况下安全地重启计算机,具体操作如下:
1、shutdown命令安全地将系统关机。在系统关机前使用shutdown命令﹐系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结,即新的用户不能再登录。
2、halt——最简单的关机命令,其实halt就是调用shutdown -h。halt执行时﹐杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核。
3、reboot的工作过程差不多跟halt一样,不过它是引发主机重启,而halt是关机。它 的参数与halt相差不多。
4、init是所有进程的祖先,它的进程号始终为1, init 0为关机,init 1为重启。
起码你的代码有一个漏洞:第一次进入while时,!feof(pipe)是在判断谁?说明你对feof()这个函数并没有掌握,它必须在逻辑上“紧跟”在读文件动作之后才能正确生效,这第一次是“紧跟”在哪个读动作之后?到了文件结尾处就更可笑了:经while(!feof(pipe))判断文件还没有结束,比如说文件中还剩一个最后的'\n',可是体中的if(fread(c,1,1,pipe)==1)中的fread函数还能读到什么?细节我就不说了,太长。建议把
while(!feof(pipe)){
if(fread(c,1,1,pipe)==1){
result[i++]=c;
if(c==0)
break;
}
}
这一段改成
while(fread(c,1,1,pipe),!feof(pipe)){
result[i++]=c;
//if(c==0)//这两句考虑一下吧,文件中有0吗?不可能有0,所以逻辑就有问题,建议删除
//break;
}
一试。