【无标题】Linux基础命令

系统监控和性能分析

  1. vmstat:显示关于进程、内存、分页、块IO、中断和CPU活动的信息。

bash

vmstat 1 # 每秒更新一次vmstat的输出

  1. iostat:报告中央处理器统计信息和输入/输出统计信息,对于存储设备性能分析特别有用。

bash

iostat -d -k 1 # 每秒更新一次磁盘I/O的统计信息,并以KB为单位显示

  1. mpstat:显示各个可用CPU的状态信息。

bash

mpstat -P ALL 1 # 每秒更新一次所有CPU的状态信息

  1. pidstat:监视特定进程的状态,如CPU、内存、I/O等。

bash

pidstat -u 1234 # 监视进程ID为1234的进程的CPU使用情况,每秒更新一次

系统日志和调试

  1. journalctl:查询系统日志(对于使用systemd的系统)。

bash

journalctl # 显示系统日志

journalctl -u sshd.service # 显示sshd服务的日志

  1. dmesg:显示或控制内核环形缓冲区的内容。

bash

dmesg | grep -i error # 搜索内核消息中的错误

  1. strace:跟踪系统调用和信号。对于调试和性能分析非常有用。

bash

strace -p 1234 # 跟踪进程ID为1234的进程的系统调用

  1. lsof:列出打开的文件和网络连接。

bash

lsof -i :80 # 列出所有监听在80端口的进程

磁盘和文件系统

  1. fdiskparted:磁盘分区工具。

bash

sudo fdisk /dev/sda # 对/dev/sda进行磁盘分区操作

  1. mkfs:在分区上创建文件系统。

bash

sudo mkfs.ext4 /dev/sda1 # 在/dev/sda1分区上创建ext4文件系统

  1. mountumount:挂载和卸载文件系统。

bash

sudo mount /dev/sda1 /mnt/mydisk # 挂载/dev/sda1到/mnt/mydisk

sudo umount /mnt/mydisk # 卸载/mnt/mydisk

  1. fsck:检查和修复文件系统。

bash

sudo fsck /dev/sda1 # 检查并修复/dev/sda1分区上的文件系统

软件包管理

  1. apt(Debian/Ubuntu等):软件包管理工具。

bash

sudo apt update # 更新软件包列表

sudo apt install package-name # 安装软件包

sudo apt remove package-name # 卸载软件包

  1. yum(CentOS/Fedora等)和dnf(较新版本的Fedora):软件包管理工具。

bash

sudo yum install package-name # 使用yum安装软件包

sudo dnf install package-name # 使用dnf安装软件包

  1. pacman(Arch Linux):软件包管理工具。

bash

sudo pacman -S package-name # 使用pacman安装软件包

  1. sync:将所有未写的系统缓冲区写到磁盘中,保证磁盘与内存数据的一致性。

bash

sync

  1. chmod:改变文件或目录的权限。

bash

chmod u+x file.txt # 为文件file.txt的所有者添加执行权限

  1. chown:改变文件或目录的所有者和/或组。

bash

chown user:group file.txt # 将file.txt的所有者更改为user,组更改为group

  1. ln:创建硬链接或符号链接。

bash

ln -s target.txt link.txt # 创建一个指向target.txt的符号链接link.txt

  1. tar(续):除了之前提到的压缩和解压功能,还可以用于追加文件到归档文件。

bash

tar -rvf archive.tar new_file.txt # 将new_file.txt追加到archive.tar中

  1. getconf:显示系统变量配置。

bash

getconf _NPROCESSORS_ONLN # 显示系统上的逻辑处理器数量

  1. setfaclgetfacl:用于管理文件访问控制列表(ACLs)。

bash

setfacl -m u:user:rw file.txt # 为用户user设置对file.txt的读写权限

  1. lsof(续):列出被进程打开的文件和网络连接。

bash

lsof -u user # 列出用户user打开的所有文件

  1. atbatch:用于在指定时间运行命令。

bash

echo "command" | at now + 5 minutes # 5分钟后运行command命令

  1. crontab:用于设置周期性被执行的任务。

bash

crontab -e # 编辑当前用户的crontab文件以添加计划任务

再列出一些Linux中常用的命令和工具:

  1. dmesg:显示或控制内核环形缓冲区的内容,通常用于查看系统引导时的消息或内核日志。

bash

dmesg | grep "error" # 过滤出包含"error"的行

  1. last:显示最近登录到系统的用户列表。

bash

last

  1. whoami:显示当前用户名。

bash

whoami

  1. df:显示磁盘使用情况,包括每个已挂载文件系统的总容量、已用空间、可用空间和挂载点。

bash

df -h # 以人类可读的格式显示

  1. du:估算文件和目录的磁盘使用情况。

bash

du -sh /path/to/directory # 显示目录的磁盘使用情况,并给出总计

  1. screentmux:终端复用器,允许用户在一个物理终端上启动多个虚拟终端,并可以在它们之间切换。

bash

screen # 启动一个新的screen会话

tmux # 启动一个新的tmux会话

  1. curlwget:用于从命令行发送HTTP请求和下载文件。

bash

curl https://example.com # 发送HTTP GET请求到example.com

wget https://example.com/file.txt # 下载example.com上的file.txt文件

  1. ncdu(NCurses Disk Usage):基于文本的用户界面程序,用于查看磁盘使用情况。

bash

ncdu /path/to/directory # 在指定的目录下启动ncdu

  1. nc(Netcat):一个功能强大的网络工具,可以用于读取和写入TCP和UDP数据。

bash

nc -l 12345 # 在12345端口上监听连接

nc localhost 12345 # 连接到本地主机的12345端口

  1. strace:跟踪系统调用和信号,对于调试和性能分析非常有用。

bash

strace -p 1234 # 跟踪进程ID为1234的进程的系统调用

  1. lsof(续):显示任何系统进程当前打开的文件和使用的网络套接字。

bash

lsof -i :80 # 显示所有使用80端口的进程

  1. iostat(续):报告中央处理器统计信息和输入/输出统计信息,对于存储设备性能分析特别有用。

bash

iostat -xz 1 # 每秒更新一次I/O统计信息,包括扩展统计和磁盘分区统计

  1. netstat(续):显示网络连接、路由表、接口统计等网络相关信息。

bash

netstat -tuln # 显示TCP和UDP监听套接字

  1. ssh-keygen:生成、管理和转换认证密钥,用于SSH协议。

bash

ssh-keygen -t rsa -b 4096 # 生成一个新的RSA密钥对,密钥长度为4096位

  1. visudo:安全地编辑sudoers文件,该文件控制哪些用户可以执行哪些命令作为其他用户。

bash

visudo # 使用visudo编辑器编辑sudoers文件

这些命令和工具在Linux系统中非常有用,涵盖了系统管理、网络、安全、调试等多个方面。希望这些能对你有所帮助!

  • 49
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值