Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

系统

uname显示linux系统信息
uname -r显示内核版本信息
uptime显示系统运行的时间(包括平均负载)
hostname显示系统主机名
hostname -i显示系统的IP地址
last reboot显示系统重新启动历史记录
date显示当前系统日期和时间
timedatectl查询和更改系统时钟
cal显示当前日历的月份和日期
w显示系统中当前登录的用户
whoami显示您的登录身份
finger username显示有关用户的信息

硬件

dmesg显示启动消息
cat /proc/cpuinfo显示有关CPU的更多信息,例如型号、型号名称、核心、厂商标识
cat /proc/meminfo显示有关硬件内存的更多信息,例如总内存和可用内存
lshw显示有关系统硬件配置的信息
lsblk显示块设备相关信息
free -m显示系统中空闲和使用的内存(-m标志表示内存(MB))
lspci -tv在树状图中显示PCI设备
lsusb -tv以树状图的形式显示USB设备
dmidecode显示BIOS中的硬件信息
hdparm -i /dev/xda显示有关磁盘数据的信息
hdparm -tT /dev/xda <:code>在设备xda上进行读速度测试
badblocks -s /dev/xda测试磁盘上不可读的块

用户

id显示活动用户的详细信息,如uid、gid和组
last显示系统中的最后一次登录
who显示谁已登录到系统
groupadd “admin”添加组“admin”
adduser “Sam”添加用户 Sam
userdel “Sam”删除用户 Sam
usermod用于更改/修改用户信息

文件

ls -al列出文件-包括常规文件和隐藏文件以及它们的权限
pwd显示当前目录文件路径
mkdir ‘directory_name’创建一个新目录
rm file_name删除一个文件
rm -f filename强制删除文件
rm -r directory_name递归地删除一个目录
rm -rf directory_name强制并递归地删除一个目录
cp file1 file2将file1的内容复制到file2
cp -r dir1 dir2递归地将dir1复制到dir2。如果dir2不存在,则创建它
mv file1 file2将file1重命名为file2
ln -s /path/to/file_name link_name创建到file_name的软链接
touch file_name创建一个新文件
cat > file_name从键盘创建一个文件
more file_name输出文件的内容
head file_name显示文件的前10行
tail file_name显示文件的最后10行
gpg -c file_name加密一个文件
gpg file_name.gpg解密文件
wc打印文件中的字节、单词和行数
xargs从标准输入执行命令

进程

ps显示当前活动的进程
ps aux | grep ‘telnet’搜索进程’telnet’的id
pmap显示进程的内存映射
top显示所有正在运行的进程
kill pid使用给定的pid终止进程
killall proc杀死/终止所有名为proc的进程
pkill process-name向具有其名称的进程发送信号
bg将一个在后台暂停的命令,变成继续执行
fg将后台中的命令调至前台继续运行
fg njob n to the foreground
lsof列出进程打开的文件
renice 19 PID使进程以非常低的优先级运行
pgrep firefox查找Firefox进程ID
pstree在树模型中可视化过程

文件权限

chmod octal filename将文件权限更改为八进制
chmod 777 /data/test.c将rwx权限设置为owner、group和everyone(其他可以访问服务器的人)
chmod 755 /data/test.c将rwx设置为所有者,将r_x设置为组和所有人
chmod 766 /data/test.c为所有者设置rwx,为组和每个人设置rw
chown owner user-file更改文件的所有权
chown owner-user:owner-group file_name更改文件的所有者和组所有者
chown owner-user:owner-group directory更改目录的所有者和组所有者

网络

ip addr show显示IP地址和所有网络接口
ip address add 192.168.0.1/24 dev eth0将IP地址192.168.0.1分配给接口eth0
ifconfig显示所有网络接口的IP地址
ping hostping命令发送ICMP回送请求以建立到服务器/PC的连接
whois domain检索有关域名的更多信息
dig domain检索关于域的DNS信息
dig -x host对域执行反向查找
host google.com执行域名的IP查找
hostname -i显示本地IP地址
wget file_name从在线资源下载文件
netstat -pnltu显示所有活动监听端口

压缩/打包

tar -cf home.tar home<:code>创建名为“home”的存档文件。tar文件’home'
tar -xf files.tar解压档案文件“files.tar”
tar -zcvf home.tar.gz source-folder从源文件夹创建压缩的tar存档文件
gzip file压缩扩展名为.gz的文件

安装包

rpm -i pkg_name.rpm安装rpm包
rpm -e pkg_name删除rpm包
dnf install pkg_name使用dnf工具安装软件包

安装源(编译)

./configure检查系统,以获得构建程序所需的软件。它将构建包含有效构建项目所需的指令的Makefile
make
make install编译后,该命令将二进制文件安装在默认/修改的路径中

搜索

grep ‘pattern’ files在文件中搜索给定的模式
grep -r pattern dirSearch recursively for a pattern in a given directory
locate file查找文件的所有实例
find /home/ -name “index”在/home文件夹中查找以’index’开头的文件名
find /home -size +10000k在主文件夹中查找大于10000k的文件

登陆

ssh user@host使用指定用户安全连接到主机
ssh -p port_number user@host使用指定端口安全地连接到主机
ssh host通过SSH默认端口22安全连接到系统
telnet host通过telnet默认端口23连接到主机

文件传输

scp file1.txt server2/tmp安全地将file1.txt复制到/tmp目录中的server2
rsync -a /home/apps /backup/将/home/apps目录中的内容与/backup目录进行同步

磁盘使用情况

df -h显示安装系统上的空闲空间
df -i显示文件系统上的空闲inode
fdisk -l显示磁盘分区、大小和类型
du -sh以人类可读的格式显示当前目录中的磁盘使用情况
findmnt显示所有文件系统的目标挂载点
mount device-path mount-point挂载设备

目录遍历

cd ..在目录树结构中向上移动一层
cd将目录更改为$HOME目录
cd /test将目录更改为/test目录