useradd 无法打开密码文件

    老问题了,以前在某论坛写过帖子,但是找不到了,现在记在这。。。。

    造成这个现象的原因是/etc/passwd文件的ext2文件属性被修改(但即便是在ext3系统中,这个属性也有效果。目前还没在ext4文件系统中测试)。使用lsattr可以查看该文件的属性:

[root@RHEL ~]# lsattr /etc/passwd
----i-------- /etc/passwd

    该文件被设置了"i"属性,该属性指定当前文件不可被修改,在手册中对此属性的描述为(man chattr):

       A file with the ‘i’ attribute cannot be modified: it cannot be deleted or renamed, no link can be created  to  this  file
       and  no  data  can be written to the file.  Only the superuser or a process possessing the CAP_LINUX_IMMUTABLE capability
       can set or clear this attribute.

    使用chattr去掉相关文件的"i"属性(我的系统中,/etc/shadow也被设置了"i"属性):

[root@RHEL ~]# chattr -i /etc/passwd
[root@RHEL ~]# chattr -i /etc/shadow

    这样,就可以添加用户了。另外,虽然不知道是谁,或者哪个程序设置了"i"属性,但是此属性对系统安全还是有一定用途的,建议添加用户后将文件的"i"属性再设置上。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "linux useradd" 是用于在 Linux 系统上创建新用户账户的命令。它的使用方法如下: 1. 打开终端,以 root 用户身份登录。 2. 输入以下命令: useradd [选项] 用户名 其中,[选项] 可以是一些参数,例如 -m 表示创建用户的同时创建家目录,-s 表示指定用户的默认 Shell 程序。 用户名是你想要创建的新用户的名称。 3. 设置用户的密码: 输入以下命令: passwd 用户名 然后会提示你输入两次密码,第一次输入的是新密码,第二次是确认密码。 4. 完成后,可以使用新创建的用户账户登录系统。 ### 回答2: Linuxuseradd命令是一个用于在系统中创建新用户的命令行工具。它允许管理员通过指定参数来设置新用户的各种属性和选项。 useradd命令最基本的用法是只提供一个用户名,它将会默认使用一些默认的设置来创建新用户。默认情况下,用户的创建目录会被设置为/home/username,用户的登录shell会被设置为系统默认的shell(通常是/bin/bash)。 在useradd命令中,还可以使用一些选项来设置新用户的各种属性。例如,我们可以使用-m选项来创建用户的家目录;-s选项来设置用户的登录shell;-u选项来设置用户的用户ID(UID);-g选项来设置用户的主要用户组;-G选项来设置用户的附加用户组等。 除了这些基本属性之外,useradd命令还可以设置其他一些高级选项来进一步自定义用户。例如,-c选项可以用来添加关于用户的注释信息;-d选项可以用来指定用户的家目录的路径;-e选项可以设置用户账户的有效期等等。 总之,Linuxuseradd命令是一个强大的工具,允许管理员使用各种选项和参数来创建和配置系统中的用户。通过使用不同的选项,管理员可以根据需求定制用户的属性,以便满足不同的系统和安全要求。 ### 回答3: linux useradd是一个用于在Linux系统中创建用户的命令行工具。该命令可以在终端中使用,并具有多个选项和参数,用于指定用户的不同属性和设置。 使用useradd命令,可以很容易地创建新用户。只需在终端中键入"sudo useradd username",其中"username"是要创建的用户的名称。执行此命令后,系统会在/etc/passwd文件中创建一个新的用户记录,并在/home目录下创建与用户名相同的文件夹作为用户的主目录。 用户创建后,可以使用"passwd"命令为其设置密码。例如,"sudo passwd username"会提示您输入新密码,并要求再次确认密码密码设置成功后,用户就可以使用其用户名和密码登录系统了。 除了基本的用户名和密码设置外,useradd命令还可以接受其他选项和参数来进一步自定义用户的属性。例如,"-d"选项可以指定用户的主目录路径,"-s"选项可以指定用户登录时要使用的shell,"-g"选项可以指定用户所属的初始组等等。 总结来说,linux useradd是一种用于在Linux系统中创建新用户的命令行工具。通过指定用户名、密码和其他属性,可以轻松创建和定制用户账户。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值