Linux不使用useradd创建用户
手动创建用户的全过程:需要管理员权限。
1.在/etc/group中添加用户所属组的相关信息。如果用户还有辅助组则在对应组中加入该用户作为成员。
2.在/etc/passwd和/etc/shadow中添加用户相关信息。此时指定的家目录还不存在,密码不存在,所以/etc/shadow的密码位使用“!!”代替。
3.创建家目录。cp -r /etc/skel /home/user_name。
4.修改家目录及子目录的所有者和属组。
chown -R user_name:user_name /home/user_name
5.修改家目录及子目录的权限。例如设置组和其他用户无任何权限但所有者有:chmod -R go= /home/user_name
到此为止,用户已经创建完成了,只是没有密码,所以只能su,不能登录。
6.生成密码。使用openssl passwd -1 -salt '12345678'生成使用md5算法的密码,此时要求输入密码,然后将生成的密码复制到/etc/shadow对应用户的密码位。
其中-1是指md5,-salt '12345678'是使用8位的字符创建密码的杂项,8位字符任意指定。虽然新版本的passwd文件中的算法是SHA512(6),但也支持md5(1)。
这里也可以使用passwd命令直接修改密码。
7.测试手动创建的用户是否可以正确登录。
以下为步骤:请千万记得备份这些相关文件。
;/ /*备份这几个文件*/ echo "userX:x:666" >> /etc/group echo "userX:x:666:666::/home/userX:/bin/bash" >> /etc/passwd echo 'userX:!!:17121:0:99999::::' >> /etc/shadow cp -r /etc/skel /home/userX chown -R userX:userX /home/userX chmod -R go= /home/userX '
测试使用userX是否可以登录。
如果是使用openssl passwd创建的密码。那么使用下面的方法将这部分密码替换到/etc/shadow中。
field=$(cat /etc/shadow | cut -d":" -f2) password=$(openssl -salt ) sed -i '$s%'$field'%'$password'%' /etc/shadow
Linux不使用useradd创建用户的更多相关文章
- useradd 创建用户
useradd 创建用户 1.命令功能 useradd 创建一个新用户或者更改默认新用户信息. 2.语法格式 useradd option username useradd -D option ...
- Linux系统下批量创建用户
Linux批量创建用户 [root@ldapserver ~]# ) ; do useradd -d /home/ldapuser$i ldapuser#i; done [root@ldapserve ...
- 在Linux下给mysql创建用户并分配权限及问题解决方案
在linux下安装mysql请参考在linux系统中安装mysql服务器详细步骤 1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql ...
- Linux下给mysql创建用户分配权限
1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Pas ...
- Linux下给mysql创建用户并分配权限
// fe_group 用户名// fe 数据库名// 123456 密码 1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> ...
- Linux(centos)创建用户并分配权限
创建名为 elas的用户 adduser elas 初始化elas的密码 passwd elas 显示 新的 密码: 重新输入新的 密码: passwd:所有的身份验证令牌已经成功更新. 进行授权 个 ...
- 6、Linux基础--文件类型、属性信息、创建用户与用户组
笔记 1.晨考 1.解析映射文件 /etc/hosts 2.磁盘挂载文件 /etc/fstab 3.设置开机自启动脚本的步骤 1.修改/etc/rc.local 2.设置可执行权限 chmod +x ...
- Linux运维六:用户管理及用户权限设置
Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...
- Linux思维导图之用户、组和权限
安全3A: Authenticanion认证:验证用户身份; 授权授权;依据身份进行不同权利的分配.Acouting | 劲舞团审计:监督工作. user:id -u 令牌:(护符)ID号 .Linu ...
随机推荐
- myeclipse构建webservice项目
新建server端 1 创建Web Service Project项目 2.项目名称:HelloWorldServer 3.创建接口类 4.发布 选择项目名称,选择从Java类中构建web servi ...
- GPU硬件加速相关
从android3.0开始,2D渲染开始支持硬件加速,即在view的Canvas上的绘图操作可以用GPU来加速. 硬件加速会使app消耗更多的内存. 如果配置文件中,Target API level ...
- (PHP)程序中如何判断当前用户终端是手机等移动终端
推荐: Mobile-Detect:https://github.com/serbanghita/Mobile-Detect/blob/master/Mobile_Detect.php Detect ...
- 主成分分析(PCA)特征选择算法详解
1. 问题 真实的训练数据总是存在各种各样的问题: 1. 比如拿到一个汽车的样本,里面既有以“千米/每小时”度量的最大速度特征,也有“英里/小时”的最大速度特征,显然这两个特征有一个多余. 2. 拿到 ...
- Python操作Excel之xlrd
import xlrdworkbooks=xlrd.open_workbook("test.xlsx")print(workbooks.sheet_names())#获取sheet ...
- jquery如何在异步方式中给全局变量赋值
定义一个全局全量,例如:var i=0;然后调用jquery的一个函数 $.get(url, function(data) {i=9;})alert(i);得到的是0而不是9. var i=0; ...
- Hadoop_配置_linux下编译eclipse插件
使用的hadoop版本为hadoop-1.2.1(对应的含源码的安装包为hadoop-1.2.1.tar.gz) 将hadoop和eclipse都解压在home中的用户目录下 /home/chen/h ...
- Calendar获取星期
Calendar的使用举个小栗子: //通过当前时间获取本周周一时间 Date date = new Date(); Calendar calendar = new GregorianCalendar ...
- Commons-Collections 集合工具类的使用
package com.bjsxt.others.commons; import java.util.ArrayList; import java.util.List; import org.apac ...
- gulp和grunt的区别
1. Grunt -> Gulp 早些年提到构建工具,难免会让人联想到历史比较悠久的Make,Ant,以及后来为了更方便的构建结构类似的Java项目而出现的Maven.Node催生了一批自动化工 ...