Linux/etc/passwd文件

所有Linux发行版都将用户信息存储在一个名为 /etc/密码 . /etc/passwd文件是一个简单的基于文本的平面数据库,其中包含当前Linux系统用户的用户名、用户ID、默认shell等信息。几十年前,/etc/passwd还包含用户密码散列,但由于安全原因,密码散列移到名为 /etc/阴影 .

null

列表/etc/passwd内容

可以使用下面的cat命令打印/etc/passwd文件内容。作为一个简单的文本文件,它可以很容易地打印到终端或打开一个文件编辑器。对于默认用户,读取/etc/passwd文件不需要额外的特权。但是没有根权限,普通用户不能更改或写入/etc/passwd文件。

cat /etc/passwd
图片[1]-Linux/etc/passwd文件-yiteyi-C++库
列表/etc/passwd内容

/etc/passwd文件字段的含义

ismail:x:1000:1000:İsmail Baydan,,,:/home/ismail:/bin/bash
  • 用户名 :ismail是用户名,用于通过GUI、bash、SSH等登录系统。用户名可以是1到32个字符。字母和数字可以用于用户名,但用户名不能以数字开头。
  • 密码 :x是用户的密码部分。但是x只是一个占位符。实际密码存储在/etc/shadow文件中。只有根用户才能读取此密码文件。
  • 用户ID(UID) :每个用户都有一个唯一的用户id,用数字表示用户。默认情况下,根用户使用UID 0。UID 1-99为预定义帐户保留,如新闻、lp、man、备份等。UID 100-999为系统帐户保留,如avahi、saned、sssd等。正常用户ID从1000开始。
  • 组ID(GID) :每个用户都有一个主组,它通常是用户自己的组。GID指定用户的主ID。组名和ID位于/etc/Group文件下。
  • 用户信息 :这是一个注释字段,用于存储有关用户的一些信息数据,如全名、电话号码、房间号等。
  • 主目录 :主目录指定用户的默认主目录,用于存储用户的私有数据,如下载、文档、图片等。用户的主目录通常在/home-like/home/ismail下创建。
  • 贝壳 :Linux提供了多个名为bash、ksh、csh的shell,shell信息提供了默认的用户shell绝对路径。

相关文章: 如何使用cURL进行POST请求?

/etc/passwd中的Grep用户名

在Linux系统中,/etc/passwd是一个简单的文本文件,其中包含用户名,因此可以对其进行grepped,以便只列出用户名。逐行列出的用户名。

grep -oE '^[^:]+' /etc/passwd
root daemon bin sys sync games man lp... gnome-initial-setup gdm ismail systemd-coredump lightdm xrdp ali ahmet mysql sshd sddm

通过/etc/passwd更改用户默认Shell

/etc/passwd存储每个用户的默认shell二进制路径。一般来说,/bin/bash是最流行的shell,也是用户使用的默认shell。可以通过/etc/passwd文件更改特定用户的默认shell。只需将用户的最后一列更改为所需的shell。在下面的示例中,用户ismail default shell更改为ksh。

ismail:x:1000:1000:İsmail Baydan,,,:/home/ismail:/bin/ksh

通过/etc/passwd更改用户主目录

用户主目录也存储在/etc/passwd中。可以通过此文件更改用户主目录。只需将新的主目录路径放在默认shell之前。在下面的示例中,用户ismail的默认主目录更改为/mnt/ismail。

ismail:x:1000:1000:İsmail Baydan,,,:/mnt/ismail:/bin/bash
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享