在jail中创建Ubuntu用户帐户

时间:2014-09-04 17:58:02

标签: ubuntu user-accounts chroot

我有一个代码库,通过shell添加和删除用户帐户:

sudo useradd #{user} --home-dir #{dir} --shell /bin/false -g usergroup
sudo usermod -G sftponly #{user}
sudo chown root:root #{dir}
sudo chmod 755 #{dir}
sudo chown #{user}:root #{dir}/homedir
echo #{user}:#{password} | sudo chpasswd

不幸的是,自动化测试很困难,因为我需要在每次测试运行后创建和清理测试用户帐户。

如果测试套件在运行过程中失败,并且无论出于何种原因清理失败,我就会在开发机器/ vm上留下大量测试用户帐户和dirs。

理想情况下,我想在某种chroot监狱中执行我的测试,这种监狱可以创建帐户,然后我可以在退出或失败时将监狱吹走。这样的事情是否存在/实用?

1 个答案:

答案 0 :(得分:0)

清理绝对不会失败。即使您的测试失败,也没有理由清理失败。 如果您的测试导致验证脚本过早退出,请考虑使用try-catch-finally来确保始终执行清理代码。

或者,您可以在VM中使用测试,然后将VM重置为先前记录的干净状态,但这可能需要手动执行一两步。

相关问题