我正在尝试以下代码来创建用户并自动创建主目录
user "username" do
supports :manage_home => true
comment "ChefUser"
home "C:\\Users\\username"
password "somepassword"
action :create
end
下面的代码也没有用。它给出了错误"Error: NoMethodError: undefined method each_char for #array:0x4434
user "username" do
supports :manage_home => true
comment "ChefUser"
home "C:\\Users\\username"
password "somepassword"
action :create
provider Chef::Provider::User::Useradd
end
我在这里做错了什么。
答案 0 :(得分:3)
那里听起来像是XY问题。
我怀疑您希望创建使用目录,以便为您的用户设置某些设置或文档。
在Windows中,实现此目的的实际方法是使用default user
和all users
家庭目录。
All Users
的内容将与工作站上的每个用户目录合并(即:All Users\Desktop
中的快捷方式将位于每个用户桌面上,并且无法删除它,对于支持非常有用链接或所有用户共享的其他部分)
Default User
的内容是用户主页模板,在用户的第一次连接时,将通过复制Default User
目录中的内容(包括快捷方式)创建此用户主目录桌面,我的文档目录中的文档等。)
因此,对于您的案例,答案更多的是在Default User
或All Users
路径上工作,而不是尝试创建和处理每个User Home目录。如果您希望为每个用户设置特定的脚本,请在脚本中使用%USERNAME%
和%USERPROFILE%
来获取用户名及其配置文件。
答案 1 :(得分:2)
使用Windows提供程序时,Microsoft Windows不会创建 用户的主目录,直到该用户第一次登录; 指定主目录对where在哪里没有任何影响 Microsoft Windows最终放置主目录。