ubuntu 新建用户,shell中的命令行前缀 显示不完整,ls命令列出的文件名没有颜色

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu 新建用户,shell中的命令行前缀 显示不完整,ls命令列出的文件名没有颜色相关的知识,希望对你有一定的参考价值。

新建了一个用户A,用A的身份打开Shell,内容的前缀显示为 “sh-4.1$”,并且ls命令列出来的文件名字颜色也是单一的,但是用其他用户登录的shell是OK,如下图。

这个好像很简单呀,在/etc/passwd修改james1用户的默认shell为bash就可以了。 我想你新建用户时没有指定新用户的默认shell,系统默认为了sh,而不是bash。追问

哦,,这个怎么修改呢?具体的步骤怎么做?

参考资料:我的博客qiujingyu.com

参考技术A 把你原来用户主目录下的.bashrc文件拷贝到新建用户的主目录下,注意,是.bashrc,隐藏文件。追问

这样做,还是不行。
我把 原来用户主目录下的.bashrc文件拷贝到新建用户的主目录下,并且重启电脑,还是不行

linux一次创建100个用户怎么创建用命令

1、Ubuntu中创建新用户需要先获取root管理员权限,因此先使用sudo su命令获取最高权限。注意获取root权限需要输入你自己的用户密码。

2、批量创建100个以“duanzhang”为用户名前缀的用户,命令为:seq -w 100|sed -r "s#(.*)#useradd duanzhang\\1#g"|bash 。

3、查看新用户是否创建成功,命令为:tail -100 /etc/passwd 。这条命令的意思是输出passwd文件的后100行。

4、将要修改的用户名和密码写入pass.log文件中,命令为:echo duanzhang01..20:$((RANDOM))|tr " " "\\n" >pass.log 。命令里的RANDOM表示生成随机数,以作为随机密码。

5、查看生成的pass.log文件的内容,以确认是否成功写入文件。从图中可以看到生成了100行数据,每一行使用冒号隔开用户名及其对应的密码,可以看到这100个密码并无规则,是随机的。

6、执行chpasswd命令:chpasswd<pass.log 。其中chpasswd命令在Ubuntu中用于批量更改用户密码,它需要先读取我们前一步生成的密码文件pass.log,然后根据该文件内容修改密码。

7、根据pass.log文件里记录的这100个用户的密码逐个查看对应的随机密码是否有效。使用su命令切换到新用户并输入pass.log里记录的对应的密码,成功登录,可见用户创建成功。

参考技术A

你可以写一个shell脚本

基本上,批量添加用户有两种方式:

一是用useradd + passwd命令配合脚本来添加;

二是用newusers+chpasswd来添加。

方法一、useradd + passwd命令配合脚本来添加

用户的初始密码被设为用户名+123

#! /bin/bash
#
#batch add users with file called users.list
#
for username in $(more users.list)
do
if [-n $username]
then
  useradd -m $username
  echo
  echo $username"123" | passwd -- stdin $username
  echo
  echo "User $username's password is changer!"
else
  echo "The username is null!"
fi
done
~

其中users.list文件内容如下:

johnson
lily
kelly


方法二、newusers+chpasswd批量添加用户




1、首先我们创建用户文件和密码文件;

我们要创建包含新用户的文件userfile.txt ;另一个是为新添加的用户设置密码的userpwdfile.txt;

[root@localhost ~]# touch userfile.txt 
[root@localhost ~]# touch userpwdfile.txt

然后用文本编辑器打开文件userfile.txt,添加如下内容;

win00:x:520:520::/home/win00:/sbin/nologin 
win01:x:521:521::/home/win01:/sbin/nologin 
win02:x:522:522::/home/win02:/sbin/nologin 
win03:x:523:523::/home/win03:/sbin/nologin 
win04:x:524:524::/home/win04:/sbin/nologin 
win05:x:525:525::/home/win05:/sbin/nologin 
win06:x:526:526::/home/win06:/sbin/nologin 
win07:x:527:527::/home/win07:/sbin/nologin 
win08:x:528:528::/home/win08:/sbin/nologin 
win09:x:529:529::/home/win09:/sbin/nologin

userfile.txt 文件内容格式和 /etc/passwd 的格式是一样的,必须严格按照/etc/passwd 的格式来书写;上面所添加的用户都不能登录系统,但完全能用于ftp登录,但您得在相应ftp服务器的配置文件中打开让本地用户有读写权限;如果您想让上 面的部份用户可以登录系统,可以把SHELL类似改一改,比如改成/bin/bash ;

我们再来书写新增用户的密码文件userpwdfile.txt内容;这个文件的内容中的用户名要与 userfile.txt用户名相同且严格按照“用户名:密码”的格式来写,一个用户一行;也就是说我们先是添加了win00到win09的用户,现在要为这些用户更新密码;比如下面的;

win00:123456 
win01:654321 
win02:123321 
win03:qweewq 
win04:google 
win05:adadwc 
win06:wsscee 
win07:xxec32 
win08:543wew 
win09:3ce3wf

2、用newusers批量添加用户,此时用户是没有密码的

[root@localhost ~]# newusers userfile.txt

2、执行命令/usr/sbin/pwunconv,将/etc/shadow产生的shadow密码解码,然后回写到/etc/passwd中, 并将/etc/shadow的shadow密码栏删掉。这是为了方便下一步的密码转换工作,即先取消shadow password功能,关闭影子文件。

[root@localhost ~]# pwunconv

3、 用chpasswd批量修改密码
[root@localhost ~]# chpasswd < userpwdfile.txt

4、最后不要忘了恢复影子文件,保证安全,您可以通过下面的命令来映射到 /etc/shadow文件名

[root@localhost ~]# pwconv

追问

原谅我啥也不懂是个新手八,shell脚本是什么!怎么添加。。还要给100个用户添加密码都为123456 100个用户分别为user1~user100 !/bin/bash写在哪里直接写在root下吗?麻烦了

本回答被提问者和网友采纳
参考技术B RHEL 6.3 批量添加新用户后,登录不正确,即不能登录到系统,只有一个一个修改密码才行。

以上是关于ubuntu 新建用户,shell中的命令行前缀 显示不完整,ls命令列出的文件名没有颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何直接用linux shell命令从windows下载文件?

ubuntu命令行添加拥有管理员权限新用户

linux一次创建100个用户怎么创建用命令

ubuntu服务器常用命令

Linux -shell特殊符号

Ubuntu Shell常用命令