LINUX常见命令

1. / Linux文件系统的起点,所有Linux数据全部存放在/下

  1. /dev 存放设备相关的 /root 管理员的家目录
  2. /home 普通用户的家目录
  3. /proc 虚拟目录
  4. /tmp 临时目录,默认数据存放10天不做任何操作系统直接删除
  5. /etc 配置文件存放目录
  6. /mnt 系统提供的挂载点
  7. /boot 启动相关的目录,内核文件存放这里

tftp:简单的文件传输协议 默认端口:69
http:超文本传输协议 默认端口:80
https:安全的超文本传输协议 默认端口:443 DNS:域名解析协议
默认端口:53 telnet:远程管理协议 默认端口:23 明文传输 ssh:远程管理协议 默认端口:22
加密传输 FTP:文件传输协议 默认端口:21 snmp:简单的网络管理协议 默认端口:161
smtp:邮件协议(用户发邮件) 默认端口:25 pop3:邮件协议(用户收邮件) 默认端口:110

###########################################

route //查看网关

pwd //显示当前工作目录

cd //切换路径

cd . //当前不变
cd … //返回上一层目录
cd …/… //返回上一层的上一层
cd - //返回上/proc 虚拟目录
/tmp 临时目录,默认数据存放10天不做任何操作系统直接删除
/etc 配置文件存放目录
/mnt 系统提供的挂载点一次工作目录
cd ~ = cd //进入当前用户家目录
绝对路径:以/开始的路径
相对路径:不以/开始的路径

ls //列出目录内容/文件权限

-l		//以长格式显示,显示目录内容的详细属性
-A		//包括名称以 . 开头的隐藏文档
-R		//递归显示目录
-d		//显示目录本身(而不是内容)的属性
-h		//提供易读的容量单位(K、M等)
-t    	// 按时间信息排序

#vim //文本编辑器
i //在当前字符前插入文本
a //在当前字符后插入文本
A //在行尾添加文本

cat //查看文件内容

hostname //查看主机名

ifconfig //查看ip地址

mkdir //创建目录

-p		//递归创建目录

touch //创建文件

less //查看大文件内容分屏查看

head //默认查看文件头10行

tail //默认查看文件尾10行

grep //过滤包含关键字的行

-i		//忽略大小写
-v		//取反

---------------------------

nmtui //配置网络参数(ip地址、子网掩码、网关、dns、主机名)

poweroff //关机

reboot //重启

#mount //挂载
#umount //卸载
#alias //设置别名
#unalias //取消已设置的别名
#^word //以字符串word开头
#word$ //以字符串word结尾
#rm //rm 删除
#mv //移动/改名

> //覆盖重定向

#>> //追加重定向

| //将前面命令的输出,传递给后面命令作为后面命令的参数

#useradd //创建用户
-u //指定用户id
-d //指定家目录路径
-s //登录解释器 $ /sbin/nologin:禁止用户登录系统
-G //附加组
#passwd //修改密码 $ echo ‘密码’ | passwd --stdin 用户名
#usermod //修改用户属性
-u //指定用户id
-d //指定家目录路径
-s //登录解释器
-G //附加组
#userdel //删除用户
-r //递归删除,连同用户的家目录一并删除

#groupadd //创建组
-g //指定组ID
#groupdel //删除组
#gpasswd -a //添加用户到组中
#gpasswd -d //将组从用户中删除

#tar //备份与恢复
格式:tar 选项 /路径/压缩包的名 被压缩的源数据
-c 创建归档
-x //释放归档
-f //指定归档文件名称,必须放在所有选项的最后
-z、-j、-J //调用 .gz、.bz2、.xz 格式的工具进行处理
-t //显示归档中的文件清单
-C //(大写):指定释放路径
Linux平台压缩格式:
gzip ----> .gz
-s //登录解释器
bzip2 ----> .bz2
xz ----> .xz 
#crontab //cr工作模式中可以实现保存退出的操on计划任务
 编辑:crontab -e [-u 用户名] #调用vim文本编辑器
 查看:crontab -l [-u 用户名]
     清除:crontab -r [-u 用户名]

#chmod //设置权限
chmod [-R] //递归设置权限
#chown //设置文档归属
chown [-R] 属主 文档…
chown [-R] :属

组 文档gelin01:tarena"…
chown [-R] 属主:属组 文档…
acl访问控制列表
• 使用 getfacl、setfacl 命令
getfacl 文档…
setfacl [-R] -m u:用户名:权限类别 文档…
setfacl [-R] -m g:组名:权限类别 文档…
setfacl [-R] -x u:用户名 文档… #删除指定的ACL
setfacl [-R] -b 文档… #删除所有的ACL
附加权限(特殊权限)
Set GID用于目录,Set GID可以使目录下新增的文档自动设置与父目录相同的属组
例:chmod g+s /nsd08/

Set UID适用于可执行文件,Set UID可以让使用者具有文件属主的身份及部分权限
例:chmod u+s /usr/bin/hahadir

Sticky Bit适用于开放w权限的目录,可以阻止用户滥用w写入权限(禁止操作别人的文档)
例:chmod o+t /home/public/


使用wget下载工具
wget 软件包的URL网址 -O(大写) /目录路径/新文件名
• RPM Package Manager,RPM包管理器
– rpm -q 软件名 #查询当前系统是否安装该软件
– rpm -ivh 软件名-版本信息.rpm #安装软件包
– rpm -e 软件名 #卸载软件

yum仓库
配置文件:/etc/yum.repos.d/*.repo 错误的配置文件会影响正确的配置文件
[xixi] #仓库标识
name=RHEL7.0 #仓库描述信息
*baseurl=http #指定服务端网络路径
enabled=1 #是否启用本文件
gpgcheck=0 #是否检测红帽签名信息

#yum repolist #列出仓库信息
#yum clean all #清空缓存

总结:
#lsblk //显示当前系统识别的所有硬
#fdisk //分区工具
#partprobe //刷新分区表

格式化文件系统 mkfs.ext4 mkfs.xfs blkid(查看文件系统类型)
挂载使用 mount(手动)–>/etc/fstab(开机自动挂载)
#mount -a //检测开机自动挂载配置文件,格式是否正确,书写完成,但当前没有挂载的设备,进行挂载
#df -h //(查看正在挂载的设备使用情况)


LVM管理工具
功能 物理卷管理 卷组管理 逻辑卷管理
Scan扫描 pvscan vgscan lvscan
Create创建 pvcreate vgcreate lvcreate
Display显示 pvdisplay vgdisplay lvdisplay
Remove删除 pvremove vgremove lvremove
Extend扩展 / vgextend lvextend

创建卷组	
	格式:vgcreate   卷组名     设备路径......
扩大卷组		
	格式:vgextend   卷组名     设备路径......	
删除卷组
	格式:vgremove   卷组名
创建逻辑卷
	格式:lvcreate -n 逻辑卷名   -L 大小G   基于的卷组名
扩大逻辑卷
	格式:lvextend -L  大小G 	逻辑卷位置
删除逻辑卷
	格式:lvremove    逻辑卷路径

文件系统的扩大(刷新文件系统)
 		resize2fs:专用于ext4文件系统的刷新
	例:resize2fs  /dev/systemvg/vo	

      xfs_growfs:专用于xfs文件系统的刷新
	例:xfs_growfs /dev/systemvg/vo	

#lvs #查看逻辑卷基本信息
#vgs #查看卷组基本信息
#Vgchange -s 1M systemvg #修改PE的大小
#vgdisplay systemvg #查看卷组详细信息

-------------------------------------------------
find高级使用,递归式查找[上级目录]

find [目录] [条件1] [-a|-o] [条件2] …
– 常用条件表示:
-type 类型(f文本文件、d目录、l快捷方式)
-name “文档名称”
-size +|-文件大小(k、M、G)
-user 用户名
-mtime 根据文件修改时间
  例: find /boot/ -type d #查找是目录
  find /boot/ -type l #查找是快捷方式
   find /boot/ -type f    #查找是文件

1.命令 目标文件 选项 文件名称
  find /etc/ -name "passwd" 		#按文档名称查找

2.命令 目标文件 选项  用户名称		  
  find /home/  -user student 	#按照所有者进行查找
  find /    -user student  		#查找整个系统

3.命令 目标文件 选项  查询文件天数
  find /root/  -mtime +1000		#按时间查找

4.处理find查找的数据          -exec 额外操作的开始   {} find每一个查询结果  \;   额外操作的结束
  例:find /etc/  -name "*tab"   -exec cp -r  {}  /opt \;

#############################################################################################

shell 脚本

1.规范Shell脚本的一般组成
• #! 环境声明,下面所有代码由那个程序进行翻译
• # 注释文本
• 可执行代码
2.重定向输出
>: 只收集前面命令的正确输出
2>: 只收集前面命令的错误输出
&>: 收集前面命令的正确与错误输出
3.单引号 ‘’:取消所有字符的特殊意义,原样输出
4./dev/null:黑洞设备,专用于收集不要的输出信息
5.$( )或 反撇号: 将命令的输出,直接作为参数,参与运行
6.read -p ‘屏幕的提示信息’
1.产生交互
2.记录用户在键盘上的输入
3.将记录的所有内容,最终赋值给一个变量储存
7.变量的种类
1.定义/赋值变量
2.查看/引用变量
3.变量的种类 //变量名一般为大写字母,由系统定义并且赋值完成
4.位置变量 //由系统定义并且赋值完成
5.预定义变量 //由系统定义并且赋值完成
$# 已加载的位置变量的个数,专用于用户是否输入参数
$? 程序退出后的状态值,0表示正常,其他值异常
8.常用的测试选项
• 检查文件状态
-e:存在为真
-d:存在,且必须为目录才为真
-f:存在,且必须为文件才为真[rhel_dvd]
gpgcheck = 0
enabled = 1
baseurl = http://content.example.com/rhel7.0/x86_64/dvd
name = Remote classroom copy of dvd

• 比较整数大小
-gt:大于
-ge:大于等于
-eq:等于
-ne:不等于
-lt:小于
-le:小于等于
9.(1) if双分支处理

if [条件测试];then
	命令序列xx
else
        命令序列yy
fi

(2) if多分支处理
if [条件测试1];then
命令序列xx
elif [条件测试2];thenserver0.example.com
命令序列yy
elif [条件测试3];then
命令序列aa

else
   命令序列zz
fi

(3)for循环处理
• 遍历/列表式循环
– 根据变量的不同取值,重复执行xx处理
for 变量名 in 值列表
do
done
---------------------------
SELinux安全机制
• SELinux的运行模式
- enforcing(强制)
- permissive(宽松)
- disabled(彻底禁用)
- 临时切换:setenforce 1|0 #只影响当前系统此次开机
- 任何模式切换到disabled都要经历重起系统
- 固定配置:/etc/selinux/config 文件 #永久配置文件,每次开机默认的状态
server0.example.com
• 影响指定用户的 bash 解释环境
– ~/.bashrc,每次开启 bash 终端时生效

• 影响所有用户的 bash 解释环境
– /etc/bashrc,每次开启 bash 终端时生效

防火墙策略管理
作用:隔离 严格过滤入站,允许出站

*预设安全区域
– public:仅允许访问本机的ssh dhcp ping少数几个服务
– trusted:允许任何访问
– block:阻塞任何来访请求(明确拒绝,给出客户端回应)
– drop:丢弃任何来访的数据包(不给出客户端回应,节省服务器资源)
添加永久的规则:永久( --permanent)
#firewall-cmd --reload #重新加载防火墙所有配置规则

firewall-cmd --zone=public --list-all #查看区域规则

firewall-cmd --zone=public --add-service=http #添加协议

firewall-cmd --set-default-zone=public #修改默认区域

firewall-cmd --zone=block --remove-source=172.25.0.10 #指定不允许访问

firewall-cmd --zone=public --add-forward-port=port=5423:proto=tcp:toport=80

firewall-cmd --zone=block --remove-source=172.25.0.10 #将拒绝的规则删除

---------------------------
#mkswap /dev/vdb1 #格式化交换文件系统
#swapon -s #查看交换空间组成
#swapon /dev/vdb1 #启用交换分区
#swapoff /dev/vdb2 #停用交换分区
#swapon -a #专用于检测交换分区

使用LDAP认证,实现网络用户认证,达到用户的集中管理
---------------------------
iSCSI网络磁盘
iSCSI磁盘的工作模式
• Internet SCSI,网际SCSI接口(默认端口:3260)
• ISCSI Qualified Name 名称规范
 iqn.yyyy-mm.倒序域名:自定义标识

服务端
•backstore,后端存储
/> backstores/block create name=nsd dev=/dev/vdb1
  目录       命令   名字    磁盘名称
• target,磁盘组
/> iscsi/ create iqn.2019-08.com.example:server
目录   命令     磁盘组的名称
• lun,逻辑单元
/> iscsi/iqn.2019-08.com.example:server/tpg1/luns create /backstores/block/nsd
      磁盘组位置         逻辑单元位置目录   命令 逻辑单元位置     名称          
• 设置访问控制:设置客户端声称的名字
/> iscsi/iqn.2019-08.com.example:server/tpg1/acls create iqn.2019-08.com.example:desktop
磁盘组位置 设置客户端声称目录  命令   设置客户端名称            
• 设置服务端在那个IP地址上提供服务,以及开放端口
/> iscsi/iqn.2019-08.com.example:server/tpg1/portals create ip_address=172.25.0.11
       磁盘组位置           设置ip地址目录   命令    ip地址

客户端
•安装iscsi-initiator-utils软件包iSCSI磁盘的工作模式
]#yum -y install iscsi-initiator-utils
•设置客户端声称的名字                         
]# vim /etc/iscsi/initiatorname.iscsi
•客户端刷新声称名字的服务
systemctl restart iscsid
]# systemctl daemon-reload
]# systemctl restart iscsid

1.权限的数值表示

• 权限的数值化
– 基本权限:r = 4,w = 2,x = 1
– 附加权限:SUID = 4,SGID = 2,Sticky Bit = 1

2.历史命令
• 管理/调用曾经执行过的命令
– history:查看历史命令列表
– history -c:清空历史命令
– !n:执行命令历史中的第n条命令
– !str:执行最近一次以str开头的历史命令
• 调整历史命令的数量
[root@svr7 ~]# vim /etc/profile

3.实用小命令工具
• du,统计文件的占用空间
– du [选项]… [目录或文件]…
– -s:只统计每个参数所占用的总空间大小
– -h:提供易读容量单位(K、M等)

4.制作快捷方式:软连接
格式: ln -s /路径/源数据 /路径/快捷方式名称
特点: 原文件被删除,不能使用
制作快捷方式:硬连接
ln /路径/源数据 /路径/快捷方式名称
 特点: 原文件被删除,正常使用

5.获取命令帮助
方式:利用 --help 选项
方式:利用 man 命令
• man,格式化手册阅读工具
– 按上、下 、 PgUp 、PgDn 键滚动及翻页
– 按 q 键退出
– 按 / 键向后查找关键词(n、N切换)
#数字5表示的帮助类型,配置文件类型帮助信息

6.zip归档工具(跨平台的压缩工具,Windows与Linux)
制作.zip压缩包
– zip [-r] 备份文件.zip 被归档的文档…
• 释放归档+解压操作
– unzip 备份文件.zip [-d 目标文件夹]

7.vim编辑技巧

命令模式操作
[root@svr7 ~]# cp /etc/passwd /opt/p.txt
[root@svr7 ~]# vim /opt/p.txt
光标跳转
Home 键 或 ^或数字 0 跳转到行首
End 键 或“KaTeX parse error: Expected 'EOF', got '#' at position 96: …制/粘贴/删除 复制 yy、#̲yy 复制光标处的一行、#…或D(大写) 从光标处删除到行尾
u 撤销
C(大写) 从光标处删除到行尾,进入插入模式
查找/撤销/保存
/word 向后查找字符串“word”
n、N 跳至后/前一个结果
u 撤销最近的一次操作
U 撤销对光标所在的当前行所有修改
Ctrl + r 取消前一次撤销操作(反撤销)
ZZ(大写) 保存修改并退出
末行模式操作
r /etc/filesystems 读入其他文件内容
:r /opt/b.txt #读入/opt/b.txt文件内容到当前文件中
:r /etc/passwd #读入/etc/passwd文件内容到当前文件中
字符串替换
😒/old/new 替换当前行第一个“old”
😒/old/new/g 替换当前行所有的“old”
:n,m s/old/new/g 替换第n-m行所有的“old”
:% s/old/new/g 替换文件内所有的“old”
开关参数的控制
:set nu或nonu 显示/不显示行号
:set ai或noai 启用/关闭自动缩进

8.源码编译安装
rpm包: yum rpm -ivh
源码包:-----gcc make-----》可以执行程序--------》运行安装
• 主要优点
– 获得软件的最新版,及时修复bug
– 软件功能可按需选择/定制,有更多软件可供选择
– 源码包适用各种平台
步骤1:安装gcc与make两个开发工具
步骤2: tar解包,释放源代码至指定目录
步骤3: ./configure 配置,指定安装目录/功能模块等选项
作用:检测当前系统是否安装gcc --prefix=指定安装位置
步骤4: make 编译,生成可执行的二进制程序文件
步骤5: make install 安装,将编译好的文件复制到安装目录
---------------------------
安装虚拟化服务器平台
• 主要软件包
– qemu-kvm:为 kvm 提供底层仿真支持
– libvirt-daemon:libvirtd 守护进程,管理虚拟机
– libvirt-client:用户端软件,提供客户端管理命令
– libvirt-daemon-driver-qemu:libvirtd 连接 qemu 的驱动
– virt-manager:图形管理工具

虚拟机化服务:libvirtd #默认服务开机自启动
virsh命令工具介绍
• 提供管理各虚拟机的命令接口
– 支持交互模式,查看/创建/停止/关闭 … …

– 格式:virsh 控制指令 [虚拟机名称] [参数]

查看虚拟化信息
• 查看KVM节点(服务器)信息
– virsh nodeinfo
• 列出虚拟机
– virsh list [–all]
• 查看指定虚拟机的信息
– virsh dominfo 虚拟机名称
• 将指定的虚拟机设为开机自动运行
– virsh autostart [–disable] 虚拟机名称
• 将指定的虚拟机设置开机不自启
– virsh autostart --disable nsd01
• 运行|重启|关闭指定的虚拟机
– virsh start|reboot|shutdown 虚拟机名称
• 强制关闭指定的虚拟机
– virsh destroy 虚拟机名称
一台KVM虚拟机的构成
– xml配置文件(虚拟机描述文件):定义虚拟机的名称、UUID、CPU、内存、虚拟磁盘、网卡等各种参数设置
- virsh dumpxml nsd01 #查看虚拟机xml文件内容
– 磁盘镜像文件:保存虚拟机的操作系统及文档数据,镜像路径取决于xml配置文件中的定义
- ls /var/lib/libvirt/images/

COW技术原理:可以快速产生虚拟机磁盘镜像文件
• Copy On Write,写时复制
– 直接映射原始盘的数据内容
– 当原始盘的旧数据有修改时,在修改之前自动将旧数据存入前端盘
– 对前端盘的修改不回写到原始盘
– 原始盘内容不能修改

快速创建qcow前端盘
• qemu-img 通过 -b 选项复用指定原始盘
– qemu-img create -f qcow2 -b 原始盘 前端盘 大小
-qemu-img create -f qcow2 -b .node_base.qcow2 abc01.img 5G #依据原始盘生成前端盘
-qemu-img info abc01.img #查看前端盘信息
 file format: qcow2 #文件格式
 virtual size: 5.0G (5368709120 bytes) #虚拟空间大小
 disk size: 196K #实际占用空间大小
 cluster_size: 65536
 backing file: .node_base.qcow2 #原始盘名称 
• 导入虚拟机信息
-virsh define /home/student/nsdfile/abc01.xml


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值