2024年最新操作系统(Linux)外壳程序shell 、用户、权限_linux 壳,腾讯T4架构师

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

文章目录

大家好,我是纪宁。

这篇文章将介绍 Linux的shell外壳程序,Linux用户切换机Linux权限的内容。

操作系统和shell外壳

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。
而是通过kernel的“外壳”程序,也就是所谓的shell。

Linux用户态与内核态图
在这里插入图片描述

操作系统内核和shell外壳是两个不同的组件,但它们之间有密切的关系。

操作系统内核是操作系统的核心部分,它管理计算机硬件和软件资源,并提供计算机系统的基本服务,如进程管理、内存管理、I/O管理、文件系统等。操作系统内核是操作系统的基石,没有它,操作系统无法正常运行。

Shell外壳是用户与操作系统内核交互的主要接口。Shell可以理解为命令解释器,它接受用户输入的命令,并调用相应的内核服务执行。Shell提供了一组命令和脚本语言,可以让用户方便地访问操作系统内核的服务和操作文件系统等资源。

在操作系统中,Shell作为系统用户和内核的一个交互接口,通过命令行或图形界面的形式传递用户的请求和指令,内核接收到指令后,执行相应的操作,并把结果返回给Shell。Shell与内核之间的交互可以通过系统调用实现。

那么总结shell外壳的作用是:将使用者的命令翻译给内核并进行处理,同时将内核的处理结果翻译给使用者。

shell外壳一定会对用户输入的指令做处理吗?

答案是不一定的。为了操作系统的安全性及易用性考虑,用户要通过shell程序输入指令,而不是直接访问操作系统。但 shell 程序在进行指令处理的时候,对于有风险的指令,shell 程序会创建一个子进程,让子进程去执行有风险的指令(一般是用户自定义的指令)。
创建子进程可以将指令执行过程隔离在一个独立的进程空间中,这样,即使执行出现错误或意外,也不会影响到shell本身及其他进程;其次,shell 可以通过控制子进程的进程状态和资源使用情况,来限制指令的影响范围,减少风险,极大的保证了系统的安全性和稳定性。

杀掉一个进程的指令:

kill -9 进程编号

Linux用户

Linux系统的用户分为 root 用户 和 非root 用户,root 用户是超级管理员,拥有系统的最高权限;而普通用户可以在自己的系统中干大部分的事,我们使用 windows 系统可以做的事基本普通用户都可以做,而对于系统软件安装和删除、修改系统配置等却只有root用户才可以干。

普通用户的创建和删除

在一台Linux系统中,只能有一个root用户,但可以有多个普通用户,各普通用户之间的资源不共享。

创建新用户 xxx为要创建的用户名

adduser xxx

为用户设置密码 xxxxx为密码(终端不显示输入的密码,但会进行二次确认)

passwd xxxxx

删除用户名和密码

userdel xxx

删除用户数据

userdel rm -r xxx

用户的切换

切换为root用户

su - #以root身份再登录一次

su #切换为root身份

以上两种切换方式都需要再次输入root账号密码

logout # 退回到普通用户的账号

切换为普通用户

su xxx

root账号切换不需要输入密码,普通账号需要输入切换账号的密码

exit

退出切换过来的普通账号

如何不切换为root账号,还能以root账号的权限,执行一条命令

sudo 指令

但是使用 sudo 指令需要以root身份将普通用户将普通用户添加至白名单之后才可使用 sudo。

sudo指令白名单教程
首先,先将用户切换至 root 账号,在root账号下运行如下指令

vim /etc/sudoers

进入 vim 后找到 %whell ALL=(ALL) ALL 这句指令
在这里插入图片描述

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值