qmail-pw2u(8) qmail-pw2u(8) NNAAMMEE qmail-pw2u - build address assignments from a passwd file SSYYNNOOPPSSIISS qqmmaaiill--ppww22uu [ --//oohhHHuuUUCC ] [ --cc_c_h_a_r ] DDEESSCCRRIIPPTTIIOONN qqmmaaiill--ppww22uu reads a V7-format passwd file from standard input and prints a qqmmaaiill--uusseerrss-format assignment file. A V7-format passwd file is a series of lines. Each line has the format user:password:uid:gid:gecos:home:shell where _u_s_e_r is an account name, _u_i_d and _g_i_d are the user id and group id of that account, and _h_o_m_e is the account’s home directory. _p_a_s_s_w_o_r_d, _g_e_c_o_s, and _s_h_e_l_l are ignored by qqmmaaiill--ppww22uu. If you put the output of qqmmaaiill--ppww22uu into //vvaarr//qqmmaaiill//uusseerrss//aassssiiggnn, and then run qqmmaaiill--nneewwuu, qqmmaaiill--llssppaawwnn will obey the assignments printed by qqmmaaiill--ppww22uu. WWAARRNNIINNGG:: After changing any users, uids, gids, or home directories in your passwd file, you must run qqmmaaiill--ppww22uu and qqmmaaiill--nneewwuu again if you want qqmmaaiill--llssppaawwnn to see the changes. RRUULLEESS By default, qqmmaaiill--ppww22uu follows the same rules as qqmmaaiill--ggeettppww. It skips _u_s_e_r if (1) _u_i_d is zero, (2) _h_o_m_e does not exist, (3) _u_s_e_r does not own _h_o_m_e, or (4) _u_s_e_r contains uppercase letters. It then gives each remaining _u_s_e_r control over the basic _u_s_e_r address and all addresses of the form _u_s_e_r--_a_n_y_t_h_i_n_g. A catch-all user, aalliiaass, controls all other addresses. You may change these rules by setting up files in //vvaarr//qqmmaaiill//uusseerrss: iinncclluuddee Allowed users, one per line. If iinncclluuddee exists, and _u_s_e_r is not listed in iinncclluuddee, _u_s_e_r is ignored. eexxcclluuddee Ignored users, one per line. If eexxcclluuddee exists, and _u_s_e_r is listed in eexxcclluuddee, _u_s_e_r is ignored. mmaaiillnnaammeess Replacement names for users. Each line has the form user:mailname1:mailname2:... The addresses _m_a_i_l_n_a_m_e_1 and _m_a_i_l_n_a_m_e_1--_e_x_t and _m_a_i_l_n_a_m_e_2 and so on will be delivered to _u_s_e_r. WWAARRNNIINNGG:: The addresses _u_s_e_r and _u_s_e_r--_e_x_t will not be delivered to _u_s_e_r unless _u_s_e_r is listed as one of the _m_a_i_l_n_a_m_es. A line in mmaaiillnnaammeess is silently ignored if the user does not exist. ssuubbuusseerrss Extra addresses. Each line has the form sub:user:pre: _s_u_b will be handled by _h_o_m_e//..qqmmaaiill--_p_r_e, where _h_o_m_e is _u_s_e_r’s home directory; _s_u_b--_e_x_t will be handled by _h_o_m_e//..qqmmaaiill--_p_r_e--_e_x_t. aappppeenndd Extra assignments, printed at the end of qqmmaaiill--ppww22uu’s output. OOPPTTIIOONNSS --oo (Default.) Skip _u_s_e_r if _h_o_m_e does not exist (or is not visible to qqmmaaiill--ppww22uu). Skip _u_s_e_r if _h_o_m_e is not owned by _u_s_e_r. --hh Stop if _h_o_m_e does not exist. This is appropriate if every user is supposed to have a home directory. Skip _u_s_e_r if _h_o_m_e is not owned by _u_s_e_r. --HH Do not check the existence or ownership of _h_o_m_e. --UU (Default.) Skip _u_s_e_r if there are any uppercase letters in _u_s_e_r. --uu Allow uppercase letters in _u_s_e_r. --cc_c_h_a_r Use _c_h_a_r as the user-extension delimiter in place of --. --CC Disable the user-extension mechanism. --// Use _h_o_m_e//..qqmmaaiill--//... instead of _h_o_m_e//..qqmmaaiill--... SSEEEE AALLSSOO qmail-users(5), qmail-lspawn(8), qmail-newu(8), qmail-getpw(8) qmail-pw2u(8)