精华内容
下载资源
问答
  • linux用户文件管理cat /etc/passwd root:x:0:0:root:/root:/bin/bash 列1---root 用户名列2---x 密码占位符列3---0 UID列4---0 GID 列5---root 用户说明列6---/root 家目录列7---/bin/bash shellcat /etc/shadowroot...

    linux用户文件管理

    cat /etc/passwd root:x:0:0:root:/root:/bin/bash

    列1---root 用户名

    列2---x 密码占位符

    列3---0 UID

    列4---0 GID

    列5---root 用户说明

    列6---/root 家目录

    列7---/bin/bash shell

    175acb5d7b23788bcb5373732032eb4c.png

    cat /etc/shadow

    root:$6$mI8tu/72.vW4ulYx$.SiZpbPTTrTuJpMuamkZiuNEuhwaN6IJu6S2hq55Nk8RRYH7QUsT0EU2qrANX7ujV8xnCGr4LY/J0XYBlFzXz1:18577:0:99999:7:::

    列1---root 登录名

    列2---$6$m...lFzXz1 密码,$6表示用的sha-512加密

    列3---18577 最后的修改时间

    列4---0 最小间隔时间,可以修改密码的时间

    列5---99999 最大时间间隔

    列6---7 警告时间

    列7---不活动时间

    列8---失效时间

    列9--- 保留位置,还未设计

    1)“登录名”是与/etc/passwd文件中的登录名相一致的用户账号
    2)“口令”字段存放的是加密后的用户口令字,长度为13个字符。如果为空,则对应用户没有口令,登录时不需要口令;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户不能登录。
    3)“最后一次修改时间”表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCOLinux中,这个时间起点是1970年1月1日。
    4)“最小时间间隔”指的是两次修改口令之间所需的最小天数。
    5)“最大时间间隔”指的是口令保持有效的最大天数。
    6)“警告时间”字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。
    7)“不活动时间”表示的是用户没有登录活动但账号仍能保持有效的最大天数。
    8)“失效时间”字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。

    cat /etc/group root:x:0:

    **在/etc/group 中的每条记录分四个字段:

    第一字段:用户组名称;

    第二字段:用户组密码;

    第三字段:GID

    第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名;**

    用户组的所有信息都存放在/etc/group文件中

    将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段。每个用户都属于某个用户组;一个组中可以有多个用户,一个用户也可以属于不 同的组。当一个用户同时是多个组中的成员时,在/etc/passwd文件中记录的是用户所属的主组,也就是登录时所属的默认组,而其他组称为附加组。

    用户要访问属于附加组的文件时,必须首先使用newgrp命令使自己成为所要访问的组中的成员。用户组的所有信息都存放在/etc/group文件中。此文件的格式也类似于/etc/passwd文件,由冒号(:)隔开若干个字段,这些字段有:

    组名:口令:组标识号:组内用户列表
    1)“组名”是用户组的名称,由字母或数字构成。与/etc/passwd中的登录名一样,组名不应重复。
    2)“口令”字段存放的是用户组加密后的口令字。一般Linux系统的用户组都没有口令,即这个字段一般为空,或者是*。
    3)“组标识号”与用户标识号类似,也是一个整数,被系统内部用来标识组。
    4)“组内用户列表”是属于这个组的所有用户的列表/b],不同用户之间用逗号(,)分隔。这个用户组可能是用户的主组,也可能是附加组。

    展开全文
  • Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。对于文件的权限请参考《Linux的chmod命令》 ...

    一、基本知识

       在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另 一部分是其他用户所拥有的权限 。对于文件的权限请参考《 Linux的chmod命令

       文件(含文件夹,下同)的权限,在shell中可以通过chmod命令来完成,关于此请参考 《 Linux的chmod命令 》 。 在  shell  中,可以使用 chown命令 来改变文件所有者及用户组, chgrp命令 来改变文件所在用户组。 在 Linux的 C程序 中,可以使用 chown函数 来改变文件所有者, 及 所在用户组。

      另外, 在shell中,要修改文件当前的用户必须具有管理员root的权限。可以通过su命令切换到root用户,也可以通过sudo获得root的权限。

    二、使用 chown命令 更改文件拥有者

    在 shell 中,可以使用 chown命令 来改变文件所有者。 chown命令 是change owner(改变拥有者)的缩写。需要要注意的是, 用户必须是已经存在系统中的,也就是只能改变为在 /etc/passwd这个文件中有记录的用户名称才可以 。

    chown命令 的用途很多,还可以顺便直接修改用户组的名称。此外,如果要连目录下的所有子目录或文件同时更改文件拥有者的话,直接加上  -R 的参数即可。

    基本语法:

    chown [ -R]  账号名称  文件或 目录

    chown [ -R]  账号名称: 用户组名称  文件或 目录

    参数

    -R : 进行递归( recursive )的持续更改,即连同子目录下的所有文件、目录

    都更新成为这个用户组。常常用在更改某一目录的情况。

    示例1

    [root@localhost home]#  touch  testfile  //由 root 用户创建文件 

    [root@localhost home]#  ls  testfile  –l 

    -rw--w--w- 1 root root 0 Jun 7 19:35 testfile  //文件的拥有者及拥有者级均为 root 

    [root@localhost home]#  chown  yangzongde  testfile  //修改文件拥有者为 yangzongde 

    [root@localhost home]#  ls  testfile  -l 

    -rw--w--w- 1 yangzongde root 0 Jun 7 19:35 testfile  //查看文件拥有者为 yangzongde,但组仍为 root 

    示例2

    chown   bin   install.log

    ls  -l

    -rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log

    chown  root: root  install.log

    ls -l

    -rw-r--r--  1 root root 68495 Jun 25 08:53 install.log

    三、使用 chgrp命令 更改文件所属用户组

    在shell中,可以使用 chgrp命令 来改变文件所属用户组,该命令就是change group(改变用户组)的缩写。需要注意的是要改变成为的用户组名称,必须在  /etc/group 里存在,否则就会显示错误。

    基本语法:

    chgrp [ -R]  用户组名称  dirname/ filename ...

    参数:

    -R : 进行递归( recursive )的持续更改,即连同子目录下的所有文件、目录

    都更新成为这个用户组。常常用在更改某一目录的情况。

    示例3

    [root@localhost home]#  ls  testfile  -l 

    -rw--w--w- 1 yangzongde root 0 Jun 7 19:35 testfile  //查看文件拥有者为 yangzongde,但组为 root 

    [root@localhost home]#  chgrp   yangzongde  testfile  //修改拥有者组为 yangzongde 

    [root@localhost home]#  ls  testfile  -l 

    -rw--w--w- 1 yangzongde yangzongde 0 Jun 7 19:35 testfile 

    [root@localhost home]#  chown  root: root  testfile  // 使用 chown 一次性修改拥有者及组 

    [root@localhost home]#  ls  testfile  -l 

    -rw--w--w- 1 root root 0 Jun 7 19:35 testfile 

    示例4

    [root@linux ~]#  chgrp  users  install.log

    [root@linux ~]#  ls  -l

    -rw-r--r--  1 root users 68495 Jun 25 08:53 install.log

    示例5

    更改为一个   /etc/group 里不存在的用户组

    [root@linux ~]#  chgrp  testing  install.log

    chgrp: invalid group name `testing' <== 出现错误信息~找不到这个用户组名~

    四、chown 函数的使用

    在Linux 的C 应用编程中,可以使用  chown 函数 来修改文件的拥有者及拥有者组。此函数声明如下: 

    /usr/include/unistd.h文件中

    
     

    /* Change the owner and group of FILE. */  

    extern int chown ( __const char * __file , __uid_t __owner , __gid_t __group ) __THROW __nonnull (( 1 )) __wur ;  

    此函数的第一个参数为欲修改用户的文件,第二个参数为修改后的文件拥有者,第三个参数为修改后该文件拥有者所在的组。

     

    对于 已打开的文件 ,使用  fchown 函数 来修改。其第一个参数为已打开文件的文件描述符,其他同 chown 函数。该函数声明如下: 

    
     

    /* Change the owner and group of the file that FD is open on. */  

    extern int fchown ( int __fd , __uid_t __owner , __gid_t __group ) __THROW __wur ;  

    对于 连接文件 ,则可以使用 lchown 函数。其参数同于 chown 函数。 

    
     

    /* Change owner and group of FILE, if it is a symbolic link the ownership of the symbolic 

    link is changed. */  

    extern int lchown ( __const char * __file , __uid_t __owner , __gid_t __group ) __THROW __nonnull (( 1 )) __wur ;  

    展开全文
  • Linux 中创建用户账号时,设置用户密码是一件基本的事情。每个人都使用 passwd 命令跟上用户名,比如 passwd USERNAME 来为用户设置密码。确保你一定要设置一个难以猜测的密码,这可以帮助你使系统更安全。我的...

    d5d2079e1b05c14edcfd8697263b641e.png

    在 Linux 中创建用户账号时,设置用户密码是一件基本的事情。每个人都使用 passwd 命令跟上用户名,比如 passwd USERNAME 来为用户设置密码。

    确保你一定要设置一个难以猜测的密码,这可以帮助你使系统更安全。我的意思是,密码应该是字母、符号和数字的组合。此外,出于安全原因,我建议你至少每月更改一次密码。

    当你使用 passwd 命令时,它会要求你输入两次密码来设置。这是一种设置用户密码的原生方法。

    如果你不想两次更新密码,并希望以不同的方式进行更新,怎么办呢?当然,这可以的,有可能做到。

    如果你是 Linux 管理员,你可能已经多次问过下面的问题。你可能、也可能没有得到这些问题的答案。

    无论如何,不要担心,我们会回答你所有的问题。

    • 如何用一条命令更改用户密码?
    • 如何在 Linux 中为多个用户更改为相同的密码?
    • 如何在 Linux 中更改多个用户的密码?
    • 如何在 Linux 中为多个用户更改为不同的密码?
    • 如何在多个 Linux 服务器中更改用户的密码?
    • 如何在多个 Linux 服务器中更改多个用户的密码?

    方法-1:使用 passwd 命令

    passwd 命令是在 Linux 中为用户设置、更改密码的标准方法。以下是标准方法。

    # passwd renu
    Changing password for user renu.
    New password:
    BAD PASSWORD: The password contains the user name in some form
    Retype new password:
    passwd: all authentication tokens updated successfully.

    如果希望在一条命令中设置或更改密码,运行以下命令。它允许用户在一条命令中更新密码。

    # echo "new_password" | passwd --stdin thanu
    Changing password for user thanu.
    passwd: all authentication tokens updated successfully.

    方法-2:使用 chpasswd 命令

    chpasswd 是另一个命令,允许我们为 Linux 中的用户设置、更改密码。如果希望在一条命令中使用 chpasswd 命令更改用户密码,用以下格式。

    # echo "thanu:new_password" | chpasswd

    方法-3:如何为多个用户设置不同的密码

    如果你要为 Linux 中的多个用户设置、更改密码,并且使用不同的密码,使用以下脚本。

    为此,首先我们需要使用以下命令获取用户列表。下面的命令将列出拥有 /home 目录的用户,并将输出重定向到 user-list.txt 文件。

    # cat /etc/passwd | grep "/home" | cut -d":" -f1 > user-list.txt

    使用 cat 命令列出用户。如果你不想重置特定用户的密码,那么从列表中移除该用户。

    # cat user-list.txt
    centos
    magi
    daygeek
    thanu
    renu

    创建以下 shell 小脚本来实现此目的。

    # vi password-update.sh
    
    #!/bin/sh
    for user in `more user-list.txt`
    do
    echo "[email protected]" | passwd --stdin "$user"
    chage -d 0 $user
    done

    password-update.sh 文件设置可执行权限。

    # chmod +x password-update.sh

    最后运行脚本来实现这一目标。

    # ./password-up.sh
    
    magi
    Changing password for user magi.
    passwd: all authentication tokens updated successfully.
    daygeek
    Changing password for user daygeek.
    passwd: all authentication tokens updated successfully.
    thanu
    Changing password for user thanu.
    passwd: all authentication tokens updated successfully.
    renu
    Changing password for user renu.
    passwd: all authentication tokens updated successfully.

    方法-4:如何为多个用户设置相同的密码

    如果要在 Linux 中为多个用户设置、更改相同的密码,使用以下脚本。

    # vi password-update.sh
    
    #!/bin/sh
    for user in `more user-list.txt`
    do
    echo "new_password" | passwd --stdin "$user"
    chage -d 0 $user
    done

    方法-5:如何在多个服务器中更改用户密码

    如果希望更改多个服务器中的用户密码,使用以下脚本。在本例中,我们将更改 renu 用户的密码,确保你必须提供你希望更新密码的用户名而不是我们的用户名。

    确保你必须将服务器列表保存在 server-list.txt 文件中,每个服务器应该在单独一行中。

    # vi password-update.sh
    
    #!/bin/bash
    for server in `cat server-list.txt`
    do
    ssh [email protected]$server 'passwd --stdin renu <<EOF
    new_passwd
    new_passwd
    EOF';
    done

    你将得到与我们类似的输出。

    # ./password-update.sh
    
    New password: BAD PASSWORD: it is based on a dictionary word
    BAD PASSWORD: is too simple
    Retype new password: Changing password for user renu.
    passwd: all authentication tokens updated successfully.
    New password: BAD PASSWORD: it is based on a dictionary word
    BAD PASSWORD: is too simple
    Retype new password: Changing password for user renu.
    passwd: all authentication tokens updated successfully.

    方法-6:如何使用 pssh 命令更改多个服务器中的用户密码

    pssh 是一个在多个主机上并行执行 ssh 连接的程序。它提供了一些特性,例如向所有进程发送输入,向 ssh 传递密码,将输出保存到文件以及超时处理。导航到以下链接以了解关于 PSSH 命令的更多信息。

    # pssh -i -h /tmp/server-list.txt "printf '%sn' new_pass new_pass | passwd --stdin root"

    你将获得与我们类似的输出。

    [1] 07:58:07 [SUCCESS] CentOS.2daygeek.com
    Changing password for user root.
    passwd: all authentication tokens updated successfully.
    Stderr: New password: BAD PASSWORD: it is based on a dictionary word
    BAD PASSWORD: is too simple
    Retype new password:
    [2] 07:58:07 [SUCCESS] ArchLinux.2daygeek.com
    Changing password for user root.
    passwd: all authentication tokens updated successfully.
    Stderr: New password: BAD PASSWORD: it is based on a dictionary word
    BAD PASSWORD: is too simple

    方法-7:如何使用 chpasswd 命令更改多个服务器中的用户密码

    或者,我们可以使用 chpasswd 命令更新多个服务器中的用户密码。

    # ./password-update.sh
    
    #!/bin/bash
    for server in `cat server-list.txt`
    do
    ssh [email protected]$server 'echo "magi:new_password" | chpasswd'
    done

    方法-8:如何使用 chpasswd 命令在 Linux 服务器中更改多个用户的密码

    为此,首先创建一个文件,以下面的格式更新用户名和密码。在本例中,我创建了一个名为 user-list.txt 的文件。

    参考下面的详细信息。

    # cat user-list.txt
    magi:new@123
    daygeek:new@123
    thanu:new@123
    renu:new@123

    创建下面的 shell 小脚本来实现这一点。

    # vi password-update.sh
    
    #!/bin/bash
    for users in `cat user-list.txt`
    do
    echo $users | chpasswd
    done

    展开全文
  • 一、更改用户所属组 不过要注意,所更改的组必须是在 /etc/group 里面的。另外 递归 -R参数,有时候也需要。 二、chown 更改拥有者 chown -R owner:group file ##可以同时修改用户和组 (必须在/...

    致谢!!这里要感谢鸟哥,感谢你写的那本书。


    111346_EWwx_2308739.png

    一、更改用户所属组

    不过要注意,所更改的组必须是在  /etc/group 里面的。另外 递归 -R参数,有时候也需要。

    111408_JbMU_2308739.png


    二、chown 更改拥有者

    chown -R owner:group file ##可以同时修改用户和组

    (必须在/etc/passwd里面有的用户) 文件名称

    113156_ig3h_2308739.png


    三、什么时候需要修改用户组合拥有者呢

    在复制文件cp 或者sftp上传文件的时候 用复制执行者的熟悉和权限,所以这个时候需要修改。113408_dASX_2308739.png


    四、修改文件或者文件夹的权限

    chmod read+write+excute(ower)  read+write+excute(group)   read+write+excute(others)  dir or file

    注意:对应的权限的数字,r: 4;w:2;x:1

    113942_sBnW_2308739.png


    113924_4mhc_2308739.png


    转载于:https://my.oschina.net/u/2308739/blog/610238

    展开全文
  • 递归更改所有目录和文件,把拥有者用户改成kevin_xie ,文件所属用户组改为了 sensor 。 chown -R kevin_xie:sensor /data_share_kevin
  • [转载]Linux更改文件文件夹所属用户组(chgrp) 更改所属用户组, chgrp 改变文件的用户组很简单,直接用chgrp即可,这个命令就是change group(改变用户组)的缩写。这样就很好记了。不过,请记住,要改变成为的...
  • linux更改目录所属用户和用户组

    万次阅读 2019-06-28 17:02:37
    用法:chown 【选项】 用户【:用户组】 file 将test.java 文件所属的用户设置成 ...将test.java文件的所属用户设置成yangyuanliang,所属用户组设置成staff chown yangyuanliang:staff test.php 将test...
  • [转载]Linux更改文件文件夹所属用户组(chgrp) 更改所属用户组, chgrp 改变文件的用户组很简单,直接用chgrp即可,这个命令就是change group(改变用户组)的缩写。这样就很好记了。不过,请记住,要改变...
  • Linux 更改目录所属用户和用户组

    千次阅读 2018-11-26 15:24:31
    chown -R git * 用法:chown 【选项】 用户【:用户组】 file ...将test.php 文件的所属用户设置成zhuo,所属用户组设置成zhuogroup  chown zhuo:zhuogroup test.php   将testfiel 及其内部文件所属用...
  • 更改所属用户组, chgrp改变文件的用户组很简单,直接用chgrp即可,这个命令就是change group(改变用户组)的缩写。这样就很好记了。不过,请记住,要改变成为的用户组名称,必须在 /etc/group里存在,否则就...
  • linux 改变文件所属用户

    千次阅读 2018-08-19 20:41:27
    chgrp:改变文件所属用户组 chgrp [-R] 所属组名称 dirname/filename -R: 进行递归的持续更改。也即连同子目录下的所有文件目录都更新成为这个用户组之意,常常用在更改某一目录内所有的文件情况 例如: [root@...
  • linux中的文件或目录都有所属主和所属组的概念,图示中,第一个root就是该目录的所属主,第二个root是该目录的所属组 上一篇文章里面提到了...chown 【用户名】 【文件名或目录名】 更改文件或目录的所属用户
  • 改变所属用户组:chgrp -R users filename -R是为了递归改变文件夹下的文件和文件夹,users是要改为的用户组名称,filename是要改变的文件夹名称 ============================================================...
  • 1.linux的组权限允许多个用户对系统中的对象(比如文件,目录,设备等)共享一组的权限。 2. 新建用户的话adduser命令会直接帮我们设置很多信息,useradd结合命令参数可以更好的帮助我们对用户进行设置,比如设置...
  • Linux下修改文件的所属用户和组 一、更改文件/目录所有者 chown 用户名 文件/目录 例如: chown droid /test 二、更改文件/目录所属用户组 chgrp 组名 文件/目录 例如: chgrp manager 文件/目录 三、同时修改...
  • linux更改文件权限

    2012-08-02 15:00:22
    我们已经知道文件权限对于系统的安全重要性了,也知道文件权限与用户与用户组的关系... chgrp:改变文件所属用户组 。 ? chown:改变文件拥有者。 ? chmod:改变文件的属性、SUID等特性。 更改所属用户组, chgrp
  • 更改linux文件目录拥有者及用户组查看用户和组更改linux文件目录\文件拥有者权限更改文件拥有者更改文件用户组同时修改用户用户组递归覆盖目录权限 查看用户和组 使用root登录或su到root下,确保当前是root用户 ...
  • Linux更改文件权限

    2010-09-22 18:50:54
    chgrp 改变文件所属用户组 chgrp=chgrp group 语法 chgrp-r 用户组 路径/文件名 chown改变文件拥有者 chgrp=chgrp owner 语法 chown-r 用户名 用户组 路径/文件名 Linux基本文件的9个属性 分别owner /group /...
  • 新建用户: useradd:命令用于建立用户帐号。 语法useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>][-u <...
  • 创建用户用户组 useradd xxx -m 创建一个xxx的用户 sudo passwd xxx 设置xxx用户的密码 sudo groupadd test 创建test组 groupmod查看所有的组 删除用户用户组 sudo groupdel test 删除test组 userdel xxx...
  • linux系统中经常需要更改文件的权限,此时,查看、修改文件所属用户和用户组也是一项十分重要的操作。通过以下命令可以查看一个文件夹下所有文件所属用户和用户组及其对应的权限, ls -l 以我本地的upload文件夹为...

空空如也

空空如也

1 2 3 4 5 ... 18
收藏数 356
精华内容 142
关键字:

linux更改文件所属用户

linux 订阅