Linux
2023-11-28 11:07:47 0 举报
AI智能生成
Linux
作者其他创作
大纲/内容
分支主题
分支主题
用户的权限
基本权限UGO
基本权限ACL
特殊权限(了解)
特殊位suid
高级权限的类型
suid,针对文件/程序时,具备临时提升权限,功能:使调用文件的用户,临时具备属主的能力
请思考,下面的操作为什么会失败
cat: /root/file.txt: 权限不够
分析:root运行是超管的权限,普通用户运行时时普通用户的权限
root /usr/bin/cat(root) /root/file.txt ok
sky /usr/bin/cat(sky) /root/file.txt no
示例1
设置suid,使普通用户通过suid临时提权,查看超管root用户的文件
1.为cat程序添加上suid权限
2.使用普通用户运行cat,暂时获的root权限
3.将cat的suid权限去掉
文件属性chattr
用途
用于锁定某一文件,拒绝修改
分类
案例
注意
进程掩码umask
进程管理
进程简介
什么是进程
什么是程序:具有执行代码和执行权限的文本文件;进程是已启动的可只想程序的运行实例,
进程有以下组成部分,是运行起来的程序,获取计算机各方面的资源(cpu,MEM,DISK,NETWORK,STAT)
进程有以下组成部分,是运行起来的程序,获取计算机各方面的资源(cpu,MEM,DISK,NETWORK,STAT)
进程的生命周期,有系统程序,fork出来的字长须.具备一定的父资源(权力,内存空间,PID),直到运行完毕,退出系统
进程有哪些状态, R-runing,T-stop,S-sleep Z-zombie
进程关联process
目标
了解进程的相关信息
PID PPID
当前进程的状态
内存分配情况
静态查看进程ps
作业控制jobs
管道和重定向
存储管理1
1.基本分区
磁盘简介
名词
磁盘/硬盘/disk是同一个东东,不同于内存的容量比较大
类型
机械硬盘:
固态硬盘
尺寸
接口
转速
厂商
术语
盘片
柱面
扇区
磁道
命名
kernerl对不同接口硬盘命名方式
RHEL7/centos7
IDE(并口)
dev/hda
dev/hdb
SATA(串口)
/dev/sda
dev 设备目录
s: SATA 接口类型
d:disk
a:第一块硬盘
/dev/sdb
分区方式
MBR:支持最大的磁盘容量是<2TB.设计时分配4个分区
如果希望超过4个分区,需放弃主分区,改为扩展分区和逻辑分区
如果希望超过4个分区,需放弃主分区,改为扩展分区和逻辑分区
GPT:支持大于2TB的硬盘,支持128个分区
管理磁盘
添加磁盘
管理磁盘流程三部曲
分区(MBR/GPT)--->格式化/文件系统--->挂载mount
1.查看磁盘信息
ll /dev/sd*
lsblk
2.创建分区
刷新分区表
[root@localhost ~]# partprobe /dev/sdb
查看分区结果
fdisk -l /dev/sdb
lsblk
3.创建文件系统
mkfs.ext4 /dev/sdb1
输出提示
新创建的分区,sdb2,sdb3都要格式化
4.挂载mount
手动挂载
创建挂载店,一个分区一个挂载点
[root@VM-16-9-centos ~]# mkdir /mnt/disk1
[root@VM-16-9-centos ~]# mkdir /mnt/disk1
[root@VM-16-9-centos ~]# mount -t ext4 /dev/sdb1 /mnt/disk1
5.查看挂载信息
方法1: df -hT
分区 文件系统 大小 占用 空闲 占比 挂载点
方法2: mount
2.逻辑卷LVM
前言
目的:管理磁盘的一种方式,性质与基础磁盘无异
特点:随意扩张大小
术语
PV:物理卷(Physical Volume)
VG:卷组 (Volume Group)
LV:逻辑卷 (Logical Volume)
1.创建LVM
准备物理磁盘
1.pv:将物理磁盘转换成物理卷-pv
[root@localhost mnt]# pvcreate /dev/sdf
Physical volume "/dev/sdf" successfully created.
Physical volume "/dev/sdf" successfully created.
2.vg:创建卷组-vg
[root@localhost mnt]# vgcreate vg1 /dev/sdf
Volume group "vg1" successfully created
Volume group "vg1" successfully created
3.lv
[root@localhost mnt]# lvcreate -L 200M -n lv2 vg1
Logical volume "lv2" created.
指定大小,单位M,G 创建逻辑卷 -L大小 -n卷名 vg1 组名
Logical volume "lv2" created.
指定大小,单位M,G 创建逻辑卷 -L大小 -n卷名 vg1 组名
4.创建文件系统并挂载
2.VG管理
3.LV扩容
扩大LV lvextend
lv扩容
1.查看VG空间 vgs
2.扩容LV :lvextend -L +200M /dev/vg1/lv2
增加200M空间,给lv2
增加200M空间,给lv2
FS扩容
先观察文件系统当前容量
[root@localhost mnt]# df -hT
/dev/mapper/vg1-lv2 ext4 190M 1.6M 175M 1% /mnt/lv2
[root@localhost mnt]# df -hT
/dev/mapper/vg1-lv2 ext4 190M 1.6M 175M 1% /mnt/lv2
[root@localhost mnt]# resize2fs /dev/vg1/lv2
[root@localhost mnt]# df -hT
/dev/mapper/vg1-lv2 ext4 384M 2.3M 360M 1% /mnt/lv2
[root@localhost mnt]# df -hT
/dev/mapper/vg1-lv2 ext4 384M 2.3M 360M 1% /mnt/lv2
3.交换分区管理Swap
简介:
提升内容从的容量,防止oom (内存溢出)
Swap大小
推荐 :设置交换区大小为内存的2倍
生产
大于4GB而小于16GB内存系统,最小需要4GB交换空间
大于16GB而小于64GB内存系统,最小需要8GB交换空间
大于64GB而小于256GB内存系统,最小需要16GB交换空间
查看当前的交换分区
free -m
增加交换分区
准备分区
准备将/dev/sdc 磁盘划分2G分区为例
划分区后,将类型设置为82 (按 L)
fdisk /dev/sdc
格式化
mkswap /dev/sdc1
挂载
swapon /dev/sdc1
验证
查看增加后的交换分区是不是变大了?
free -m
存储管理2
文件系统详解
EXT3/EXT4文件系统
简介
类型
索引(index)文件系统
系统限制
图示
名词
示例1:inode
创建一个文件,观察inode信息
ll -i 文件名
ll -i 文件名
示例2:block
问题1:分区中,文件的数量和什么有关系?
问题2:当分区空间大小消耗完毕,还能新增文件?
文件链接
一,符号链接
二,硬链接
RAID(了解)
文件查找和压缩
文件查找
简介
which 命令查找
find:文件查找,针对文件名
locate:文件查找,依赖数据库
命令文件查找
查找ls 命令的位置
# which ls //从PATH环境变量
或者
# whereis vim
# which ls //从PATH环境变量
或者
# whereis vim
任意文件
find
语法
find [path...] [options] [expression] [action]
命令 路径 选项 表达式(描述) 动作
命令 路径 选项 表达式(描述) 动作
按文件名找
find /etc -name 'hosts'
-i 忽略大小写
find /etc -iname 'HOSTS'
按文件大小
find /etc -size +5M
指定查找目录深度
find / -maxdepth 3 -a -name "ifcfg-en*"
find / -maxdepth 4 -a -name "ifcfg-en*"
find / -maxdepth 4 -a -name "ifcfg-en*"
按文件属主,属组找
find /home -user jack //属主为jack的文件
find /home -group hr // 属组为hr组的文件
find /home -group hr // 属组为hr组的文件
按文件类型
find /dev -type l
find /dev -type d
find /tem -type f
find /dev -type b
find /dev -type d
find /tem -type f
find /dev -type b
f:普通文件,b:设备
按文件权限
find . -perm 644 -ls
-ls: 是find的动作之一
找到后处理的动作 ACTIONS
默认 -print
找到后删除 find /etc -name "775" -delete
找到后复制: find /etc -name "ifcfg*" ok cp -rvf { } /tmp \;
文件打包及压缩
简介
tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户
打包,压缩
解包,解压
查看:# tar -tf etc.tar // t查看f文件名
解压缩
# tar xf 需要解压的文件名称
# tar -xvf 需要解压的文件名称 -C /tmp // -C 解压到指定目录
软件管理
概述
RPM包
源码包
RPM包管理
YUM工具
简介
yum本地源:系统安装光盘
目的:通知linux服务器,通过系统光盘获得软件包,并安装软件
0.观察YUM核心配置目录
1.删除官方YUM库
2.编写本地YUM库配置文件
3.挂载安装光盘
4.使用YUM安装和卸载软件
模拟客户机访问
使用yum管理rpm包
RPM工具
前言
安装(i)
[root@bogon Packages]# rpm -ivh wget-1.14-18.el7.x86_64.rpm
Preparing... ################################# [100%]
package wget-1.14-18.el7.x86_64 is already installed
Preparing... ################################# [100%]
package wget-1.14-18.el7.x86_64 is already installed
i:安装
v:可视
h:百分比
卸载(e)
[root@bogon Packages]# rpm -evh wget-1.14-18.el7.x86_64.rpm
error: package wget-1.14-18.el7.x86_64.rpm is not installed
[root@bogon Packages]# rpm -evh wget-1.14-18.el7.x86_64
Preparing... ################################# [100%]
Cleaning up / removing...
1:wget-1.14-18.el7 ################################# [100%]
error: package wget-1.14-18.el7.x86_64.rpm is not installed
[root@bogon Packages]# rpm -evh wget-1.14-18.el7.x86_64
Preparing... ################################# [100%]
Cleaning up / removing...
1:wget-1.14-18.el7 ################################# [100%]
查询(q)
[root@bogon Packages]# rpm -q wget-1.14-18.el7.x86_64
wget-1.14-18.el7.x86_64
wget-1.14-18.el7.x86_64
[root@bogon Packages]# rpm -q wget-1.14-18.el7.x86_64.rpm
package wget-1.14-18.el7.x86_64.rpm is not installed
package wget-1.14-18.el7.x86_64.rpm is not installed
源码包管理
获取源码包
实战案例
下载Tengine
部署Tengine
准备编译环境如编译器
[root@localhost opt]# yum install -y gcc make zlib-devel pcre pcre-devel openssl-devel
解压
配置
[root@localhost tengine-2.3.2]# ./configure --user=www --group=www --prefix=/usr/local/nginx
注意空格
编译
[root@localhost tengine-2.3.2]# make
安装
[root@localhost tengine-2.3.2]# make install
启动测试
0 条评论
下一页