Linux
配置虚拟机
网络设置
-
配置静态ip
-
修改 /etc/sysconfig/network-scirpts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
删除UUID
-
添加
-
IPADDR
- IP地址
-
NETMASK
- 子网掩码
-
GATEWAY
- 网关
-
DNS1
- 域名解析
-
-
-
重启网卡
- systemctl restart network
关闭防火墙
-
查看防火墙状态
- systemctl status firewalld
-
本次关闭
- systemctl stop firewalld
-
永久禁用
- systemctl disable firewalld
关闭软件安装限制
- vi /etc/selinux/config
SELINUX=disabled
关机
- shutdown -h now
重启
- reboot
克隆
- 链接克隆
- 完成克隆
文件系统
文件目录
- bin -> usr/bin . #:存放着一百多个Linux下常用的命令、工具
- boot #: Linux就是从这里启动的
- dev #:存放着Linux下所有的设备文件!
- etc #:这里存放在Linux大部分的配置文件
- home #:普通用户的家目录
- lib -> usr/lib #:静态链接库
- lib64 -> usr/lib64 #:库文件
- media #:媒体
- mnt #:用于存放挂在储存设备的挂载目录
- opt #:空目录
- proc #:存放进程文件
- root #:超级用户root的家目录
- run #:一些进程产生的临时文件,重启会消失
- sbin -> usr/sbin #:超级用户命令所在地
- srv #:空目录 存放一些服务产生的文件
- sys #:存放一些内核文件
- tmp #:临时目录
- usr #: 应用程序存放目录
- var #:通常用来存放一些变化中的东西!
路径
-
绝对路径
- 从根目录开始/
-
相对路径
-
当前路径
- .
-
上级目录
- ..
-
当前用户的家目录
- ~
-
命令
-
我是谁
- whoami
-
当前路径
- pwd
-
切换目录
- cd
-
文件夹
-
查看文件夹下内容
-
ls
-
ls -a
- 显示隐藏内容
显示文件夹下所有文件名
-
-
ll
- 显示文件夹的详细信息
-
-
创建文件夹
-
mkdir
-
mkdir -p
- 联级创建
-
mkdir {a,b,c,d}
- 同级多目录
-
-
-
删除文件夹
- rmdir
-
-
文件
-
创建文件
- touch
-
copy文件
-
cp
-
cp -r 源 目地
- 递归copy
-
-
-
move文件
-
mv
-
mv 源 目的
- 可以用来修改名字
-
-
-
remove文件
-
rm
-
rm -rf
- f 取消确认信息
r 递归
- f 取消确认信息
-
-
-
-
元数据
-
stat
- 描述文件信息的数据
-
-
链接
-
软链接
-
ln -s
文件指向目标文件地址的名称
删除目标文件软连接失效
-
-
硬链接
-
ln
文件指向目标文件地址的INode
删除目标文件,硬链接可以继续访问目标文件的内容
-
-
-
查看文件
-
查看文件内容
-
cat
- 正序
-
tac
- 逆序
-
more less
-
分页查询
- 回车 下一行
- 空格 下一页
- b 回退
- q 退出
-
-
head
-
查看文件的前N行
- 默认10行
- -6 指定行数
-
-
tail
-
查看文件的后N行
- 默认10行
- -6 指定行数
-
监控文件
- -f 监控INode
- -F 监控文件名
-
-
查看5-10行
-
head filename | tail -5
- |管道
-
-
-
查找文件
- find 范围 -name filename
-
VI编辑器
打开文件
- vi
- vi +number
- vi +/target
模式
-
命令模式
-
编辑/末行 --> 命令
- ESC
-
-
编辑模式
-
命令 --> 编辑
- i 插入
- a 追加
- I 行首
- A 行末
- o 下一行
- O 上一行
-
-
末行模式
-
命令 --> 末行
- :
-
命令
皆可在量词组合使用
-
删除
- dd
-
复制
- yy
-
粘贴
- p
-
单词
- w
-
替换
- r
-
剪切
- x
-
方向
-
k
- 上
-
j
- 下
-
h
- 左
-
l
- 右
-
^
- 行首
-
$
- 行尾
-
gg
- 第一行
-
GG
- 最后一行
-
-
撤销
- u
-
回退
- .
-
退出
-
ZZ
- 等价:wq
-
末行
-
行号
-
显示行号
- set nu
-
不显示行号
- set nonu
-
-
保存退出
- :wq
-
文件格式
解决window的文件拷贝至linux上报错的问题
- set ff = unix
-
查询
- /target
-
替换
-
s/目标/替换/
-
i
- 忽略大小写
-
g
- 全部替换
-
-
%s
- 全文
-
3,8s
- 3-8行
-
文件传输
win<->Linux
xftp
-
lrzsz
yum install lrzsz -y
-
rz
- 将文件从window上传到Linux
-
sz
- 将文件从Linux传输到Window
Linux<->Linux
-
scp
- 远程拷贝
-
rsync
- 数据同步
文件压缩
tar -zxvf
空间大小
df -h
- 分区大小
du -h --max-depth=1 filename
- 目录大小
网络
主机名
-
hostname
- 本次修改
-
vi /etc/hostname
- 永久修改
DNS
域名解析服务
- vi /etc/hosts
命令
ifconfig
ip addr
ping ip
telent ip port
-
netstat -anp
- 本地网络信息
curl
加密算法
不可逆加密
-
md5
- 特点:只能将数据加密成密文,无法从密文反推出数据
对称加密
-
秘钥
- 特点:既可以将明文加密成密文,还可以将密文解密出明文
非对称加密
- 公钥加密的数据只能使用对应私钥进行解密
免密
主机B如果持有主机A的公钥,说明主机A可以免秘钥登录主机B
-
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
- 生成秘钥
-
ssh-copy-id -i ~/.ssh/id_rsa.pub root@ip
- 发送公钥
忽略主机名
-
ssh -o StrictHostKeyChecking=no root@node01
- 本次
-
vi /etc/ssh/ssh_config
- StrictHostKeyChecking no
日期与时间
查看时区
- ll /etc/localtime
设置时区
- ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
查看系统时间
- date
查看日历
- cal year
修改时间
- date -s time
日期时间同步
- yum -y install ntp
- ntpdate cn.ntp.org.cn
用户|组|权限
用户
-
useradd username
- 创建用户
-
passwd password
- 设置密码
id username
cat /etc/passwd
-
cat /etc/shadow
- 查看用户和密码
-
usermod -l newname oldname
- 修改用户
-
usermod -L zs
- 锁定用户(禁止登录)
-
usermod -U zs
- 解锁用户
-
userdel -r username
- 删除用户
-
su username
- 切换用户
组
-
groupadd groupName
- 创建组
-
groupmod -n newgroup oldgroup
- 修改组
groups
groups groupName
usermod -g groupName username
usermod -G groupName1,groupName2 username
-
groupdel groupName
- 删除组
权限
-
修改权限
-
chown user:group filename
- -R 让子目录迭代修改
-
-
UGO 模型
- User 用户、Group 组用户、Other 其他用户
-
777 模型
- 0 = ---
- 1 = --x
- 2 = -w-
- 3 = -wx
- 4 = r--
- 5 = r-x
- 6 = rw-
- 7 = rwx
-
赋予权限
- visudo
- name ALL=(root) /sbin/useradd
管道与进程
管道
- 使用|将前面命令的结果作为参数传递给后面的命令
重定向
-
将原本要输出到屏幕中的数据信息,重新指向某个特定的文件
- 标准输入 0
- 标准输出 1
- 错误输出 2
系统进程
-
进程信息
ps -ef
ps -ef | grep serverName
-
ps -aux
- 所有信息
top
ps -aux --sort -pcpu
-
后台进程
在命令的后面添加一个 & 符号即可将进程切换为后台执行
-
jobs -l
- 查看当前用户开启的后台进程
-
杀死进程
- kill -9 PID
软件安装
环境变量
-
profile
- vi /etc/profile
- source /etc/profile
安装方式
-
使用安装包安装
-
RedHat/CentOS: rpm
-
rpm安装
- rpm -ivh ***.rpm
-
rpm查询
- rpm -qa | grep ******
-
rpm卸载
- rpm -evh ****
-
Debain/Ubuntu: deb
Windows: .exe , .msi
macOS: dmg
-
-
绿色版软件
- 解压即安装
-
使用 yum 命令安装
yum install software
-
配置阿里的yum源
yum -y install wget
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
vi /etc/yum.repos.d/CentOS-Base.repo
-
yum clean headers
- 清除头文件
-
yum clean packages
- 清除包文件
-
yum clean all
- 清除所有文件,包括头文件和包文件
-
yum makecache
- 生成缓存,将服务器上的软件包信息先在本地进行缓存,以提高搜索和安装软件的速度
使用源码编译安装
定时任务
编辑
- crontab -e
管理
- crontab -eu username
查看
crontab -l
-
crontab -lu username
- 指定用户
删除
crontab -r
-
crontab -ru username
- 指定用户
格式
- command
- :星号,代表每个时刻
- , :逗号,代表分隔字段
- :减号,代表一段时间的范围
- /n :/ 代表间隔