CentOS命令大全,值得每位运维工程师收藏!

网络东西不好懂 2024-07-20 04:43:34

CentOS(Community ENTerprise Operating System)是基于Red Hat Enterprise Linux(RHEL)的自由和开源的企业级操作系统,旨在提供一个免费的、稳定的、可自由使用的替代品。CentOS的稳定性和安全性使其成为服务器和生产环境中的首选。作为运维工程师,掌握CentOS命令行操作不仅能提高工作效率,还能解决日常工作中的复杂问题。

系统管理命令用户和组管理

在CentOS中,用户和组管理是非常重要的。通过管理用户和组,可以控制系统的访问权限,确保系统的安全性和稳定性。

useradd:添加新用户useradd usernameusername:新用户的名称。

示例:

useradd johnpasswd:设置或更改用户密码passwd usernameusername:要设置密码的用户。

示例:

passwd johnusermod:修改用户信息usermod [选项] username常用选项:-aG groupname:将用户添加到附加组中。-d /home/new_home:更改用户的主目录。

示例:

usermod -aG wheel johnuserdel:删除用户userdel [选项] username常用选项:-r:删除用户的同时删除用户的主目录和邮件目录。

示例:

userdel -r johngroupadd:添加新组groupadd groupnamegroupname:新组的名称。

示例:

groupadd admingroupdel:删除组groupdel groupnamegroupname:要删除的组。

示例:

groupdel admin文件和目录操作

在日常操作中,管理文件和目录是运维工程师的基本任务。CentOS提供了一系列命令来高效地执行这些任务。

ls:列出目录内容ls [选项] [目录]常用选项:-l:使用长格式列出信息。-a:列出所有文件,包括隐藏文件。

示例:

ls -l /etccd:切换目录cd [目录]目录:要切换到的目录路径。

示例:

cd /var/logcp:复制文件或目录cp [选项] 源文件 目标文件常用选项:-r:递归复制目录及其内容。

示例:

cp /etc/passwd /tmp/cp -r /etc /backup/mv:移动或重命名文件或目录mv [选项] 源文件 目标文件

示例:

mv /tmp/passwd /tmp/passwd_backupmv /home/john /home/john_oldrm:删除文件或目录rm [选项] 文件常用选项:-r:递归删除目录及其内容。-f:强制删除,不提示确认。

示例:

rm /tmp/passwd_backuprm -rf /tmp/old_filesmkdir:创建新目录mkdir [选项] 目录常用选项:-p:递归创建多级目录。

示例:

mkdir /home/new_usermkdir -p /home/new_user/docs权限管理

文件和目录的权限管理是Linux系统安全的重要组成部分。通过设置适当的权限,可以控制谁可以访问和修改文件。

chmod:修改文件权限chmod [选项] 模式 文件模式:可以是符号模式(如u+x)或数字模式(如755)。

示例:

chmod 755 script.shchmod u+x script.shchown:修改文件所有者chown [选项] 用户:组 文件

示例:

chown john:admin /home/john/script.shchgrp:修改文件所属组chgrp [选项] 组 文件

示例:

chgrp admin /home/john/script.sh磁盘管理

磁盘管理包括监视磁盘使用情况、分区和挂载文件系统等操作。

df:显示文件系统磁盘空间使用情况df [选项]常用选项:-h:以人类可读的格式显示。

示例:

df -hdu:显示目录或文件的磁盘使用情况du [选项] [目录]常用选项:-sh:以简洁和人类可读的格式显示。

示例:

du -sh /var/logfdisk:磁盘分区管理fdisk [选项] 设备

示例:

fdisk /dev/sdamount:挂载文件系统mount [选项] 设备 目录

示例:

mount /dev/sda1 /mntumount:卸载文件系统umount [选项] 目录

示例:

umount /mnt软件包管理

在CentOS中,软件包管理是系统维护和更新的重要部分。yum命令是CentOS中的默认包管理工具。

yum:软件包管理器yum [选项] 命令 [包名]常用命令:install:安装软件包。update:更新所有已安装的软件包。remove:删除软件包。

示例:

yum install httpdyum updateyum remove httpd网络管理命令

在CentOS系统中,网络管理是非常重要的一个环节。通过配置和管理网络,确保服务器能够顺畅地与外界进行通信。

网络配置ifconfig:显示或配置网络接口

ifconfig命令用于显示或配置网络接口的IP地址、子网掩码和广播地址等信息。

ifconfig [接口] [选项]常用选项:up:启动网络接口。down:关闭网络接口。

示例:

ifconfig eth0ifconfig eth0 192.168.1.100 netmask 255.255.255.0ifconfig eth0 upip:显示或配置网络设备、路由和隧道

ip命令是ifconfig命令的增强版,功能更加强大,用于配置网络设备、管理路由和设置隧道。

ip [选项] 对象 命令常用对象:addr:显示或修改网络接口地址。link:显示或修改网络接口属性。route:显示或修改路由表。

示例:

ip addr showip addr add 192.168.1.100/24 dev eth0ip link set eth0 upip route add default via 192.168.1.1nmcli:NetworkManager命令行接口

nmcli命令用于控制NetworkManager,并显示网络状态、配置网络连接。

nmcli [选项] 命令常用命令:device status:显示所有网络设备的状态。connection show:显示所有网络连接。connection up:激活网络连接。

示例:

nmcli device statusnmcli connection shownmcli connection up eth0网络诊断ping:测试网络连通性

ping命令通过向目标主机发送ICMP回显请求来测试网络连通性。

ping [选项] 目标主机常用选项:-c:指定发送的请求数。-i:指定发送请求的间隔时间。

示例:

ping -c 4 google.comping -i 0.5 google.comtraceroute:跟踪路由路径

traceroute命令用于显示数据包从源主机到目标主机之间经过的路由节点。

traceroute [选项] 目标主机常用选项:-m:指定最大跳数。

示例:

traceroute google.comtraceroute -m 20 google.comnetstat:显示网络连接、路由表和接口统计

netstat命令用于显示当前的网络连接、路由表、接口统计和多播成员。

netstat [选项]常用选项:-t:显示TCP连接。-u:显示UDP连接。-l:显示监听的套接字。

示例:

netstat -tulnnetstat -iss:显示网络套接字信息

ss命令是netstat命令的替代品,功能更强大且速度更快,用于显示网络套接字的信息。

ss [选项]常用选项:-t:显示TCP套接字。-u:显示UDP套接字。-l:显示监听的套接字。

示例:

ss -tulnss -s网络安全iptables:配置Linux内核防火墙规则

iptables命令用于配置IPv4的包过滤规则,可以用于防火墙设置、NAT和数据包过滤等。

iptables [选项] 命令常用命令:-L:列出当前的防火墙规则。-A:在规则链的末尾添加规则。-D:删除规则链中的某条规则。

示例:

iptables -Liptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -D INPUT -p tcp --dport 80 -j ACCEPTfirewalld:动态防火墙管理工具

firewalld命令是一个提供动态管理网络防火墙功能的工具,支持IPv4、IPv6防火墙和以太网桥。

firewall-cmd [选项]常用选项:--state:查看firewalld的状态。--reload:重新加载防火墙规则。--add-port:添加允许通过的端口。

示例:

firewall-cmd --statefirewall-cmd --permanent --add-port=80/tcpfirewall-cmd --reload进程和服务管理命令

在CentOS系统中,进程和服务管理是确保系统稳定运行的关键。通过管理进程和服务,运维工程师可以监控系统的运行状态,调整系统性能,并解决潜在问题。

进程管理ps:显示当前进程

ps命令用于显示当前系统中的进程信息,可以结合不同的选项获取详细的进程状态。

ps [选项]常用选项:aux:显示所有用户的所有进程,并包括详细信息。

示例:

ps auxtop:实时显示系统状态

top命令用于实时监控系统的进程状态、CPU使用率、内存使用率等信息。

top在top界面中,可以使用以下快捷键:q:退出。k:终止进程。r:重新调整进程的优先级。htop:更友好的进程监控工具

htop命令是top命令的增强版,提供了更友好的界面和更强大的功能。

htop安装htop:yum install htop启动htop:htopkill:终止进程

kill命令用于终止指定的进程,可以通过进程ID(PID)来指定要终止的进程。

kill [选项] PID常用选项:-9:强制终止进程。

示例:

kill -9 1234pkill:按进程名称终止进程

pkill命令用于按进程名称终止进程,无需知道具体的PID。

pkill [选项] 进程名称

示例:

pkill httpdpgrep:按进程名称查找进程ID

pgrep命令用于按进程名称查找进程ID,可以用于结合其他命令进行操作。

pgrep [选项] 进程名称

示例:

pgrep httpd服务管理

在CentOS 7及以后版本中,systemd已成为默认的系统和服务管理器。systemctl命令是用来管理systemd服务的主要工具。

systemctl:管理系统服务systemctl [选项] 命令 服务常用命令:start:启动服务。stop:停止服务。restart:重启服务。status:查看服务状态。enable:设置服务开机启动。disable:取消服务开机启动。

示例:

systemctl start httpdsystemctl stop httpdsystemctl restart httpdsystemctl status httpdsystemctl enable httpdsystemctl disable httpdchkconfig:管理服务的开机启动(适用于CentOS 6)

在CentOS 6及以前版本中,chkconfig命令用于管理服务的开机启动。

chkconfig [选项] 服务常用选项:--list:列出所有服务及其开机启动状态。--level:指定运行级别。

示例:

chkconfig --list httpdchkconfig httpd onchkconfig httpd off日志管理

日志管理是系统管理中的重要环节,通过查看和分析日志,可以了解系统的运行状态,排查问题。

journalctl:查看systemd日志

journalctl命令用于查看由systemd管理的日志信息。

journalctl [选项]常用选项:-u:查看指定服务的日志。-f:实时跟踪日志输出。

示例:

journalctl -u httpdjournalctl -fdmesg:查看内核环缓冲区日志

dmesg命令用于查看和控制内核环缓冲区中的信息,主要记录系统启动过程和内核日志。

dmesg [选项]常用选项:-c:清除缓冲区中的信息。

示例:

dmesgdmesg -c/var/log目录

CentOS系统中的各种日志文件通常存储在/var/log目录下,通过查看这些日志文件,可以了解系统和服务的详细运行情况。

常见日志文件:/var/log/messages:系统通用日志。/var/log/secure:安全相关日志。/var/log/maillog:邮件相关日志。/var/log/httpd:Apache HTTP服务器日志。

示例:

tail -f /var/log/messagestail -f /var/log/secure系统监控和性能调优命令

在CentOS系统中,系统监控和性能调优是确保服务器高效运行的关键。通过监控系统资源的使用情况和性能瓶颈,运维工程师可以及时进行调优,提升系统的稳定性和响应速度。

CPU 监控与调优uptime:查看系统运行时间和负载

uptime命令显示系统的运行时间、登录用户数量和系统平均负载。

uptime

示例:

uptimetop:实时显示系统状态

top命令用于实时监控系统的CPU使用率、内存使用率和进程状态。

top在top界面中,可以使用以下快捷键:q:退出。P:按CPU使用率排序。M:按内存使用率排序。mpstat:显示各个CPU的使用情况

mpstat命令用于显示各个CPU的使用情况,帮助分析多核CPU的性能。

mpstat [选项] [时间间隔] [次数]

示例:

mpstatmpstat 2 5sar:系统活动报告

sar命令用于收集、报告和保存系统活动信息,包括CPU、内存、磁盘和网络等资源的使用情况。

sar [选项] [时间间隔] [次数]常用选项:-u:显示CPU使用情况。

示例:

sar -u 1 3内存监控与调优free:显示内存使用情况

free命令用于显示系统内存的使用情况,包括物理内存、交换分区和缓冲区缓存的使用量。

free [选项]常用选项:-h:以人类可读的格式显示。

示例:

free -hvmstat:显示虚拟内存统计信息

vmstat命令用于报告虚拟内存、进程、CPU活动的状态。

vmstat [时间间隔] [次数]

示例:

vmstat 2 5top:实时监控内存使用情况

在top命令中,可以按内存使用率对进程进行排序,实时监控内存使用情况。

在top界面中:按M键切换到按内存使用率排序。sar:系统活动报告

sar命令同样可以用于监控内存使用情况。

sar -r 1 3磁盘监控与调优df:显示文件系统磁盘空间使用情况

df命令用于显示文件系统的磁盘空间使用情况。

df [选项]常用选项:-h:以人类可读的格式显示。

示例:

df -hdu:显示目录或文件的磁盘使用情况

du命令用于显示指定目录或文件的磁盘使用情况。

du [选项] [目录]常用选项:-sh:以简洁和人类可读的格式显示。

示例:

du -sh /var/logiostat:显示CPU和设备的I/O统计信息

iostat命令用于显示CPU和设备的I/O统计信息,帮助分析磁盘性能。

iostat [选项] [时间间隔] [次数]常用选项:-d:显示磁盘I/O统计信息。

示例:

iostat -d 2 3iotop:实时显示磁盘I/O使用情况

iotop命令用于实时显示进程的磁盘I/O使用情况。

iotop安装iotop:yum install iotop启动iotop:iotop网络监控与调优ifconfig:显示或配置网络接口

ifconfig命令用于显示或配置网络接口的IP地址、子网掩码和广播地址等信息。

ifconfig [接口] [选项]

示例:

ifconfig eth0ip:显示或配置网络设备、路由和隧道

ip命令是ifconfig命令的增强版,功能更加强大,用于配置网络设备、管理路由和设置隧道。

ip [选项] 对象 命令

示例:

ip addr shownetstat:显示网络连接、路由表和接口统计

netstat命令用于显示当前的网络连接、路由表、接口统计和多播成员。

netstat [选项]常用选项:-tuln:显示所有监听的端口。

示例:

netstat -tulnss:显示网络套接字信息

ss命令是netstat命令的替代品,功能更强大且速度更快,用于显示网络套接字的信息。

ss [选项]常用选项:-tuln:显示所有监听的端口。

示例:

ss -tulnping:测试网络连通性

ping命令通过向目标主机发送ICMP回显请求来测试网络连通性。

ping [选项] 目标主机

示例:

ping google.comtraceroute:跟踪路由路径

traceroute命令用于显示数据包从源主机到目标主机之间经过的路由节点。

traceroute [选项] 目标主机

示例:

traceroute google.comiftop:实时显示网络带宽使用情况

iftop命令用于实时显示网络接口的带宽使用情况。

iftop安装iftop:yum install iftop启动iftop:iftop安全和备份命令

在CentOS系统中,安全和备份是确保数据完整性和系统稳定性的关键。通过配置安全策略和定期备份数据,运维工程师可以有效防范安全威胁,并在意外情况下快速恢复数据。

用户和权限管理useradd:添加新用户

useradd命令用于在系统中创建新用户。

useradd [选项] 用户名常用选项:-m:创建用户的主目录。-s:指定用户的默认shell。

示例:

useradd -m -s /bin/bash newuserpasswd:设置用户密码

passwd命令用于设置或更改用户密码。

passwd [选项] 用户名

示例:

passwd newuserusermod:修改用户信息

usermod命令用于修改用户的属性。

usermod [选项] 用户名常用选项:-g:修改用户的主组。-G:修改用户的附加组。

示例:

usermod -g users newuserusermod -G wheel newusergroupadd:添加新组

groupadd命令用于在系统中创建新组。

groupadd [选项] 组名

示例:

groupadd newgroupchown:更改文件或目录的所有者

chown命令用于更改文件或目录的所有者和所属组。

chown [选项] 用户:组 文件或目录

示例:

chown newuser:newgroup /path/to/filechmod:更改文件或目录的权限

chmod命令用于更改文件或目录的访问权限。

chmod [选项] 权限 文件或目录常用模式:数字模式:如755、644等。符号模式:如u+x、g-w等。

示例:

chmod 755 /path/to/filechmod u+x /path/to/script.sh安全审计auditd:Linux审计守护进程

auditd命令用于启动和管理Linux审计子系统。

systemctl start auditdsystemctl status auditdausearch:搜索审计日志

ausearch命令用于搜索审计日志,以特定的条件筛选出相关的审计记录。

ausearch [选项] 条件常用条件:-m:指定审计消息类型。-ui:指定用户ID。

示例:

ausearch -m avcausearch -ui 1000auditctl:控制审计规则

auditctl命令用于管理审计子系统的规则和状态。

auditctl [选项] 命令常用命令:-l:列出当前的审计规则。-a:添加审计规则。

示例:

auditctl -lauditctl -a always,exit -F arch=b64 -S all -F euid=0加密和解密gpg:GNU隐私保护

gpg命令用于加密和解密文件,生成和管理加密密钥。

gpg [选项] 文件常用选项:-c:对文件进行对称加密。-e:对文件进行非对称加密。-d:解密文件。

示例:

gpg -c file.txtgpg -e -r recipient@example.com file.txtgpg -d file.txt.gpgopenssl:OpenSSL命令行工具

openssl命令提供了加密和解密的功能,可以生成和管理密钥、证书等。

openssl [命令] [选项]常用命令:enc:进行对称加密和解密。genrsa:生成RSA密钥对。req:生成证书请求。

示例:

openssl enc -aes-256-cbc -in file.txt -out file.encopenssl genrsa -out private_key.pem 2048openssl req -new -key private_key.pem -out request.csr数据备份和恢复tar:归档工具

tar命令用于创建、解压和管理tar归档文件。

tar [选项] 文件常用选项:-c:创建归档文件。-x:解压归档文件。-z:使用gzip压缩或解压。-v:显示处理过程。-f:指定归档文件名。

示例:

tar -cvzf backup.tar.gz /path/to/directorytar -xvzf backup.tar.gzrsync:远程同步工具

rsync命令用于远程同步文件和目录,支持增量备份。

rsync [选项] 源 目标常用选项:-a:归档模式,保留文件属性。-v:显示详细信息。--delete:删除目标目录中源目录不存在的文件。

示例:

rsync -av /path/to/source /path/to/destinationrsync -av --delete /path/to/source /path/to/destinationdd:数据复制和转换工具

dd命令用于按块复制文件,可以用于备份磁盘或分区。

dd [选项]常用选项:if:输入文件。of:输出文件。bs:块大小。count:块数量。

示例:

dd if=/dev/sda of=/path/to/backup.img bs=1Mdd if=/path/to/backup.img of=/dev/sda bs=1Mscp:安全复制

scp命令用于在远程主机之间安全地复制文件。

scp [选项] 源 目标

示例:

scp /path/to/localfile user@remotehost:/path/to/remotedirectoryscp user@remotehost:/path/to/remotefile /path/to/localdirectory包管理和软件安装命令

在CentOS系统中,包管理和软件安装是系统管理的基础任务。通过有效的包管理,运维工程师可以安装、升级和删除软件包,确保系统的软件环境保持最新和稳定。

yum 包管理工具

在CentOS 7及以前版本中,yum(Yellowdog Updater, Modified)是默认的包管理工具。它用于管理RPM包,包括安装、更新和删除软件包。

安装软件包

yum install命令用于从软件仓库中安装指定的软件包。

yum install [软件包名称]

示例:

yum install httpd更新软件包

yum update命令用于更新系统中已安装的软件包到最新版本。

yum update [软件包名称]

示例:

yum update httpd删除软件包

yum remove命令用于从系统中删除指定的软件包。

yum remove [软件包名称]

示例:

yum remove httpd列出已安装的软件包

yum list installed命令用于列出系统中已安装的所有软件包。

yum list installed查询软件包信息

yum info命令用于查询指定软件包的详细信息。

yum info [软件包名称]

示例:

yum info httpd搜索软件包

yum search命令用于搜索软件包仓库中的软件包。

yum search [关键词]

示例:

yum search nginx清理缓存

yum clean命令用于清理yum的缓存文件,以释放磁盘空间。

yum clean [选项]常用选项:all:清理所有缓存。packages:清理软件包缓存。

示例:

yum clean alldnf 包管理工具

在CentOS 8及以后的版本中,dnf(Dandified YUM)取代了yum成为默认的包管理工具。dnf提供了更快的性能和更多的功能。

安装软件包

dnf install命令用于从软件仓库中安装指定的软件包。

dnf install [软件包名称]

示例:

dnf install httpd更新软件包

dnf update命令用于更新系统中已安装的软件包到最新版本。

dnf update [软件包名称]

示例:

dnf update httpd删除软件包

dnf remove命令用于从系统中删除指定的软件包。

dnf remove [软件包名称]

示例:

dnf remove httpd列出已安装的软件包

dnf list installed命令用于列出系统中已安装的所有软件包。

dnf list installed查询软件包信息

dnf info命令用于查询指定软件包的详细信息。

dnf info [软件包名称]

示例:

dnf info httpd搜索软件包

dnf search命令用于搜索软件包仓库中的软件包。

dnf search [关键词]

示例:

dnf search nginx清理缓存

dnf clean命令用于清理dnf的缓存文件,以释放磁盘空间。

dnf clean [选项]常用选项:all:清理所有缓存。packages:清理软件包缓存。

示例:

dnf clean all软件仓库管理配置仓库

在CentOS中,软件仓库配置文件通常位于/etc/yum.repos.d/目录下。可以手动编辑这些配置文件以添加或修改软件仓库。

vi /etc/yum.repos.d/your-repo.repo

仓库配置文件示例:

[your-repo]name=Your Repositorybaseurl=http://your.repo.url/path/enabled=1gpgcheck=1gpgkey=http://your.repo.url/path/RPM-GPG-KEY-your-repo添加第三方仓库

有时需要添加第三方仓库以获取额外的软件包。例如,EPEL(Extra Packages for Enterprise Linux)仓库提供了许多额外的软件包。

yum install epel-release

dnf install epel-release禁用仓库

可以临时禁用某个仓库来避免从该仓库安装软件包。

yum install [软件包名称] --disablerepo=[仓库ID]

dnf install [软件包名称] --disablerepo=[仓库ID]查看可用仓库

yum repolist 或 dnf repolist命令用于查看当前启用的仓库列表。

yum repolist

dnf repolist查看仓库中的软件包

yum list available 或 dnf list available命令用于查看软件仓库中可用的软件包。

yum list available

dnf list available日志管理和故障排除命令

在CentOS系统中,日志管理和故障排除是系统运维中不可或缺的部分。通过查看系统日志,运维工程师可以监控系统状态、诊断问题并进行故障排除。

系统日志查看journalctl:查看和管理系统日志

journalctl是用于查看和管理systemd系统日志的工具,能够显示各种服务和系统的日志条目。

journalctl [选项]常用选项:-xe:显示详细的错误日志。-u [服务名]:显示指定服务的日志。--since 和 --until:指定时间范围。

示例:

journalctl -xejournalctl -u httpdjournalctl --since "2024-07-15 00:00:00" --until "2024-07-16 00:00:00"dmesg:查看内核环形缓冲区的消息

dmesg命令用于查看内核产生的消息,通常包括硬件和驱动程序的相关信息。

dmesg [选项]常用选项:-T:将时间戳转换为人类可读的格式。

示例:

dmesgdmesg -Ttail:查看文件的尾部内容

tail命令用于查看文件的最后部分,常用于监控日志文件的最新条目。

tail [选项] [文件名]常用选项:-f:实时跟踪文件的新增内容。

示例:

tail -f /var/log/messagestail -f /var/log/syslogless:查看文件内容

less命令用于分页查看文件内容,适用于查看大型日志文件。

less [文件名]

示例:

less /var/log/messagesgrep:在文件中搜索文本

grep命令用于搜索文件中的特定文本,常用于从日志文件中提取关键信息。

grep [选项] [模式] [文件名]常用选项:-i:忽略大小写。-r:递归搜索目录。

示例:

grep "error" /var/log/messagesgrep -r "failed" /var/log/日志管理工具logrotate:日志轮转工具

logrotate用于定期轮转、压缩和删除日志文件,以节省磁盘空间。

logrotate [选项] [配置文件]常用选项:-f:强制执行配置文件中的轮转。-d:以调试模式运行。

示例:

logrotate -f /etc/logrotate.conflogrotate -d /etc/logrotate.conflogwatch:日志分析工具

logwatch用于分析和总结系统日志,并生成报告。

logwatch [选项] --detail [级别] --service [服务名]常用选项:--detail:设置报告详细级别。--service:指定服务进行分析。

示例:

logwatch --detail high --service sshdlogwatch --detail medium故障排除命令top:实时显示系统进程

top命令用于实时显示系统的CPU、内存使用情况及运行中的进程。

top常用快捷键:P:按CPU使用率排序。M:按内存使用率排序。

示例:

tophtop:增强版top工具

htop是top的增强版,提供了更友好的用户界面和额外的功能。

htop安装htop:yum install htop启动htop:htopps:显示进程状态

ps命令用于列出系统中当前的进程。

ps [选项]常用选项:-e 或 -A:显示所有进程。-f:显示详细信息。

示例:

ps -efps auxnetstat:显示网络连接和状态

netstat命令用于显示网络连接、路由表和接口统计。

netstat [选项]常用选项:-tuln:显示所有监听端口。-s:显示网络统计信息。

示例:

netstat -tulnnetstat -sstrace:追踪系统调用和信号

strace命令用于追踪进程执行期间的系统调用和信号。

strace [选项] [命令]常用选项:-p:附加到现有进程。-e:指定追踪的系统调用。

示例:

strace -p [PID]strace -e open,read,write [命令]lsof:列出打开的文件

lsof命令用于列出系统中所有打开的文件和对应的进程。

lsof [选项]常用选项:-i:列出网络连接。-u:列出指定用户的打开文件。

示例:

lsof -ilsof -u rootdf:显示磁盘空间使用情况

df命令用于显示文件系统的磁盘空间使用情况。

df [选项]常用选项:-h:以人类可读的格式显示(如MB、GB)。

示例:

df -hdu:显示目录或文件的磁盘使用情况

du命令用于显示目录或文件的磁盘使用情况。

du [选项] [文件或目录]常用选项:-h:以人类可读的格式显示。-s:仅显示总计。

示例:

du -sh /path/to/directorydu -sh *常见问题解决方法系统服务无法启动查看服务状态:systemctl status [服务名]查看日志:journalctl -u [服务名]网络连接问题检查网络接口状态:ip addr show检查路由设置:ip route show检查防火墙规则:firewall-cmd --list-all磁盘空间不足查看磁盘使用情况:df -h查找大文件:du -ah / | sort -n -r | head -n 10进程占用过多资源查看进程资源使用情况:tophtop查找占用资源的进程:ps aux --sort=-%cpu | head -n 10用户和权限管理命令

在CentOS系统中,用户和权限管理是确保系统安全和资源合理分配的重要任务。有效的用户和权限管理可以防止未授权的访问和操作,确保系统的安全性和稳定性。

用户账户管理useradd:添加新用户

useradd命令用于创建新的用户账户。

useradd [选项] [用户名]常用选项:-m:创建用户的主目录。-s:指定用户的登录Shell。

示例:

useradd -m -s /bin/bash johnusermod:修改用户账户

usermod命令用于修改现有的用户账户信息。

usermod [选项] [用户名]常用选项:-aG:将用户添加到指定组。-s:更改用户的登录Shell。

示例:

usermod -aG wheel johnusermod -s /bin/zsh johnuserdel:删除用户账户

userdel命令用于删除用户账户。

userdel [选项] [用户名]常用选项:-r:删除用户的主目录及其内容。

示例:

userdel -r johnpasswd:修改用户密码

passwd命令用于设置或修改用户密码。

passwd [用户名]

示例:

passwd johnchage:管理用户密码过期信息

chage命令用于管理用户密码的过期和有效期信息。

chage [选项] [用户名]常用选项:-l:列出用户的密码过期信息。-M:设置密码最大有效期(天数)。-W:设置密码过期前的警告天数。

示例:

chage -l johnchage -M 90 johnchage -W 7 john用户组管理groupadd:添加新组

groupadd命令用于创建新的用户组。

groupadd [选项] [组名]

示例:

groupadd developersgroupmod:修改用户组

groupmod命令用于修改现有的用户组信息。

groupmod [选项] [组名]常用选项:-n:更改用户组名称。

示例:

groupmod -n devs developersgroupdel:删除用户组

groupdel命令用于删除用户组。

groupdel [组名]

示例:

groupdel devsgpasswd:管理用户组成员

gpasswd命令用于管理用户组的成员和组信息。

gpasswd [选项] [组名]常用选项:-a:将用户添加到组。-d:从组中删除用户。

示例:

gpasswd -a john developersgpasswd -d john developers文件和目录权限设置chmod:更改文件和目录权限

chmod命令用于更改文件或目录的权限。

chmod [选项] [权限] [文件或目录]常用选项:u:用户权限。g:组权限。o:其他用户权限。+:添加权限。-:删除权限。=:设置权限。权限表示:r:读权限。w:写权限。x:执行权限。

示例:

chmod u+x file.txtchmod g-w directorychmod 755 script.shchown:更改文件或目录的所有者和所属组

chown命令用于更改文件或目录的所有者和所属组。

chown [选项] [所有者][:所属组] [文件或目录]常用选项:-R:递归更改目录及其内容。

示例:

chown john:developers file.txtchown -R john:developers /home/johnchgrp:更改文件或目录的所属组

chgrp命令用于更改文件或目录的所属组。

chgrp [选项] [所属组] [文件或目录]常用选项:-R:递归更改目录及其内容。

示例:

chgrp developers file.txtchgrp -R developers /home/johnsudo权限配置visudo:编辑sudoers文件

visudo命令用于安全地编辑/etc/sudoers文件,配置用户的sudo权限。

visudo在sudoers文件中配置用户权限的示例:john ALL=(ALL) NOPASSWD: /usr/bin/apt-get

上述配置表示用户john可以在不输入密码的情况下运行/usr/bin/apt-get命令。

sudo:以超级用户权限执行命令

sudo命令用于以超级用户或其他用户身份执行命令。

sudo [选项] [命令]常用选项:-u:指定要以其身份执行命令的用户。

示例:

sudo ls /rootsudo -u john whoami备份和恢复命令

在CentOS系统中,备份和恢复是确保数据安全和系统恢复能力的关键任务。有效的备份策略可以保护系统数据不丢失,并在发生故障或数据丢失时快速恢复。备份可以是全量备份或增量备份,恢复操作可以将系统恢复到备份时的状态。

常见的备份工具rsync:远程同步和备份工具

rsync命令用于同步文件和目录,可以进行本地备份,也可以通过网络进行远程备份。rsync支持增量备份,并且可以通过SSH加密传输数据。

rsync [选项] [源] [目标]常用选项:-a:归档模式,递归复制并保留文件属性。-v:显示详细的输出。-z:压缩传输数据。--delete:删除目标中源没有的文件。

示例:

rsync -avz /home/user/ backup@remote:/backup/user/rsync -avz --delete /home/user/ /backup/user/tar:磁带归档工具

tar命令用于创建和解压归档文件,支持将多个文件和目录打包到一个文件中进行备份。

tar [选项] [归档文件] [文件或目录]常用选项:-c:创建归档文件。-x:解压归档文件。-v:显示详细输出。-f:指定归档文件名。-z:通过gzip压缩。-j:通过bzip2压缩。

示例:

tar -cvzf backup.tar.gz /home/user/tar -xvzf backup.tar.gzcp:复制文件和目录

cp命令用于复制文件和目录,也可以用来进行简单的本地备份。

cp [选项] [源] [目标]常用选项:-r:递归复制目录及其内容。-p:保留文件属性。

示例:

cp -rp /home/user/ /backup/user/dump 和 restore:文件系统备份工具

dump和restore命令用于备份和恢复文件系统。dump用于创建备份,restore用于从备份中恢复。

创建备份:dump [选项] [文件系统]恢复备份:restore [选项] [备份文件]

示例:

dump -0u -f /backup/dumpfile /dev/sda1restore -r -f /backup/dumpfiledd:磁盘复制和备份工具

dd命令用于将整个磁盘或分区进行复制备份,适用于完整的磁盘备份和恢复。

dd if=[源设备] of=[目标文件] [选项]常用选项:if:指定源设备。of:指定目标文件。bs:指定块大小。

示例:

dd if=/dev/sda of=/backup/sda.img bs=4Mdd if=/backup/sda.img of=/dev/sda bs=4M备份策略全量备份:备份整个文件系统或目录

全量备份是指对整个文件系统或指定目录进行一次完整的备份。这种备份方式能够完整保存所有数据,但备份文件较大,备份和恢复速度较慢。

增量备份:备份自上次备份以来发生变化的数据

增量备份是指仅备份自上次备份以来发生变化的文件。增量备份节省存储空间和备份时间,但恢复时需要将所有增量备份一起恢复。

差异备份:备份自上次全量备份以来发生变化的数据

差异备份是指备份自上次全量备份以来发生变化的文件。差异备份介于全量备份和增量备份之间,恢复时只需要最新的全量备份和最新的差异备份。

定期备份:根据预定计划进行备份

定期备份是根据预定的时间表(如每日、每周、每月)进行备份。定期备份可以确保备份数据的最新性和完整性。

恢复方法从tar归档恢复

使用tar命令可以从归档文件中恢复文件和目录。

tar -xvzf [归档文件] -C [恢复目录]

示例:

tar -xvzf backup.tar.gz -C /home/user/从rsync备份恢复

使用rsync命令可以从备份位置恢复文件和目录。

rsync -avz [备份源] [恢复目标]

示例:

rsync -avz backup@remote:/backup/user/ /home/user/从dd备份恢复

使用dd命令可以将备份镜像文件恢复到磁盘设备。

dd if=[备份文件] of=[目标设备] [选项]

示例:

dd if=/backup/sda.img of=/dev/sda bs=4M从dump备份恢复

使用restore命令从dump备份中恢复文件系统。

restore -r -f [备份文件]

示例:

restore -r -f /backup/dumpfile
0 阅读:0

网络东西不好懂

简介:感谢大家的关注