如何实例化Linux用户帐户,以便他们可以安全地重用?

假设我有10个用户帐户。 我希望login的用户将使用该帐户的一个实例,而不是帐户本身。

所以当他们login时,他们将会在该账户的一个副本上工作,一旦他们注销,该副本应该被丢弃。 如果两个或两个以上用户使用相同的帐户,他们不应该能够看到彼此的文件。

如果他们回到那个账户,他们应该是初始状态。

你想要完成什么目标?

你所描述的一般是没有用的(唯一的情况下,我可以看到它将是有用的是在公共访问Unix系统,让人们作为“客人”login,他们被redirect到一个guest1234帐户获取在注销时被删除,你可以用PAM模块或者一些骇客来实现这样一个可怕的事情,但是这通常是一个糟糕的想法,因此作为读者的练习。

你这样做是错的

完全完成这样的事情是很难的。 有各种各样的黑客,你可以尝试,如:


添加到login脚本:

 NEWHOME=$(mkdir $HOME/.tmphome.XXXXXX) export HOME=$NEWHOME (spawn rest of session) 

那会让你走到最后。

或者,也许每个人都logging一个单独的meta-guest账户:

  • locking信号量
  • 挑选下一个未使用的访客帐户
  • 重新初始化来宾帐户(清除文件等)
  • 使用ssh / sudo /任何更改到该来宾帐户
  • 解锁信号量