[内容] Linux ls 命令输出结果的解析

内容一:ls 命令输出结果

# ls
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu

(补充:这里以显示文件名为 mingyuzhu 的文件)

内容二:ls 命令输出结果简介

2.1 第 1 个字母 (输出结果的第 1 段)

# ls
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
|

1) – 普通文件 (file)
2) b 块设备 (block device)
3) c 字符串 (char device)
4) d 目录 (directory)
5) l 链接文件 (link file)
6) p 管道文件 (pipe file)
7) s 套接字文件 (socket)

2.2 第 2 个到第 4 个字母 (输出结果的第 2 段)

# ls
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
 |||
2.2.1 第 2 个字母 (输出结果的第 2 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
 |

1) – 所属主没有读权限
2) r 所属主有读权限 (read)

2.2.2 第 3 个字母 (输出结果的第 2 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
  |

1) – 所属主没有写权限
2) w 所属主有写权限 (write)

2.2.3 第 4 个字母 (输出结果的第 2 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
   |

1) – 所属主没有执行权限
2) x 所属主有执行权限 (execute)
3) s 所属主有执行权限 (execute),且让所有的用户都可以执行此文件 (Set UID)
4) S 所属主没有执行权限,但让所有的用户都可以执行此文件 (Set UID)

2.3 第 5 个到第 7 个字母 (输出结果的第 3 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
    |||
2.3.1 第 5 个字母 (输出结果的第 3 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
    |

1) – 所属组没有读权限
2) r 所属组有读权限 (read)

2.3.2 第 6 个字母 (输出结果的第 3 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
     |

1) – 所属组没有写权限
2) w 所属组有写权限 (write)

2.3.3 第 7 个字母 (输出结果的第 3 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
      |

1) – 所属组没有执行权限
2) x 所属组有执行权限 (execute)
3) s 所属组有执行权限 (execute),且让所有的用户在此目录下创建的目录的所属组都和此目录相同 (Set GID)
4) S 所属组没有执行权限,且让所有的用户在此目录下创建的目录的所属组都和此目录相同 (Set UID)

(注意:目录的执行权限代表可以进入这个目录)

2.4 第 8 个到第 10 个字母 (输出结果的第 4 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
       |||
2.4.1 第 8 个字母 (输出结果的第 4 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
       |

1) – 其他用户没有读权限
2) r 其他用户有读权限 (read)

2.4.2 第 9 个字母 (输出结果的第 4 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
        |

1) – 其他用户没有写权限
2) w 其他用户有写权限 (write)

2.4.3 第 10 个字母 (输出结果的第 4 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
         |

1) – 其他用户没有执行权限
2) x 其他用户有执行权限 (execute)
3) s 所属组有执行权限 (execute),且只有创建此文件的用户和 root 用户可以删除 (Sticky Bit)
4) S 所属组没有执行权限,且只有创建此文件的用户和 root 用户可以删除 (Sticky Bit)

2.5 第 11 个字母 (输出结果的第 5 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
           ||

1) 如果是文件,则代表此文件的链接数

(注意:此链接数包含软链接数和硬链接数)

2) 如果是目录,则代表此目录内的目录数

(注意:此最低值为 2,因为每个目录都至少包含 . (1 个点代表当前目录) 和 .. (2 个点代表此目录第上级目录) 这 2 个隐藏目录)

2.6 第 11 个到第 12 个字母 (输出结果的第 5 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
              ||||||||| |||||||||
2.6.1 第 11 个字母 (输出结果的第 5 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
              |||||||||

此项目的所属主

(补充:这里的所属主显示的是 mingyuzhu)

2.6.2 第 12 个字母 (输出结果的第 5 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                        |||||||||

此项目的所属组

(补充:这里的所属组显示的是 mingyuzhu)

2.7 第 13 个字母 (输出结果的第 6 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                                  ||||

此项目的大小

(补充:这里显示的大小是 4.0K)

2.8 第 14 个到第 16 个字母 (输出结果的第 7 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                                       ||| || |||||
2.8.1 第 14 个字母 (输出结果的第 7 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                                       |||

文件最后修改的月份

2.8.2 第 15 个字母 (输出结果的第 7 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                                           ||

文件最后修改的日期

2.8.3 第 16 个字母 (输出结果的第 7 段)
drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                                              |||||

文件最后修改的时间

2.9 第 17 个字母 (输出结果的第 8 段)

drwxr-x--- 21 mingyuzhu mingyuzhu 4.0K Aug 29 14:34 mingyuzhu
                                                    |||||||||

文件名

[CONTENT] Linux common parameters of /etc/fstab file

/dev/vg/lv_var /var xfs nodev,nosuid,noexec 0 0
/dev/vg/lv_var_log /var/log xfs nodev,nosuid,noexec,x-systemd.requires-mounts-for=/var 0 0

(
Add:
1) nodev parameter here means this directory can not be interpreted by devices or blocks
2) nosuid parameter here means no setuid files can be created in this directory
3) noexec parameter here means no files can be executed in this directory
4) x-systemd.requires-mounts-for=/var here parameter means /var/log directory can not be mounted until /var directory has been mounted
)

[DEBUG] Linux resolve error code ‘DB version too old ……, expected …… for domain implicit_files!’

Error Code:

# useradd <account name>
DB version too old ......, expected ...... for domain implicit_files!
......

Or:

# chage -l <user name>
DB version too old ......, expected ...... for domain implicit_files!
......

Solution:

Step One: Create /etc/sssd/sssd.conf file

# vim /etc/sssd/sssd.conf

Add follow lines:

[sssd]
enable_files_domain = true

Step Two: Give /etc/sssd/sssd.conf file properly privilege

# chmod 600 /etc/sssd/sssd.conf

Step Three: Restart sssd service

# systemctl restart sssd

Reference:

https://access.redhat.com/solutions/7031304