Search code examples
amazon-web-servicesaws-iot-greengrass

AWS Greengrass installation on windows: "Cannot create all required directories"


I'm trying to install Greengrass (V2) on my Windows computer (have to work with Windows, and can't use Docker because it is a Windows Enterprise license). I followed the tutorial given in the Greengrass dashboard, meaning:

  • I entered my access keys
  • created the ggc_user (i can see it in the user management), saved the credentials with psexec
  • downloaded the zip package and installed it with the provided cmd line

But it always returns the following error:

Error while trying to setup Greengrass Nucleus
java.lang.RuntimeException: Cannot create all required directories
        at com.aws.greengrass.lifecyclemanager.KernelCommandLine.initPaths(KernelCommandLine.java:191)
        at com.aws.greengrass.lifecyclemanager.KernelCommandLine.lambda$parseArgs$0(KernelCommandLine.java:147)
        at com.aws.greengrass.config.Topic.subscribe(Topic.java:50)
        at com.aws.greengrass.lifecyclemanager.KernelCommandLine.parseArgs(KernelCommandLine.java:147)
        at com.aws.greengrass.lifecyclemanager.Kernel.parseArgs(Kernel.java:591)
        at com.aws.greengrass.easysetup.GreengrassSetup.performSetup(GreengrassSetup.java:296)
        at com.aws.greengrass.easysetup.GreengrassSetup.main(GreengrassSetup.java:269)
Caused by: java.nio.file.attribute.UserPrincipalNotFoundException
        at java.base/sun.nio.fs.WindowsUserPrincipals.lookup(WindowsUserPrincipals.java:147)
        at java.base/sun.nio.fs.WindowsFileSystem$LookupService$1.lookupPrincipalByGroupName(WindowsFileSystem.java:250)
        at com.aws.greengrass.util.platforms.windows.WindowsPlatform$WindowsFileSystemPermissionView.aclEntries(WindowsPlatform.java:413)
        at com.aws.greengrass.util.platforms.windows.WindowsPlatform$WindowsFileSystemPermissionView.<init>(WindowsPlatform.java:326)
        at com.aws.greengrass.util.platforms.windows.WindowsPlatform.getFileSystemPermissionView(WindowsPlatform.java:458)
        at com.aws.greengrass.util.platforms.Platform.setPermissions(Platform.java:167)
        at com.aws.greengrass.util.platforms.Platform.setPermissions(Platform.java:129)
        at com.aws.greengrass.util.Permissions.setRootPermission(Permissions.java:93)
        at com.aws.greengrass.util.NucleusPaths.setRootPath(NucleusPaths.java:99)
        at com.aws.greengrass.lifecyclemanager.KernelCommandLine.initPaths(KernelCommandLine.java:170)
        ... 6 more

I couldn't find anything usefull in the documentation.

Am I doing something wrong?

Thanks in advance.


Solution

  • This is a bug in Greengrass which means that it can only be used on English language systems right now. We now have a pull request to fix it so it will work with any language. https://github.com/aws-greengrass/aws-greengrass-nucleus/pull/1150