建账号的几点心得

昨天师兄发给我两份学生选课名单,一份是本科生的,一份是研究生的。都是选李老师生物信息进展那门课的。大致扫了一眼,加起来有大概小百号人吧,给这么多人在服务器上建账号,手动一个个adduser肯定是不行的了。需要写个脚本遍历用户名列表。

看起来没什么问题。但是我忽略了个很严重的事实,如果按照同学的姓名缩写建账号的话,很有可能出现两个人名字不同,但缩写相同。。。(这个问题的确出现了的,因为之前有几名同学在实验室这边做毕设,SRF这些,他们本人已经有账号了,但是这次课程他们也选了,选课名单上还有他的名字。)这个问题就引起了他的数据被覆盖掉了。。。还好不是什么重要数据。但这也是一次事故吧。以后建账号的时候要加上后缀,或者先判断这个名称的账户是否存在。需要重视!
批量删账号的脚本也写了一个。。虽然很简单,但还是系统的都放上来吧。
为什么要放这个脚本呢,因为下午刚开始我把家目录的一个单词拼错了。。。怎么建怎么测试失败。。。 貌似可以使用usermod更改用户家目录。(将user1的家目录切换为/home/user2.
正确的命令为:usermod -m -d /home/user2 -u 1001 user1; 用户id查询是 id username
我没有用usermod来改家目录,而是这样按照user.list删除之后,再vim /etc/passwd/,把出错了的用户信息删掉,然后运行user命令,在各节点同步信息。
然后再重新建账户。。
注意:
由于node1是管理节点,所以登陆后需要先ssh到node1,在node1进行操作。
还是要注意拼写,一不小心就错了。。。sad
删除之前课程账号的命令:
先cd进该目录,再ls -1|xargs -i userdel -r {}
这样,就把这个目录下的帐号都清理掉了