Linux常用命令使用
系统基础相关
- 使用root用户的环境变量切换到root用户
su -
- 显示当前工作路径
pwd
- 显示当前系统默认语言及键盘布局
localectl
- 显示系统中能支持的所有语言
localectl list-locales
- 配置系统默认语言为中文
localectl set-locale LANG=zh_CN.gb2312
- 重启机器
reboot
- 关机
poweroff
- 退出当前的shell
logout/exit
命令帮助
command --help
man command
info command
- 列出命令的简短使用信息(当使用
whatis
报错时,需要运行mandb
命令生成索引文件)whatis command
日常使用命令
- 显示或者更改日期
date
- 显示日历
cal
- 统计文本行数或字符数以及其他相关信息
wc
- 找出命令的绝对路径
which
- 列出最近使用过的number条命令(rehl下默认保存1000条)
history number
- 默认显示文本前10行内容,如需要显示更多行可以加减number实现
head [+- number]
- 默认显示文本后10行内容, 如需显示更多可以加减number
tail [+- number]
- 自上而下显示文本内容
cat
- 自下而上显示文本内容
tac
- 切换工作路径
cd
- 显示目录内容
ls
- 复制文件或目录,复制目录时,加上
-r
选项表示递归复制cp
- 重命名/移动文件或者目录
mv
- 删除文件或目录,删除目录时,加上
-r
选项表示递归,加上-f
选项表示强制删除并且不提醒rm
- 创建目录,递归创建加上
-p
选项mkdir
- 创建空文件,或者更新时间戳
touch
- 列出目录树
tree
- 文件校验
sha1sum sha224sum sha256sum sha384sum sha512sum
- 校验文件
md5
的值md5sum
- 逐屏浏览文本内容
less
用户, 组以及权限相关
- 打印用户身份信息
id
- 更改
user
用户的密码passwd user
- 添加用户
useradd
- 更改已添加用户的相关信息(uid, gid以及groups)
usermod
- 删除用户
userdel
- 添加组
groupadd
- 删除组
groupdel
- 更改用户权限和组以及id等
change
- 同时更改file文件的所属用户及属组为student
chown student.student file
- 更改文件的所属组
chgrp
- 更改文件权限
chmod
- 掩码方式更改
umask
网络配置相关
- 杂七杂八
网络配置相关的文件存放在 /etc/sysconfig/network-scripts/ifcfg-* /etc/hosts #静态IP到名称解析文件 /etc/hostname #主机名称配置文件 接口命名规则 ethx #以太网接口 wlanx #无线网卡接口 pppxx #PPPOE拨号接口
VI
编辑配置文件来配置网络配置静态IPv4地址(vi纯手工编辑配置文件) cat /etc/sysconfig/network-scripts/ifcfg- DEVICE= #此处填写物理网卡名称 BOOTPROTO=none #地址分配类型{dhcp|none|static} IPADDR=1.2.3.4 #IPv4地址 PREFIX=24 #Netmask GATEWAY=1.2.3.254 #GW DNS1=1.2.3.254 DNS2=1.2.3.253 ONBOOT=yes #配置此接口是否在开机时启用 #systemctl restart network 配置动态IPv4地址(vi纯手工编辑配置文件) cat /etc/sysconfig/network-scripts/ifcfg- DEVICE= #此处填写物理网卡名称 BOOTPROTO=dhcp #地址分配类型{dhcp|none|static} ONBOOT=yes #配置此接口是否在开机时启用 #systemctl restart network 配置DNS客户端 #cat /etc/resolv.conf search redhat.com #搜索域 nameserver 1.2.3.4 nameserver 4.3.2.1 配置静态IP到名称的解析列表,当内网中没有DNS服务器时,就可以编辑hosts文件实现IP地址到名称的解析 #cat /etc/hosts 10.1.1.1 server1 server1.example.com 10.1.1.2 server2 server2.example.com 更改主机名称 #cat /etc/hostname server.example.com
解压缩相关
- tar
c
创建t
列出x
解压f
文件名称C
解压到指定目录z
采用gzip
压缩j
采用bzip2
压缩J
采用xz
进行压缩
- 打包
tar cvf filename.tar /path
- 打包并压缩成gzip格式
tar czvf filename.tar.gz /path
- 解压到指定文件夹
tar xvf filename.tar /path
- 查看压缩包内容但不解压
tar tvf filename.tar
软件包管理相关
yum
常用命令yum install a b c d #安装软件包a b c d (加上-y选项,可以在安装软件包时,不弹出是否继续的提示) yum remove a b c d #卸载软件包a b c d yum groups list #查看已安装的软件组和可用的软件组 yum groups install "Infiniband Support" #安装软件组 yum groups remove "Infiniband Support" #卸载软件组 yum info a b c #查看软件包a b c d的相关信息,如大小,版本等... yum update a b c d #更新软件包a b c d yum update #整体更新所有可更新的软件包 yum provides 文件或目录 #查看文件由哪个rpm包提供的 yum search tree #从仓库中搜索关键词为tree的包 yum history #查看yum运行历史记录
rpm
常用命令rpm -qa #查询本机安装的所有RPM包 rpm -qa --last #按照时间先后顺序查询本机安装的所有RPM包 rpm -qf 文件或目录 #查看文件由哪个rpm包提供的 rpm -Va 包名称 #校验RPM包完整性,也可不填,不填,则代表校验所有RPM包 rpm -qd 包名称 #查看RPM包附带的文档有哪些 rpm -ql 包名称 #查看RPM包释放了哪些文件在哪个目录下 rpm -qc 包名称 #查看RPM包附带的配置文件有哪些 rpm -e 包名称 #卸载RPM包,多个包以空格隔开 rpm -e 包名称 --nodeps #不检查RPM包之间的依赖关系,直接卸载RPM包 rpm -ivh 包名称 #安装一个或多个RPM包 rpm -Uvh 包名称 #升级一个或多个RPM包
文件系统相关
- 设备文件命名规则
Linux下的设备文件命名规则 /dev/sda #第一块串口硬盘 /dev/hda #第一块并口硬盘 /dev/vda #基于KVM下的virtio驱动的第一块虚拟化磁盘 /dev/xvda #基于Xen虚拟化技术的虚拟磁盘 /dev/cdrom #CD/DVD设备,该文件通常链接到/dev/sr0,也就是第一个CD/DVD设备,第二个光驱设备,则是/dev/sr1,以此类推 /dev/vgname/lvname #逻辑卷磁盘 /dev/sda1 #第一块串口硬盘的第一个分区 /dev/hda1 #第一块并口硬盘的第一个分区 备注: 当Linux下的磁盘超过24个时,比如从/dev/sda>/dev/sdz,那么则多余的磁盘会继续以/dev/sdaa,/dev/sdab排列 df #显示文件系统使用情况 du #统计文件大小 mount #挂载分区至某个目录,或者显示挂载情况
文件搜索
- 搜索前, 先执行
updatedb
建立索引数据库然后再执行locate filename
find
搜索find / -name ccie #从/分区遍历所有子目录,然后根据文件名称查找 find / -type d -name ccie #从/分区遍历所有子目录,然后只查找名为ccie的目录 find / -size 10M #从/分区遍历所有子目录,然后查找大小为差不多10M的文件 find / -perm 0755 #从/分区遍历所有子目录,然后查找权限为0755的文件 find / -user student #从/分区遍历所有子目录,然后查找student用户的文件
服务与进程相关
- 在
rehl7
中使用systemctl
来管理systemctl -t help #列出所有的单元类型 systemctl --type "unit" #查看指定单元类型的状况 systemctl --failed #查看所有加载失败的单元信息 systemctl status cups.service #查看cups服务单元状况 systemctl start cups.service #启动cups服务单元 systemctl stop cups.service #停止cups服务单元 systemctl restart cups.service #重启cups服务单元 systemctl enable cups.service #配置cups服务单元开机自动启动 systemctl disable cups.service #配置cups服务单元开机不启动 systemctl reload cups.service #重新加载cups服务单元的配置文件 systemctl is-active cups.service #查看cups服务单元当前是否运行 systemctl is-enabled cups.service #查看cups服务单元开机是否自动运行 systemctl mask NetworkManager.service #彻底屏蔽NM服务单元 systemctl unmask NetworkManager.service #取消屏蔽NM服务单元