bash环境变量、特殊权限及磁盘管理与文件系统

bash环境配置:

配置文件,生效范围划分,存在两类:

全局配置:/etc/profile, /etc/profile.d/*.sh,/etc/bashrc

个人配置:~/.bash_profile,~/.bashrc

按功能划分,存在两类:

profile类:为交互式登录的shell提供配置

/etc/profile, /etc/profile.d/*.sh

~/.bash_profile

功用:

(1) 定义环境变量,例如PATH、PS1

(2) 运行命令或脚本

bashrc类:为非交互式登录shell提供配置

/etc/bashrc

~/.bashrc

功用:

(1) 定义命令别名;

(2) 定义本地变量;

变量:内存空间,变量名

类型:

环境变量:作用范围当前shell进程及其子进程

本地变量:作用范围当前shell进程

局部变量:作用范围仅为当前shell进程中某代码片断(通常为函数上下文)

位置变量:$1, $2

特殊变量:$?

变量定义方式:

bash内置变量:可直接调用,内置了许多环境变量,例如PATH等

自定义变量:

变量赋值:变量名=值

bash弱类型:

变量存储数据时,默认均采用字符形式;任何变量可以不经声明,直接引用;

定义本地变量:

name=value

查看命令:set

定义环境变量:

export name=value

declare -x name=value

查看:env, printenv, export

撤消变量:

unset name

引用变量:

${name}, $name

bash中的引用符号:

‘‘: 强引用,变量替换不会发生

"":弱引用

``: 命令引用

shell登录类型:

交互式登录:

直接通过终端进行的登录;

通过su -l Username命令实现的用户切换;

非交互式登录:

图形界面下打开的命令行窗口;

执行脚本

配置文件作用次序:

交互式登录:

/etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc      最后那个优先级最高

非交互式登录:

~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh

编辑配置文件定义的新配置如何生效?

(1) 重新登录;

(2) 让当前shell进程去重新读取指定的配置文件;

source /PATH/TO/SOMEFILE

. /PATH/TO/SOMEFILE

注意:会产生重复的变量

Linux文件系统上的特殊权限

权限模型:

u:r,w,x

g:r,w,x

o:r,w,x

进程的安全上下文:

前提:进程有属主(进程以哪个用户的身份运行);文件有属主和属组;

(1) 用户是否能够把某个可执行程序文件启动为进程,取决于用户对程序文件是否拥有执行权限;

(2) 程序启动为进程后,此进程的属主为当前用户,也即进程的发起者;进程所属的组,为发起者的基本组;

(3) 进程拥的访问权限,取决其属主的访问权限:

(a) 进程的属主,同文件属主,则应用文件属主权限;

(b) 进程的属主,属于文件的属组,则应用文件属组权限;

(c) 则应用其它权限;

SUID:

(1) 任何一个可执行程序文件能不能启动为进程:取决于发起者对程序文件是否有执行权限;

(2) 启动为进程之后,其属主不是发起者,而程序文件自己的属主;这种机制即为SUID;

权限设定:

chmod u+s FILE...

chmod u-s FILE...

注意:

s: 属主原本拥有x权限;

S: 属主原本无x权限;

SGID:

默认情况下,用户创建文件时,其属级为此用户所属的基本组;

一旦某目录被设定了SGID权限,则对此目录拥有写权限的用户在此目录中创建的文件所属的组为目录的属组,而非用户的基本组;

权限设定:

chmod g+s FILE...

chmod g-s FILE...

Sticky:

对于一个多人可写的目录,此权限用于限制每个仅能删除自己的文件;

权限设定

chmod o+t FILE...

chmod o-t FILE...

Linux系统管理

磁盘和文件系统管理;

RAID, LVM; btrfs;

程序包管理:rpm, yum(dnf)

Linux的网络管理;

进程和作业管理:htop, glances, tsar;

sed和awk;

Linux系统的开机启动流程;

内核基础知识,内核定制编译;

系统安装:kickstart, pxe

Linux磁盘管理

硬盘:

机械式硬盘,SSD,机械式:

track

sector: 512bytes

cylinder: 分区的基本单位;

MBR:Master Boot Record

512bytes 446: bootloader 64: filesystem allocation table 16: 标识一个分 区  2:55AA

磁盘接口类型:

IDE (ATA):133MB/s,/dev/hd

SCSI: 640MB/s

SATA:6Gbps

SAS:6Gbps

USB:480MB/s

识别硬盘设备:/dev/sd

标记不同的硬盘设备:/dev/sd[a-z]

标记同一设备上的不同分区:/dev/sd[a-z][1-]

1-4: 主或扩展分区标识

5+:逻辑分区标识

设备文件:特殊文件

设备号:major, minor

major: 设备类型

minor: 同一类型下的不同设备

"块":block,随机设备

"字符":character,线性设备

分区:分隔存储空间为多个小的空间,每个空间可独立使用文件系统;

分区工具:fdisk, parted, sfdisk

fdisk工具的使用:最多支持在一块硬盘上的15个分区;

分区管理子命令:

p: 显示

n: 创建

d: 删除

t: 修改分区ID

l: 列出所有支持ID类型

w: 保存退出

q: 放弃修改并退出

m: 获取帮助

创建完成之后,查看内核是否已经识别新的分区:

# cat /proc/partitions

有三个命令可以让内核重读磁盘分区表:

CentOS 5: partprobe [DEVICE]

CentOS 6或7: partx,kpartx

partx命令:

partx DEVICE

partx -a DEVICE

partx -a -n M:N DEVICE

M

M:

:N

kpartx命令:

kpartx -af DEVICE

Linux文件系统管理

文件系统:

VFS:Virtual File System

Linux:ext2, ext3, ext4, reiserfs, xfs, btrfs, swap

光盘:iso9660

Windows: fat32(vfat), ntfs

Unix: ffs, ufs, jfs, jfs2

网络文件系统:nfs, cifs

集群文件系统:ocfs2, gfs2

分布式文件系统:ceph, moosefs, mogilefs, hdfs, gfs, glusterfs

(1) 日志型文件系统

非日志型文件系统:ext2

日志型文件系统:ext3

(2) swap:交换分区

创建文件系统:

在分区上执行格式化(高级格式化)

要使用某种文件系统,满足两个条件:

内核中:支持此种文件系统

用户空间:有文件系统管理工具

创建工具:mkfs (make filesystem)

mkfs用法:

mkfs -t type DEVICE

mkfs.type DEVICE

ext系列文件系统的专用管理工具:

mke2fs -t {ext2|ext3|ext4} DEVICE

-b BLOCK: 1024, 2048, 4096

-L ‘LABEL‘: 设定卷标

blkid命令:

blkid DEVICE

LABEL, UUID, TYPE

作业:

让普通用户能使用/tmp/cat去查看/etc/shadow文件

chmod u+s  ./cat

[[email protected] ~]# cp /usr/bin/cat /tmp/
[[email protected] tmp]# chmod u+s cat
[[email protected] tmp]# su  Hadoop
[[email protected] ~]$ /tmp/cat /etc/shadow

创建目录/test/data,让某组内普通用户对其有写权限,且创建的所有文件的属组为目录所属的组;此外,每个用户仅能删除自己的文件

mkdir p /test/data
chmod g+w /test/data
chmod g+s /test/data
chmod o+t /test/data
时间: 2024-12-21 04:30:05

bash环境变量、特殊权限及磁盘管理与文件系统的相关文章

find,vim,bash环境变量,文件权限

Linux中一切皆文件,所以文本文件的编辑就是运维工作的常事,熟练使用一款文本编辑器就非常重要,linux中有nano文本编辑器,现在学习更为强大的Vim文本编辑器 全屏幕的编辑器:VIM vi: visual interface sed:行编辑器 vi, vi iMproved vim: 模式化: 编辑模式:命令模式 输入模式: 末行模式: 编辑模式 --> 输入模式: i: insert, a:append, o:new line, I: 行首 A:行尾 O:上方新建行 输入模式 -->

Linux 20150830学习整理 VIM、FIND、bash环境、特殊权限

第一部分  VIM 文本编辑器只针对ASCII码,字处理器 1.种类: 简单编辑器  nano:是全屏模式 vi:visual interface 全屏文本编辑器,模式化的编辑器 VIM是vi的增强版本有高量.语法着色显示等功能 2.VI工作模式 编辑模式:VI默认工作模式(也称为命令模式) 输入模式:输入字符内容 末行模式:在屏幕最后一行,可以编辑文件和其它额外操作.内嵌命令行接口 以 冒号" : "可输入命令 工作模式切换 编辑模式----> 输入模式用以下快捷键 小写i  

vim、find 的使用bash环境变量

今天我给大家带来的是VIM,find,命令的使用和bash环境变量的一些内容. vim命令 vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏纯文本编辑器.Linux中的vi编辑器叫vim,它是vi的增强版,与vi编辑器完全兼容,而且实现了很多增强功能. vi编辑器有三种模式:输入模式,命令模式(编辑模式)和末行模式,(默认打开命令模式) 语法:   vi(选项)(参数) 参数解释: Ctrl+u:向文件首翻半屏: Ctrl+d:向文件尾翻半屏: Ctrl+f:向文件尾翻一屏: Ctr

bash环境变量读取顺序

bash环境变量读取顺序: 交互式登录的用户: /etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc 非交互式登录的用户: ~/.bash_profile --> ~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh

8-30 vim和find使用及磁盘管理和文件系统相关知识

1.总结文本编辑工具vim的使用方法: 2.总结文件查找命令find的使用方法: 3.总结bash环境变量的相关内容: 4.总结Linux文件系统上的特殊权限(SUID.SGID.Sticky)的知识点: 5.总结Linux磁盘管理.文件系统相关知识点及其相关命令的使用方法: 6.复制/etc/grub.cfg配置文件至/tmp目录,用查找替换命令删除/tmp/grub.cfg文件中的行首的空白字符: 7.复制/etc/rc.d/init.d/functions文件至/tmp目录,用查找替换命令

磁盘管理和文件系统挂载

磁盘管理和文件系统特性 一,磁盘相关 硬盘通过接口类型可以区分为: 并行:IDE,SCSI 串行:SATA,SAS,USB等 根据接口和转速(rpm)不同,硬盘读写速度不同. 在linux下硬件已设备文件存在,关联对应的设备驱动程序与对应的硬件设备通信,设备只有元数据,没有数据. vim /proc/devices 可查看字符设备号和块设备号 cat /dev/  可查看设备文件 Linux下磁盘文件命名规则 /dev/sd[a-p][1-15]:为SCSI, SATA,U盘, /dev/hd[

Linux磁盘管理及文件系统

Linux磁盘管理及文件系统 1.Linux磁盘管理 识别硬盘设备:/dev/sd 标记不同的硬盘设备:/dev/sd[a-z] 标记同一设备上的不同分区:/dev/sd[a-z][1-] 1-4: 主或扩展分区标识 5+:逻辑分区标识 2.设备文件:特殊文件 设备号: major, minor major: 设备类型 minor: 同一类型下的不同设备 "块":block,随机设备 "字符":character,线性设备 3.分区工具: (1)fdisk, par

Linux磁盘管理——日志文件系统与数据一致性

参考:Linux磁盘管理——Ext2文件系统 数据不一致 上图是Ext2结构图,其他FS结构类似. 一般来说,我们将 inode table 与 data block 称为数据区:至于其他例如 superblock. block bitmap 与 inode bitmap 等称为 metadata (元数据). 以新增一个文件为例,看看FS操作流程 1. 先确定使用者对于欲新增文件的目录是否具有 w 与 x 的权限,若有的话才能新增:2. 根据 inode bitmap 找到没有使用的 inod

Linux系统管理之磁盘管理与文件系统

Linux系统管理之磁盘管理与文件系统 一.前言 管理磁盘是管理员的重要工作内容,本文主要介绍以下几个方面 磁盘结构及分区表示 管理磁盘及分区 管理文件系统 二.磁盘(无尘环境制造)结构及分区 1.物理结构 盘片:硬盘有多个盘片,每盘片2面 磁头:每面有一个磁头 2.数据结构 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据 磁道:同一盘片不同半径的同心圆 柱面:不同盘片相同半径构成的圆柱面 多个扇区组成磁道,多个相同直径的磁道组成柱面 笔记本的磁盘一般是2.5英寸,7mm厚度和9.5