设为首页 收藏本站
查看: 362|回复: 0

[经验分享] Bash环境配置和文件的特殊权限

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-7 08:13:59 | 显示全部楼层 |阅读模式
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是弱类型的编程语言:
变量存储数据时,默认均采用字符形式;任何变量可以不经声明,直接引用;

120:24bits
120: 8bits

wKiom1XrxgiQ6z2ZAABHHIsH7PY605.jpg
wKioL1XryDDzHsPdAAEyXtDwfPY955.jpg
wKioL1XryDDi1Br0AAAo-rmt0iA521.jpg
wKiom1XrxgnwyeQTAACVrJgvkBY066.jpg
wKioL1XryDCiim53AAAwalKyPsw657.jpg
wKiom1XrxgnA4fTWAAAprKUltCQ204.jpg
wKiom1XrxkrT8dEMAABNUiBsZf0774.jpg
wKioL1XryTbhwK4cAAD3GxyMmqg246.jpg
wKiom1Xrxw_xepu0AAAo8I_eRNc484.jpg
wKioL1XryeWy1jTeAACCIXmtxwE814.jpg
wKiom1Xrx76hmf76AAAhSgchbM4729.jpg
wKioL1XryeXjlVecAAA1IA5hcSc169.jpg


定义本地变量:
            name=value
            查看:set

wKioL1Xryz2C-sGWAAJsgnrGg3A358.jpg


定义环境变量:
export name=value
declare -x name=value
                查看:env, printenv, export

wKiom1XryZXRXscdAAD02Y_xBus288.jpg

撤消变量:

unset name
wKiom1Xr0Zux31LYAAD0VBd-k4w001.jpg
引用变量:
${name}, $name
wKioL1Xr02mxbxleAACuNxbqjY8168.jpg

bash中的引用符号:

'': 强引用,变量替换不会发生
"":弱引用
``: 命令引用
wKioL1Xr1U3AG9spAABYZlhFdZ8007.jpg
wKioL1Xr1aij8krrAABWVv7GOUU383.jpg

        shell登录类型:
交互式登录:
直接通过终端进行的登录;
通过su -l Username命令实现的用户切换;
非交互式登录:

图形界面下打开的命令行窗口;
执行脚本;
su Username;
配置文件作用次序:

交互式登录:
/etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc

非交互式登录:
~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh
                针对所有用户,环境变量
wKioL1Xr2JCB_VZnAAAyOl9QQdw011.jpg      
wKioL1Xr2vui9wA_AAAmnv-vVDc551.jpg      
wKiom1Xr2Q_hYnRjAACe8-77byg941.jpg

wKioL1Xr3vux-DZCAAAf0QeAEpQ760.jpg
wKioL1Xr4kqSHYfSAACt_85eN2w820.jpg
wKiom1Xr4G3T5nATAAA2T-hr03U486.jpg
wKiom1Xr4Qqi215uAAFnzup6dGg700.jpg
wKioL1Xr4r7z-tuLAACZF9boIDQ333.jpg

编辑配置文件定义的新配置如何生效?
(1) 重新登录;
(2) 让当前shell进程去重新读取指定的配置文件;
source /PATH/TO/SOMEFILE
. /PATH/TO/SOMEFILE
注意:副作用

问题:
1、定义对所有用都生效的别名?
2、如果仅需要PATH环境变量的修改仅对root用户生效,该如何操作?


Linux文件系统上的特殊权限
权限模型:
u, g, o
r, w, x

进程的安全上下文:
前提:进程有属主(进程以哪个用户的身份运行);文件有属主和属组;
(1) 用户是否能够把某个可执行程序文件启动为进程,取决于用户对程序文件是否拥有执行权限;
(2) 程序启动为进程后,此进程的属主为当前用户,也即进程的发起者;进程所属的组,为发起者的基本组;
(3) 进程拥有的访问权限,取决其属主的访问权限:
(a) 进程的属主,同文件属主,则应用文件属主权限;
(b) 进程的属主,属于文件的属组,则应用文件属组权限;
(c) 则应用其它权限;
wKioL1Xr6kDT2pfvAAJPdiplRWw477.jpg
wKioL1Xr6rniyf_HAABYfVVp6UA918.jpg
wKiom1Xr6OqjkS4eAAJaDgbEuHc380.jpg
wKiom1Xr6Quifh4AAAFOjcO06ic153.jpg
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...
wKiom1Xr-uLRZS82AAGLJKh_FMw565.jpg
wKiom1Xr-8XTttCrAAF0g-rXtAo677.jpg   
wKiom1Xr_IPw6atBAAFgBzaix88088.jpg
wKiom1Xr_TDCLB-5AACNRvdGIIY010.jpg       
wKiom1Xr_V_zIv4FAABW1eYRqA8150.jpg
wKioL1Xr_4fzVZuJAABiCpq9OyY852.jpg
wKioL1Xr_-KhAPXbAAEs_jween4533.jpg
wKiom1Xr_mqRH5W-AABo5uKt6OI700.jpg
wKiom1Xr_p2jjjEiAAELKXnJEcM759.jpg
wKiom1Xr_4SwlX2CAABMyGD6iDo944.jpg
Sticky:
对于一个多人可写的目录,此权限用于限制每个仅能删除自己的文件;

权限设定
chmod o+t FILE...
chmod o-t FILE...
wKiom1XsAEfhef8sAACDHohT_Ys149.jpg       
wKioL1XsBBfSCtYwAACjEGPKOEE919.jpg   

wKioL1XsBFPij4q2AAA0qjoLS8g716.jpg
SUID, SGID, STICKY
000
001
010
011
100
101
110
chmod 4777 FILE
chmod 3755 DIR


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-110317-1-1.html 上篇帖子: Linux 磁盘管理命令fdisk.df.du.mount等的介绍 下篇帖子: grep正则表达式详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表