1.磁盘的接口
IDE(并口)
SATA(串口):速度快,纠错能力强
SCSI:转速快,cpu占用资源低
目前在使用的是:SCSI
2. 分区的分类
主分区、逻辑分区、扩展分区
3. 3类分区的关系
一个磁盘可以是4个主分区
一个磁盘还可以是3个主分区+1个扩展分区,一块磁盘最多只能有一个扩展分区
一个扩展分区包含多个逻辑分区
4.1 fdisk
● fdisk -l /dev/vda1 查看磁盘分区,所有挂载和未挂载的分区,不显示文件系统
● fdisk /dev/vda1 硬盘的分区操作
● m 列出指令帮助
● p 查看现有的分区表
● n 新建分区
● d 删除分区
● q 放弃更改并退出
● w 保存更改并退出
●
● 4.2 df -T 只可以查看已经挂载的分区和文件系统类型。
● 4.3 partprobe 命令刷新分区表
● 刷新完之后 reboot重启
● 4.4 parted -l 可以查看未挂载的文● 件系统类型,以及哪些分区尚未格式化
● 4.5 lsblk -f 也可以查看未挂载以及挂载的文件系统类型
● 5. 如何挂载磁盘
● 1.创建文件夹
● mkdir 文件路径/文件夹名字
● 2.磁盘挂载到新建文件夹下面
● mount 磁盘路径[/dev/vda1] 文件夹路径
● 3。文件系统类型 拷贝到 新建文件夹下面
● cp /etc/fstab /mnt/part2/fstab.txt
4. df -T 查看挂载情况
用户、用户组的概念
1. uid=1001(dzqc01) 用户[主]信息
gid=1001(dzqc01) 用户组信息
groups=1001(dzqc01) 所有的信息
2. /etc/passwd----用户信息
/etc/shadow----用户密码
/etc/group-----用户组信息
/etc/passwd文件中七个字段 以此为用户名称 密码占位符 用户UID 主组GID 注释性描述 用户主目录 用户的shell
/etc/shadow文件中九个字段 依次为用户名称 加密后的密码 最近改动密码时间 密码不可变更时间(99999为没有限制)
密码重新变更时间 密码过期时间 密码过期宽恕时间 用户失效时间 保留
用户、用户组的操作
创建用户、用户组
useradd 用户名 -u uid -g gid -G 多个组id/名字 -s 用户登录的shell -d 指定主目录
groupadd 用户组名 -g gid
修改用户 用户组信息
通过修改文件去修改对应信息
查看用户的基本信息
id 用户名
删除用户、用户组
userder -r 用户名字
groupdel 用户组名字
修改密码
passwd 用户名字
su
切换用户
Eg:su hadoop
Sudo 提权,给普通用户赋予root权限
vim /etc/sudoers
普通用户名字 ALL=(ALL) ALL
sudo mkdir file01 就可以成功
修改文件用户和用户组
Chown -R 用户名字:用户组名字 文件名字
Eg:Chown -R Hadoop:Hadoop 文件名字
如何修改文件权限
chmod 数字权限 文件路径
Eg: chmod 664 /data/a.txt
chmod 字母权限 文件路径
chmod u=rw,g=rw,o=r /data/a.txt
chmod u+x a.txt
chmod u-x a.txt
chown和chmod 的区别
chown修改文件的用户和用户组
chmod修改文件的权限(rwx)
chgrp 命令
修改用户和用户组
chown -R hadoop:hadoop a.txt
chown -R hadoop a.txt 修改用户
chown -R :hadoop a.txt 修改用户组
chgrp -R hadoop a.txt 修改用户
ACL概念:访问控制列表,类似与防火墙
查询ACL:detfacl 路径
设置ACL:setfacl u:用户名字:权限 路径
删除ACL:
不彻底的删除(+还存在)
Setfacl -x u:用户名字 路径
彻底删除(+不存在)
Setfacl -b 路径
Mask 和 user:dzqc02:rw- 想与之后,才是ACL最大的权限
更改 mask 权限:setfacl -m mask::权限 路径
软件包管理
安装软件包 Yum install 软件包名字 [-y]
删除软件包 yum remove 软件包名字 [-y]
查看已安装的软件包 yum list
压缩管理
Tar -zxvf 压缩包名字 -C 路径
-C 解压到
-v,--verbose 详细显示处理的文件
-z,--gzip,--ungzip 有 gz 属性的软件包;
-x,--extract,--get 解压文件
-f,--file[HOSTNAME:]F 指定存档或设备,后接文件名称
Nginx:主要作用保护ip和端口,保护信息
概念:Nginx 是一个高性能的http 和反向代理服务器,特点是占用内存少,并发能力强
Linux 基础命令
Ls 缩写
ll-----ls -l 以长格式显示文件信息
ls -a 显示隐藏文件
ls -d 查看目录属性
ls -t 按照常见时间顺序显示文件
cd
cd .. 返回上一级目录
cd 路径 切换路径
全路径(绝对路径)和半路径(相对路径)
绝对路径:从根目录开始,到目录文件结束
相对路径:从当前目录下开始,到目标文件结束
pwd:查看当前路径
Touch 路径:创建文件
Mkdir 路径:创建目录/文件夹
mkdir -p /data/mysql/jdk 创建多层文件夹
cp 源文件路径 目标文件路径
mv 源文件路径 目标文件路径:移动,重命名
rm -rf 路径:删除
r:递归
f:强制
cat 文件路径:查看文件内容
more 文件路径:分页查看
回车:显示下一行
f 或者空格:显示下一页
head -n 文件路径:显示前几行
tail -n 文件路径:显示后几行
不加-n,默认显示10行
man:帮助命令
|:管道符
ps aux | grep nginx :查看nginx进程
Linux 文本三剑客 grep sed awk
Grep:
概念:快速检索/查找
在文件中搜索与字符串匹配的行并输出
语法:grep [选项] 字符串 文件路径
选项:
-name 按照文件名字查找文件
-type 按照类型查找文件,d:文件夹,f:文件
-size 按照文件/文件夹的大小查找,
+10m 大于等于10m -10m小于等于10m
-A除了显示符合范本样式的哪一行之外,并显示该行之后的内容。
-v或--revert-match 反转查找
-n在显示符合范本样式的哪一行之前,标示出该行的编号。
-i或--ignore-case 忽略字符大小写的差别
-q或--quiet-silent 不显示任何信息
nl可以打印出行号
Find:查找/检索某个文件夹下的匹配文件
语法 find 文件夹的路径 选项
Find:查找/检索某个文件夹下的匹配文件
语法:find 文件夹的路径 选项
Eg:find/data/ -name'a.txt'
选项:
-name 按照名字查找文件
-type 按照类型查找文件,d:文件夹,f:文件
-size 按照文件/文件夹的大小查找,+10M大于等于10M -10M下于等于10M
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n #按文件访问时间来查GIN:Opx">
-ctime -n +n #按文件创建时间来查找文件
-exec 命令 ; -exec 命令 {} + -ok 命令;
-exce mv {} /temp \;
Grep:linux 文本三剑客之一,快速查询文件内容
Find:定位/检索/查询某个文件夹下的文件
Sed:文本三剑客之一,对文件内容进行增删改查
,对文件输出内容进行增删改,并不会修改文件
增:
选项:
a:追加文本信息(追加到下一行)
i:插入文本信息(插入到上一行)
1.在第二行后加上一行test
Sed ‘2a test’ /etc/passwd
2.在第二行前加上一行
Sed ‘2i test’ /etc/passwd
3.在第二行后加入三行test
Sed ‘2a test\ntest\ntest’ /etc/passwd
分别在第二行、第四行、第八行后面添加test
Sed ‘2a,4a test’ /etc/passwd
s:新文本替换旧文本
语法:sed ‘c 新文本’ 文件路径
s:根据替换模式进行替换,和g一起使用
语法:sed ‘s/旧单词/新单词/g' 文件路径
s///和s///g
g:如果一行中有多个旧单词,加上g,一行中的旧单词都会被替换,不加g,每一行的一个
sed '/java/ s^/test/g' /data/a.txt 在有java这个单词的行上添加test
sed 's/^/test/g' /data/a.txt 在每一行的开头添加text
删:
d 定位删除
sed '5,$d' a.txt 删除第五行到最后一行
sed '/^#/d' /data/a.txt 删除批注行
awk 文本三剑客之一,文本内容的分析
语法:awk [选项] '条件/函数 {print}' 文件路径
引号里面分为两大块,条件和打印
条件和打印可以只写一种,但是不能不写
[选项]
-F 分隔符:按照分隔符进行拆分
-f 脚本路径:获取脚本中的命令并执行
-v 变量名字=值:赋值一个用户定义变量,将外部变量传递给awk
整个引号里面的选项:
$0:打印当前行,打印整行内容
$1-$n:打印第n列
NR:打印行号,从1开始
NF:打印当前行总列数
FS分隔符:按照什么分割,默认是空格
条件:< > == != >= <=
&& 并且 || 或者
+ - * / % (取余)
awk内置函数
命令格式:awk [选项] '内置函数+{sction}' 文件
gsub (r,s,num):在$0中用s代替r当于sed 's/r/s/g'
gsub(旧单词,新单词,$n)替换第几列的单词,$n可以不写,不写的时候可以替换的所有的旧单词
把文件中的aa替换成gsub。并打印
Awk {gsub(/aa/,"gsub");print}
index(s,t) :返回s中t的第一个位置
length (s):s的长度
match (s,r):s是否匹配r
split:(需要拆分的字符串,集合,按照什么拆分):在fs上将s分成序列a
substr (s,p):返回s从p开始的子串