Chef infra Chef Windows:创建Windows用户时创建主目录

Chef infra Chef Windows:创建Windows用户时创建主目录,chef-infra,Chef Infra,我正在尝试下面的代码来创建一个用户并自动创建主目录 user "username" do supports :manage_home => true comment "ChefUser" home "C:\\Users\\username" password "somepassword" action :create end 下面的代码也不起作用。它给出了error“error:NoMethodError:undefined method每个字符的数组:0

我正在尝试下面的代码来创建一个用户并自动创建主目录

user "username" do 
   supports :manage_home => true
   comment "ChefUser"
   home "C:\\Users\\username"
   password "somepassword"
   action :create
end
下面的代码也不起作用。它给出了error
“error:NoMethodError:undefined method每个字符的数组:0x4434

user "username" do 
   supports :manage_home => true
   comment "ChefUser"
   home "C:\\Users\\username"
   password "somepassword"
   action :create
   provider Chef::Provider::User::Useradd
end
我在这里做错了什么。

引用:

使用Windows提供程序时,Microsoft Windows不会创建 用户首次登录前的主目录; 指定主目录对位置没有任何影响 Microsoft Windows最终会放置主目录

引述:

使用Windows提供程序时,Microsoft Windows不会创建 用户首次登录前的主目录; 指定主目录对位置没有任何影响 Microsoft Windows最终会放置主目录


听起来像是XY问题

我怀疑您希望创建use目录,以便为您的用户在某些设置或文档中进行设置

在windows中,实现这一点的实际方法是使用
默认用户
所有用户
主目录

All Users
的内容将与工作站上的每个用户目录合并(即:放置在
All Users\Desktop
中的快捷方式将位于每个用户桌面上,用户无法删除它,用于支持链接或所有用户共享的其他部分)

默认用户
的内容是用户主页模板,在用户第一次连接时,将通过复制
默认用户
目录中的内容(包括桌面上的快捷方式、我的文档目录中的文档等)来创建此用户主页目录


因此,对于您的案例,答案更多地是在
默认用户
所有用户
路径上工作,而不是尝试创建和处理每个用户主目录。如果您希望在那里为每个用户设置特定的脚本,请在这些脚本中使用
%USERNAME%
%USERPROFILE%
来获取用户名及其配置文件目录理论。

听起来像是XY问题

我怀疑您希望创建use目录,以便为您的用户在某些设置或文档中进行设置

在windows中,实现这一点的实际方法是使用
默认用户
所有用户
主目录

All Users
的内容将与工作站上的每个用户目录合并(即:放置在
All Users\Desktop
中的快捷方式将位于每个用户桌面上,用户无法删除它,用于支持链接或所有用户共享的其他部分)

默认用户
的内容是用户主页模板,在用户第一次连接时,将通过复制
默认用户
目录中的内容(包括桌面上的快捷方式、我的文档目录中的文档等)来创建此用户主页目录


因此,对于您的案例,答案更多地是在
默认用户
所有用户
路径上工作,而不是尝试创建和处理每个用户主目录。如果您希望在那里为每个用户设置特定的脚本,请在这些脚本中使用
%USERNAME%
%USERPROFILE%
来获取用户名及其配置文件目录ory.

Ya我读到了…但我没有给提供程序Chef::provider::User::Useradd。该提供程序只在Linux上工作,特别是使用
Useradd
添加用户的Linux发行版。因此命名。好的,我尝试手动创建目录,这给了我权限错误。创建目录的任何解决方法。比ks for you help再次,请阅读我引用的内容。创建主目录是在用户首次登录时完成的,在此之前您不能这样做,因为Windows用户不是这样工作的。如果它让您感觉更好,则主目录也没有太多用途,因此也不是什么大不了的事。是的,我读过了……但我不会以Chef::provider::user::Useradd。该提供程序将仅在Linux上工作,特别是使用
Useradd
添加用户的Linux发行版。因此得名。好的,我尝试手动创建目录,这给了我权限错误。任何创建目录的解决方法。再次感谢您的帮助,请阅读我引用的内容。在用户第一次登录之前,您不能这样做,因为Windows用户不是这样工作的。如果它让您感觉更好,那么home目录也没有太多用途,所以这不是什么大问题。