| We are deploying with 5.3.5. I have not checked other versions for this issue. The issue is that HP-UX forces command line arguments to usermod to be in a specific order. Namely, the "login" must be the last argument. In lib/puppet/provider/user/hpux.rb, the code appends a "-F" argument at the end, past the "login" parameter. From the manpage: ==================== usermod(1M) usermod(1M) NAME usermod - modify a user login on the system SYNOPSIS usermod [-u uid [-o]] [-g group] [-G group[,group]...] [-d dir [-m [-i]]] [-s shell] [-c comment] [-f inactive] [-l new_logname] [-e expire] [-p encrypted_password] [-F] [-P -S alternate_password_file] login ==================== The change we made to lib/puppet/provider/user/hpux.rb to repair the error we got, was: ==================== $ diff hpux.rb.ORIG hpux.rb 27c27,31 < super.insert(1,"-F") — > cmd = super > #puts "in deletecmd, cmd {cmd}" > cmd.insert(1,"-F") > #puts "in deletecmd after insert, cmd {cmd}" > cmd 32c36,38 < cmd << "-F" — > #puts "in modifycmd, cmd {cmd}" > cmd.insert(1,"-F") > #puts "in modifycmd after insert, cmd {cmd}" ==================== Obviously in production one would remove the commented-out "puts" debugging. To reproduce: Deploy on HP-UX (our system is at: $ uname -a HP-UX slc10ddl B.11.31 U ia64 4067183464 unlimited-user license ) Deploy a new user. cd to that user's $HOME dir in a shell (this is why the -F param is required: -F Force the changes, even if the login is currently in use.) Modify something about that user, and deploy that change. |