123456789101112131415161718192021222324252627282930313233 |
- local util = require 'gluon.util'
- local os = os
- local string = string
- module 'gluon.users'
- function add_user(username, uid, gid)
- util.lock('/var/lock/passwd')
- util.replace_prefix('/etc/passwd', username .. ':', string.format('%s:*:%u:%u::/var:/bin/false\n', username, uid, gid))
- util.replace_prefix('/etc/shadow', username .. ':', string.format('%s:*:0:0:99999:7:::\n', username))
- util.unlock('/var/lock/passwd')
- end
- function remove_user(username)
- util.lock('/var/lock/passwd')
- util.replace_prefix('/etc/passwd', username .. ':')
- util.replace_prefix('/etc/shadow', username .. ':')
- util.unlock('/var/lock/passwd')
- end
- function add_group(groupname, gid)
- util.lock('/var/lock/group')
- util.replace_prefix('/etc/group', groupname .. ':', string.format('%s:x:%u:\n', groupname, gid))
- util.unlock('/var/lock/group')
- end
- function remove_group(groupname)
- util.lock('/var/lock/group')
- util.replace_prefix('/etc/group', groupname .. ':')
- util.unlock('/var/lock/group')
- end
|