getent使用小结

转载请注明出处:

  getent 是一个用于访问系统数据库的命令,通常用于获取与网络有关的信息,比如用户、组、主机名、服务等。这个命令是 Linux 和 Unix 系统中非常有用的工具,可以用来查询多种数据库,无需进行直接的配置文件查找。

getent 命令特性

  • 多种数据库支持:getent 可以访问多种系统数据库,包括:

    • passwd:用户账户信息。
    • group:组信息。
    • hosts:主机信息。
    • services:网络服务信息。
    • protocols:网络协议信息。
    • networks:网络信息。
  • 与 nsswitch.conf 集成:getent 会考虑 /etc/nsswitch.conf 配置文件,以确定在哪些数据库中搜索信息。例如,它可以在本地文件和网络服务(如 DNS 或 LDAP)中查找。

  • 格式化输出:getent 的输出格式与相应的配置文件(如 /etc/passwd/etc/group 等)相同,便于直接使用。

getent 命令语法

复制代码
getent [database] [key]
  • database:要查询的数据库,常见的有 passwdgrouphosts 等。
  • key :具体要查找的键,可以是用户名、组名、主机名等。若省略此参数,将返回该数据库中的所有条目。

使用示例

1. 查询所有用户

复制代码
getent passwd

这条命令列出所有用户及其信息,输出格式与 /etc/passwd 相同。

2. 查询特定用户信息

复制代码
getent passwd username

  这将输出指定用户的条目,如果用户存在,比如 root,输出为:

复制代码
root@controller1:~# getent passwd root
root:x:0:0:root:/root:/bin/bash
root@controller1:~#

3. 查询所有组

复制代码
getent group

  列出所有组的信息,输出格式与 /etc/group 相同。

4. 查询特定组信息

复制代码
getent group groupname

5. 查询主机名

复制代码
getent hosts

  列出所有在主机名数据库中的条目(如 hosts 文件或 DNS)。

复制代码
root@2272889dcb9f:/redis# getent hosts
127.0.0.1       localhost
127.0.0.1       localhost ip6-localhost ip6-loopback
100.127.149.145 2272889dcb9f
root@2272889dcb9f:/redis#

6. 查询特定主机信息

复制代码
getent hosts hostname

  示例:

复制代码
root@2272889dcb9f:/redis# getent hosts redis-sentinel
100.127.146.58  redis-sentinel
100.127.149.145 redis-sentinel
100.127.158.14  redis-sentinel
root@2272889dcb9f:/redis#

7. 查询网络服务信息

复制代码
getent services

  列出所有服务及其端口号等信息,格式与 /etc/services 文件相同。

复制代码
root@controller1:~# getent services
tcpmux                1/tcp
echo                  7/tcp
echo                  7/udp
discard               9/tcp sink null
discard               9/udp sink null
systat                11/tcp users
daytime               13/tcp

8. 查询特定服务

复制代码
getent services http

  将输出与 HTTP 服务相关的信息:

复制代码
root@controller1:~# getent services http
http                  80/tcp www
root@controller1:~#
相关推荐
无锡耐特森11 小时前
ModbusTCP转Profinet:打通潜油电泵工业互联新路径
linux·运维·服务器
黑白园11 小时前
个人台式机VMware 15及Ubuntu 16.04.5卸载以及VMware 16.2.3及Ubuntu 24.04.4安装
linux·ubuntu
腾科IT教育19 小时前
Oracle认证怎么选?2026年OCP/OCM报考指南
linux·运维·华为认证·hcie·开闭原则·datacom
longerxin20201 天前
nano编辑器插入、编辑完整操作教程(Linux日志/配置专用)
linux·运维·编辑器
听风3471 天前
Arch Linux 软件安装完全指南
linux·运维·archlinux·pacman
网络安全零基础教程1 天前
网络安全春招面试避坑与复盘指南
linux·网络·安全·web安全·面试·职场和发展
扛枪的书生1 天前
TigerVNC 安装流程
linux
Mortalbreeze1 天前
深入 Linux Socket 编程:端口号、网络字节序与 struct sockaddr 详解
linux·服务器·网络·c++
躺柒1 天前
读半导体简史08大型机
linux·服务器·c语言·数据库·unix·ibm
井川廊咏1 天前
【总集篇】Linux | 如何创建一个 home 目录在 /data 磁盘的 sudo 用户(补档)
linux·运维·服务器