2012-04-09 49 views
0

我正在尝试使用gpg.exe --gen-key命令生成GPG密钥。输入包括密码在内的所有详细信息后,进程将陷入循环,并不断重复以下消息。生成密钥时GnuPG卡住

gpg: NOTE: you should run 'diskperf -y' to enable the disk statistics 
gpg: DBG: rndw32: get performance data problem 
gpg: NOTE: you should run 'diskperf -y' to enable the disk statistics 
gpg: DBG: rndw32: get performance data problem 
gpg: NOTE: you should run 'diskperf -y' to enable the disk statistics 
gpg: DBG: rndw32: get performance data problem 

我在Windows 7上使用gnupg-w32-1.0.6任何人都可以帮忙吗?

+0

什么是rndw32?我相信这是有人需要看的地方。 – 2012-04-10 05:12:40

回答

0

我仍然不知道原因并解决了上述问题。我在另一台机器上尝试过,它工作。所以我只是将文件夹C:\gnupg复制到我的机器上,并且事情从此开始正常工作。看起来gpg不能在这台机器上生成密钥。

0

从rndw32.c:

/* Get disk I/O statistics for all the hard drives */ 
     for (nDrive = 0;; nDrive++) { 
      char diskPerformance[SIZEOF_DISK_PERFORMANCE_STRUCT]; 
     char szDevice[50]; 

     /* Check whether we can access this device */ 
     sprintf (szDevice, "\\\\.\\PhysicalDrive%d", nDrive); 
     hDevice = CreateFile (szDevice, 0, FILE_SHARE_READ | FILE_SHARE_WRITE, 
         NULL, OPEN_EXISTING, 0, NULL); 
     if (hDevice == INVALID_HANDLE_VALUE) 
      break; 

     /* Note: This only works if you have turned on the disk performance 
     * counters with 'diskperf -y'. These counters are off by default */ 
     if (DeviceIoControl (hDevice, IOCTL_DISK_PERFORMANCE, NULL, 0, 
        diskPerformance, SIZEOF_DISK_PERFORMANCE_STRUCT, 
        &dwSize, NULL)) 
     { 
      if (debug_me) 
      log_debug ("rndw32#slow_gatherer_nt: iostats drive %d\n", 
             nDrive); 
      (*add) (diskPerformance, dwSize, requester); 
     } 
     else { 
      log_info ("NOTE: you should run 'diskperf -y' " 
        "to enable the disk statistics\n"); 
     } 
     CloseHandle (hDevice); 
     } 

看来,这个解决方案,如果您使用远程连接,可能是这一个: (从microfocus.com提取)

Enabling Remote Monitoring for Windows XP 

    An error message might occur when trying to monitor a computer that is running the Windows XP operating system. If so, enable monitoring remotely. 

     Open Windows Explorer on the target Windows XP computer. 
     Choose Tools > Folder Options . 
     Click the View tab. 
     Uncheck the Use Simple File Sharing check box. 
     Click OK. 
     Verify privileges on the target Windows XP computer as follows: 
      If the system root is on an NTFS partition, you must possess at least READ access to the following files: 
       %SystemRoot%\System32\Perfc009.dat 
       %SystemRoot%\System32\Perfh009.dat 
      You must possess at least READ access to the following registry keys on the remote computer: 
       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg 
       HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib 
     Reboot the Windows XP computer. 

    A user who possesses administrator rights to the remote computer can now view the remote counters. 

如果有人在本地机器上有这个问题,也许答案可能是这种启用它的其他方式:

检查是否启用了此命令:

DISKPERF 

如果不是的话,尝试使它:

DISKPERF - Y 

我知道这个帖子是一对年之久,但因为我有一个Debian的操作系统,我用GPG类似的问题在其他网站上找到了很少的完整答案,我想这可以为其他网站节省一些时间。

顺便说一句,在我的情况下,我没有被卡住。也许你提到的循环是因为它试图从安装在系统上的多个磁盘获得静态或报告?