生成密钥时GnuPG卡住了

时间:2012-04-09 11:16:44

标签: windows-7 gnupg

我正在尝试使用gpg.exe --gen-key命令生成GPG密钥。在输入包括密码短语在内的所有细节后,该过程会陷入循环并继续重复以下消息。

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。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分: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时遇到类似的问题,而且我在其他网站上找到了很少的完整答案,我想这可以节省一些时间其他

顺便说一句,在我的情况下,我不会被卡住。也许您提到的循环是因为它试图从系统上安装的几个磁盘获取静态/报告?