首页 > 其他分享 >嵌入式学习day03

嵌入式学习day03

时间:2024-07-18 22:26:39浏览次数:15  
标签:选项 权限 day03 用户组 lucy 用户 学习 嵌入式 eg

概念

Linux中的角色:

当前用户

当前用户组

其他用户组

Linux中的权限:

执行(不是所有文件都需要执行权限,仅限与应用程序)

普通用户和最高管理员

普通用户:安装系统时我们创建的用户,这个也可以由管理员来分配,如:myl

最高管理员:root,Linux系统内置,当第一次使用root用户需要修改密码。

修改最高管理员root用户的密码:

sudo passwd -- 然后按照提示输入密码即可

 注意:终端输入密码时没有提示,如果输入错误按回车键会提示你重新输入。

普通用户和最高管理员切换

普通用户切换ROOT用户:

sudo -i -- 没有设置密码的时候,使用这个进入

su root -- 设置了密码之后,可以通过这个命令进入

ROOT用户切换普通用户: 

su 用户名

 用户相关操作

添加新用户

语法: useradd [选项] 用户名

eg: useradd -d /home/lucy -m lucy ;创建了一个用户lucy,并在家目录下为她分配了一个同名目 录。

注意:如果在新建用户的时候没有指定用户组,就会创建一个与用户名相同的组名,并让新用户属于 这个组。

例如: lucy:lucy

eg: useradd -d /home/peter -mg lucy peter

说明:创建了peter用户,并创建了peter在home中的目录,将peter用户添加到lucy用户组中。

查看用户所属的组

语法: [sudo] groups 用户名

注意:sudo是在普通用户中,临时提升权限至Root

删除用户

语法: userdel [选项] 用户名

eg: userdel -rf peter 删除peter用户,并在不提示任何信息的情况递归删除peter目录。

给用户添加口令(密码)

语法: passwd [选项] 用户名

选项:

-l :锁定口令,也就是禁用账号

-u :口令解锁

-d :使账号无口令

-e :强制用户下次登录时修改口令

说明:

ROOT用户下,给lucy设置密码:

passwd lucy -- 这里对密码复杂度没有要求

普通用户下,给lucy设置密码: 

passwd -- 这里对密码复杂度有要求

修改用户 

语法: usermod [选项] 用户名

选项:

-c :备注,修改用户账号的备注文字

-g :用户组,修改用户所属的用户组

-G :群组,修改用户所属的附加群组

-s :shell,修改用户登入后所使用的shell

-u :uid,修改用户ID

eg: usermod -g root lucy 将lucy用户所属的组改成root组

eg: usermod -g lucy -G root lucy 将lucy用户所属的组改成lucy组,群组改成root,可以有多个群 组,用 , 分割

用户组相关操作

添加用户组

语法: groupadd [选项] 组名

选项:

           -g :GID,指定新用户组的组标识(唯一编号),如果不指定,系统会自动编号

eg: groupadd workgroup 创建一个工作组

查看所有用户组

语法: cat /etc/group

语法: cat /etc/gshadow

删除用户组

语法: groupdel [选项] 组名

eg: groupdel workgroup 删掉我们添加的workgroup组

修改用户组

语法: groupmod [选项] 新组名 旧组名

选项:

-g :GID,微信的组指定新的唯一标识

-o :和 -g 选项同时使用,允许用户组的新的GID和系统已有用户组的GID相同

-n : 新用户组 将用户组的名字改为新名字

eg: groupmod -n YQ workgroup 将workgroup组名改成MYL

eg: groupmod -n workgroup MYL -g 1003 -o 将MYL改名workgroup,并且要求MYL组和已经存在1003对应的组GID相同

权限管理

修改目录的拥有者

解释:目录也就是文件夹,目录的拥有者也就是目录的创建者

语法: chown [选项] 用户名 或者 :组名 文件/目录的路径

选项:

-c :显示更改部分的信息

-f :忽略错误信息

-h :修复符号链接

-R :处理指定目录以及其子目录中的所有文件

-v :显示详细的处理信息

eg: chown lucy /home/yueqian/demo01.c ---修改demo01.c文件的拥有者为lucy(单个用户) eg: chown :root /home/yueqian/demo01.c ---修改demo01.c文件的拥有者为root组(root组内所有 用户)

修改文件或文件夹的可读可写可执行权限

语法: chmod [选项] 权限 文件或目录的路径

选项:

-c :显示更改部分

-f :忽略提示信息

-R :递归修改指定目录及其子目录中的所有文件

-v :显示详细信息

方式1:文字设定法

语法: chmod [who] [+,-,=] 权限名 文件或目录的路径

格式说明:

who 可选:

               a :all 所有用户

               u :user 当前用户

               g :group 当前用户组(当前用户所在的组)

               o :other 其他用户或者用户组

               + :增加权限 

                - :删除权限

                = :设置权限

权限名

r :可读

w :可写

x :可执行

- :不可(不可读,不可写,不可执行)

eg: chmod u=rwx,g=rx,o=- demo01.c 将当前路径下的demo01.c文件的拥有者权限设置为可读可写可执行,同组用户可读可执行,其他用户没有任何权限

方式2:数字设定法

语法: chmod 权限数字 文件或目录的路径

格式说明:

     权限数字:

        r :4

        w :2

        x :1

        - :0

注意:我们的权限数字表示: 777 ,三个数字,第1个数字代表当前用户(4+2+1),第2 个数字代表当前用户组(4+2+1),第3个数字代表其他用户(4+2+1),每个数字都是权限累 加的结果,比如 777 其实就是 4+2+1,4+2+1,4+2+1 。

eg: chmod 750 demo01.c 将当前路径下的demo01.c文件的拥有者权限设置为可读可写可执行,同组用户可读可执行,其他用户没有任何权限

快捷键

ctrl + alt + t :打开linux终端(命令行工具)

ctrl + shift + + :对终端显示文本进行放大

ctrl + - :对终端显示文本进行缩小

Ctrl + L :对终端当前屏幕进行清空,等价于 clear 这个指令

方向键上/下 :在终端通过方向键,从历史命令中获取历史命令。

Tab :对命令行中的命令进行补全,这里要注意,如果前缀在同级中有多个对应文件或者文件夹,会 失效。

Ctrl + c :强制退回到命令行状态(一般用于命令输错时)

存储单位换算

常用磁盘(硬盘)容量单位。

最小内存是以字节为单位。

B:1Byte = 8bit KB:

1KB = 1024B MB:

1MB = 1024KB GB:

1GB = 1024MB TB:

1TB = 1024GB PB:

1PB = 1024TB

三种方式学习Linux指令

man [cp ] 官方帮助文档,不需要借助外网,但是是纯英文的

[cp] -- help 中文翻译版的API文档,不需要借助外网,大部分内容是中文的

菜鸟教程:编程小白的强大利器,这个需要外网:https://www.runoob.com/

其他:

  文心一言:百度大模型

  通义灵码/天问:阿里大模型

  昆仑天工:昆仑大模型

标签:选项,权限,day03,用户组,lucy,用户,学习,嵌入式,eg
From: https://blog.csdn.net/weixin_70912462/article/details/140530842

相关文章

  • day03Linux学习
    普通用户和最高管理员切换普通切换root用户sudo-i---没有设置密码的时候suroot---设置密码之后root切换普通用户su用户名添加新用户语法:useradd[选项]用户名选项:-d:设置新用户登陆时所使用的家目录-g(group):设置组-m(mkdir):没有主目录会自动创建用户主目录eg......
  • 学习 profcontrol 之锁定与隐藏
    我们画出来的任何元素,点击它,点击右键菜单都会有隐藏功能,隐藏之后我们在底部工具栏可以选择全部显示,使其还原出来;同时我们也可以按着shift键框选,将他们整体一起隐藏或者一起显示。隐藏功能更多的时候推荐使用图层隐藏,图层隐藏的好处是我们对于一个图层隐藏完之后,我们在这里......
  • EasyX学习-井字棋
    使用EasyX制作的井字棋点击查看代码#include<iostream>#include<Windows.h>#include<graphics.h>constintfps=60;staticconstintrow=3;staticconstintcol=3;charboard_data[row][col]={ {'-','-','-'}, {&#......
  • HTML学习1:网页基本信息
    <!--html注释--><!--ctrl+/注释的快捷键--><!--DOCTYPE:告诉浏览器,我们要使用什么规范--><!DOCTYPEhtml><htmllang="en"><!--head标签代表网页头部--><head>  <!--meta为描述性标签,它用来描述我们网站的一些信息-->  <!--meta一般用来做SEO(搜索......
  • HTML学习1:网页基本标签
    <!DOCTYPEhtml><htmllang="en"><head>  <metacharset="UTF-8">  <metaname="viewport"content="width=device-width,initial-scale=1.0">  <title>网页基本标签</title></......
  • 7-18学习笔记
    一、字符串        String类引用类型默认值null不是""1、声明字符串Stringstr="abc你好";str=newString();str=newString("你好");char[]arr={'a','b','c',97};str=newStr......
  • Vue3学习---1
    Vue3学习1.初识Vue1.1HelloWorld程序<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><ti......
  • XGBoost模型构建+SHAP解析-Python代码——用XGBoost模型实现机器学习并进行黑箱过程解
    一、XGBoost模型简介1.1适用范围XGBoost(ExtremeGradientBoosting)是一个基于梯度提升(GradientBoosting)框架的增强算法,广泛应用于分类、回归、排序等任务。常见的应用包括:信用风险评估销售预测病毒检测图像识别1.2原理XGBoost是梯度提升树(GradientBoostedDecisionTree......
  • 决策树模型构建+调参Python代码——用决策树模型实现机器学习
    一、决策树模型简介1.1适用范围决策树模型(DecisionTree)可以用于分类和回归任务,广泛应用于以下领域:客户细分信用风险评估医疗诊断营销策略优化1.2原理决策树是一种树形结构的预测模型,通过一系列的特征测试(即节点的分裂)将数据集逐步划分,从而形成一个树状的决策路径。每个节......
  • 蓝桥杯单片学习总结(Day12 串口通讯实验)
    实验现象:        通过串口调试助手发送数字1~8,板子上面的对应指示灯亮。注意此处发送应选择文本模式发送。 实例代码:#include<STC15F2K60S2.H>#defineBUAD 9600//所需波特率、#defineSYSTEMCLOCK 11059200L//系统时钟频率,L表示该数据为长整型voiduart_......