学Linux的第五天

目录

命令解释器-shell-负责解析用户输入的命令

分类:

type --查看命令是内置命令、外置命名、alias命令

注意

Linux 中的特殊符号

拓展

命令别名aliasalias 别名='原命令 - 参数'

常用的别名untar,wget,getpass,ping,speed,ipe,c

删除别名unalias

注意

history--查阅命令历史记录

注意

账户和组管理

账户和工作组的分类

用户分为三类:

工作组分析两类:

账户和工作组的配置文件

用户账号文件

id    查看账户的UID、GID等信息

用户密码文件

工作组账号文件

用户管理

添加新用户useradd

修改账户信息usermod

账号设置密码passwd

命令设置密码

删除账号userdel

账户切换su

控制用户对系统命令的使用权限sudo


 

命令解释器-shell-负责解析用户输入的命令

分类:

内置命令 (shell 内置 ) shell 为了完成自我管理和基本的管理,不同的 shell 内置不同的命令,但是大
部分都差不多
外置命令,在文件系统的某个目录下,有个与命令名称相同的文件

type --查看命令是内置命令、外置命名、alias命令

type - 参数 命令名
type -a 列出当前命令可以如何执行
type -t 仅列出命令按照哪种方式执行

注意

1.在命令行中cd可以直接写是因为系统环境可以识别,echo   $PATH
2.PATH=$PATH:/mnt在原来基础上加/mnt,这个是临时的
3.两个窗口独立,系统中设定在文件中保存才是永久


Linux 中的特殊符号

;    可使用分号分隔多条命令     在一行上输入和执行多条较短的命令,可使用分号来分隔命令
*    匹配任意零个或者多个字符    不能用于创建文件
?  匹配任意单个字符     不能用于创建文件
[]    匹配方括号中的任意一个字符,表示范围可以用"-”    不能用于创建文件
[^] 或者 [!]     匹配方括号中的任意一个字符或数字后进行取反
用于查找和删除文件,不用于创建文件
{string,string}      匹配括号中的任意一个字符串,表示一个范围时,字符串之间个".."
可用于创建、查看、删除文件
\      使\ 后面的特殊字符失效
例如:可以在命令行后面加一个 \ ,再按回车键时 并不表示执行该命令,而是表示换行,通过此方式 将一个较长的命令分成多行表达,增强命令的可读 性。换行后系统自动显示提示符 >
`      反引号,一般用于引用命令,执行的时候反引号里面的命令会被执行,与$() 作用相同
'       单引号,将单引号内的所有内容都原样输出所有特殊字符在单引号里面都会失去特殊含义
"      双引号,除了几个特殊字符外,将双引号内的几乎所有内容都原样输出
       ”$“ “\” 以及 “ ` ” 在双引号里面仍然保留自己的特殊含义

拓展

 空格是一个字符
[[:alpha:]]字母lower小写,upper大写,digit数字
punct符号space空格alnum字母或数字,第一个中括号表示集合,两个第二个中括号连起来表示或,模糊匹配
{a,b,c}三个文件,[a-c]a到c,反选只能用于中括号,{1..5}1连续到5,

“”引号。批量转义。单引号-强引用。双引号-弱引用
单引号引起来先执行

命令别名alias
alias 别名='原命令 - 参数'

例子

[root@server ~] # alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'

常用的别名untar,wget,getpass,ping,speed,ipe,c

由于 tar 命令的参数太多不好记忆,所以将解压缩设为

alias untar='tar -zxvf '

下载大文件时的断点续连,防止网络异常中断

alias wget = 'wget -c '
生成 20 个字符的随机数密码,使用 openssl 命令,但命令又很长不方便,可以设置别名
alias getpass = "openssl rand -base64 20"
ping url 时会无限次输出,但其实没多大意义,可以使用 -c 命令将其限制为 5 次输出

alias ping='ping -c 5'

speed 测试网速命令speedtest-cli ,为了方便使用可以设置别名:
安装 : speedtest-cli 是基于 python 编写的需要使用 pip 工具下载
[root@server ~] # speedtest-cli --list
ipe
公网 IP别名设置: alias ipe = 'curl ipinfo.io/ip'
清屏,一般使用 ctrl + l 快捷键,也可以将 clear 命令定义得更短,这样使用起来更直接,更粗暴
alias c = 'clear'

删除别名unalias

unalias 别名
注意
1.在命令行中使用 alias 命令设置的别名仅在该次登入有效,如果重新开启一个 Shell ,或者重新登录系
统,则这些 alias 将无法使用。
2.在 linux 中提供 alias 永久化的方法:
将别名命令写入到 ~/.bashrc /etc/bashrc 文件中
执行 source ~/.bashrc source ~/etc/bashrc 生效
3.alias   ping='ping   -c1    -w1'别名,代替,每次使用ping(实际上是执行带有-c 1 -W 1参数的ping)时,就只会发送一个 ICMP 请求包并且等待 1 秒获取响应,而不是像原始ping命令那样一直发送请求直到手动停止。

history--查阅命令历史记录

history - 参数
number :显示最近 number 条命令历史
-c :清空当前历史命令

注意

历史在bash.history里,清空文件里的历史

账户和组管理

账户和工作组的分类

用户分为三类:

超级账户 —— 账户名为 root ,它具有一切权限,只有进行系统维护 ( 例如:建立用户等 ) 或其他必要情形下才用超级用户登录,以避免系统出现安全问题。
系统账户 —— Linux 系统正常工作所必需的账户,主要为了满足相应的系统进程对文件属主的要求而建立的,如:bin daemon adm sshd 等,注意:系统账户不能登录。
普通用户 —— 是为了让使用者能够使用 Linux 系统资源而建立的,大多数用户属于此类。

工作组分析两类:

基本组 ( 私有组 ) :新建立账户时,若没有指定账户所属的工作组,会建立和账户名相同的组
扩展组 ( 公有组 ) :可以容纳多个用户,组中的账户都具有组所拥有的权利。

账户和工作组的配置文件

用户账号文件     /etc/passwd
用户密码文件     /etc/shadow
工作组账号文件   /etc/group
工作组密码文件    /etc/gshadow

用户账号文件

/etc/passwd 是一个文本文件,用于定义系统的账号,由于所有账户都对 passwd 有读权限,所以该
文件中只定义用户账号,而不保存口令。
[root@server ~]# ll /etc/passwd
-rw-r--r--. 1 root root 2083 4月 26 14:39 /etc/passwd
账号名 : 密码 :UID:GID: 个人资料 : 主目录 :Shell
UID :账户的 ID 值,是一个数字标识,相当于账户的 身份证编号 ,具有唯一性
          root 账户 UID——0
          系统账户的 UID——1 999
          普通账户的 UID—— 1000
          注意:普通账户从 1000 开始编号,连续编号,即使系统管理员某些账户号码未使用,普
通账户也不可使用
GID :基本组的 ID 值,用来区分不同的工作组,相同的组具有相同的 GID
个人资料:注释信息,可以记录账户的完整姓名、地址、办公室电话、家庭电话等个人信息。
家目录:类似 Windows 的个人目录,通常是 /home/ 账户名
Shell :定义用户登录后激活的 Shell ,默认是 Bash Shell

id    查看账户的UIDGID等信息

id 账户名

用户密码文件

/etc/shadow 存储密码加密后的密文 ,该文件为了保证了账户密码的安全性只有 root 账户拥有读权限,注意:若该文件权限发生变化,需要留心恶意攻击
/etc/shadow 文件中的每行 9 个字段的含义为
登录名 : 加密口令 : 最后一次修改时间 : 最小时间间隔 : 最大时间间隔 : 警告时间 : 不活动时间 : 失效时间 : 标志

工作组账号文件

/etc/group 文件存储每个组工作组信息
Groupname     组的名字
Passwd           组的加密口令
GID                 是系统区分不同组的ID ,在 /etc/passwd 域中的 GID 字段是用这个数来指定账户的基本组
Userlist            是用“ 分开的账户名,列出的成员以该组为附加组

用户管理

添加新用户useradd

useradd - 参数 账户名
-c 注释信息:设置相关的说明信息,如 , :真实姓名、邮箱地址等。
-d :目录:设定账户的家目录 ( 默认为 /home/ 用户名 )
-e YYYY-MM-DD :设置用户的失效日期 , 此日期后将不能使用该账号。
-f 天数:指定密码到期后多少天账号被禁用 , 若指定为 0, 则表示账号到期后被立即禁用 ; 若指定 为 -1, 则表示账号过期后不被禁用( 即密码永不过期 )
-g 组名或 GID 号:为账户指定所属的基本组 , 该组在指定时必须已存在。
-G :组名或 GID 号列表:为账户指定所属的扩展组 , 各组在指定时已存在 , 附加组可以有多个 , 组之间用 “,” 分 隔。
-M :不创建账户家目录。
-N :不创建与账户名同名的基本组。
-p :密码:指定账户的登录密码。
-s shell 名:指定账户登录后使用的 Shell, 默认是 bash
-u 用户号:设置账号的 UID, 默认是已有账户的最大 UID 1 。如果同时有 -o 选项 , 则可以重复使用其他用户的标识号

修改账户信息usermod

usermod - 参数 账户名
常用参数 -c,-d,-m,-g,-G,-s,-u , 意义与 useradd 命令中的参数相同
-l 新账户名:更改账户的名称 , 必须在该用户未登录的情况下才能使用
-L :锁定 ( 暂停 ) 用户账户 , 使其不能登录使用
-U :解锁用户账户

账号设置密码passwd

passwd - 参数 账户名
Linux 的账户必须设置密码后,才能登录系统
-d :清空指定用户的口令,与未设置口令的账户不同 , 未设置口令的账户无法登录系统 , 而口令为空的账户可
以。
-e :使用户的账号密码立即过期,强迫用户下次登录时必须修改口令。
-i :口令过期后多少天停用账户。
-l :锁定 ( 停用 ) 用户账户。
-n :指定口令的最短存活期。
-x :指定密码的最长使用期限。
-u :解锁用户账户
密码不能为空
密码不要写成回文
只有 root 用户才能指定用户名
命令设置密码
echo 密码 | passwd --stdin 用户名
echo 密码 | passwd --stdin 用户名 > /dev/null # 无信息提示

删除账号userdel

userdel 账户名
参数
-r :在删除该账户的同时,一并删除该账户对应的家目录

账户切换su

su   账户名

su su - 命令区别
区别:加载的配置文件不一样
su 切换方式加载的文件: ~/.bashrc /etc/bashrc
su - 切换方式加载的文件: /etc/bashrc /etc/profile ~/.bashrc ~/.bash_profile
注意: su - 相当于重新建立环境,若全局变量需要继续使用则不能使用 su - 命令
注意
root 用户切换到任何用户不需要密码验证,而从普通用户到 root 或其他普通用户均需要输入目标
用户的密码且验证成功后才可切换。

控制用户对系统命令的使用权限sudo

作用
使用 sudo 命令可以提高普通用户的操作权限,使用前需要 root 进行配置
sudo 的执行流程如下:
当执行 sudo 提权时,需要输入自己密码来确认( root 执行 sudo 时不需要输入密码)
若密码输入成功,系统会去 /etc/sudoers 文件中查找该用户是否有执行 sudo 的权限
若用户具有执行 sudo 的权限,便开始 sudo 后续接的命令;
配置 /etc/sudoers 文件方式
执行 visudo vim /etc/sudoers
[root@server ~]# vim /etc/sudoers
# 定位100行输入:
fox ALL=(ALL) ALL
# 需要wq!强制保存退出
[root@server ~]# su fox
[fox@server root]$ cd /root
bash: cd: /root: 权限不够
[fox@server root]$ sudo cd /root
[sudo] fox 的密码:
[fox@server root]$ pwd
/root

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/461629.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谷歌被俄罗斯罚款2,500,000,000,000,000,000,000,000,000,000,000,000美元

是的!小鹿没有写错!你们也没有看错! 谷歌被俄罗斯法院判决罚款$2,500,000,000,000,000,000,000,000,000,000,000,000(注意不是卢布,是美元),也就是2.5万亿万亿万亿亿,共计36位数的罚…

Spring Cloud Sleuth(Micrometer Tracing +Zipkin)

分布式链路追踪 分布式链路追踪技术要解决的问题,分布式链路追踪(Distributed Tracing),就是将一次分布式请求还原成调用链路,进行日志记录,性能监控并将一次分布式请求的调用情况集中展示。比如各个服务节…

Vision - 开源视觉分割算法框架 Grounded SAM2 配置与推理 教程 (1)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/143388189 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 Ground…

百度如何打造AI原生研发新范式?

👉点击即可下载《百度AI原生研发新范式实践》资料 2024年10月23-25日,2024 NJSD技术盛典暨第十届NJSD软件开发者大会、第八届IAS互联网架构大会在南京召开。本届大会邀请了工业界和学术界的专家,优秀的工程师和产品经理,以及其它行…

初认识构建工具

初认识构建工具Webpack & Vite 目录 前言webpack 使用步骤配置文件 _entry_output✨_loader_babel_plugin_source map 开发服务器 前言 不同于node中编写代码,在html、css、js中不能放心使用模块化规范,主要是浏览器兼容性问题,以及…

数据结构 ——— 向上调整建堆和向下调整建堆的区别

目录 前言 向下调整算法(默认小堆) 利用向下调整算法对数组建堆 向上调整建堆和向下调整建堆的区别​编辑 向下调整建堆的时间复杂度: 向上调整建堆的时间复杂度: 结论 前言 在上一章讲解到了利用向上调整算法对数组进行…

分享几款开源好用的图片在线编辑,适合做快速应用嵌入

图片生成器是指一种工具或软件,用于自动生成图片或图像内容,通常依据用户设定的参数或模板进行操作。这种工具能够帮助用户快速创建视觉效果丰富的图像,而无需具备专业的设计技能。 在数字化时代,图片编辑已经成为日常工作和生活的…

我为何要用wordpress搭建一个自己的独立博客

我在csdn有一个博客,这个博客是之前学习编程时建立的。 博客有哪些好处呢? 1,可以写自己的遇到的问题和如何解决的步骤 2,心得体会,经验,和踩坑 3,可以转载别人的好的技术知识 4,宝贵…

ts:使用fs内置模块简单读写文件

ts:使用fs内置模块简单读写文件 一、主要内容说明二、例子(一)、fs模块的文件读写1.源码1 (fs模块的文件读写)2.源码1运行效果 三、结语四、定位日期 一、主要内容说明 在ts中,我们可以使用内置的fs模块来…

十个常见的软件测试面试题,拿走不谢

所有面试问题一般建议先总后分的方式来回答,这样可以让面试官感觉逻辑性很强。 1. 自我介绍 之所以让我们自我介绍,其实是面试官想找一些时间来看简历,所以自我介绍不用太长的时间,1-2分 钟即可。 自我介绍一般按以下方式进行介…

C++中关于 <functional> 的使用

#include <functional> 是 C 标准库中的一个头文件&#xff0c;主要用于提供与函数对象、函数指针和函数适配器相关的功能 一&#xff1a;定义方式 1. 定义和使用 std::function 和 Lambda 表达式 2&#xff1a;使用 std::bind 你可以使用 std::bind 来绑定函数参数&am…

Axios 请求超时设置无效的问题及解决方案

文章目录 Axios 请求超时设置无效的问题及解决方案1. 引言2. 理解 Axios 的超时机制2.1 Axios 超时的工作原理2.2 超时错误的处理 3. Axios 请求超时设置无效的常见原因3.1 配置错误或遗漏3.2 超时发生在建立连接之前3.3 使用了不支持的传输协议3.4 代理服务器或中间件干扰3.5 …

WPF+MVVM案例实战(十五)- 实现一个下拉式菜单(上)

文章目录 1 案例效果2、图标资源下载3、功能实现1.文件创建2、菜单原理分析3、一级菜单两种样式实现1、一级菜单无子项样式实现2、一级菜单有子项样式实现 4、总结 1 案例效果 提示 2、图标资源下载 从阿里矢量素材官网下载需要的菜单图片&#xff0c;如下所示&#xff1a; …

【环境搭建】Apache ZooKeeper 3.8.4 Stable

软件环境 Ubuntu 20.04 、OpenJDK 11 OpenJDK 11&#xff08;如果已经安装&#xff0c;可以跳过这一步&#xff09; 安装OpenJDK 11&#xff1a; $ sudo apt-get update$ sudo apt-get install -y openjdk-11-jdk 设置 JAVA_HOME 环境变量&#xff1a; $ sudo gedit ~/.bash…

后台管理系统的通用权限解决方案(九)SpringBoot整合jjwt实现登录认证鉴权

1&#xff09;创建maven工程jjwt-login-demo&#xff0c;并配置其pom.xml文件如下 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-ins…

国考报名照片无法使用照片审核工具上传失败的解决办法

国考报名过程中&#xff0c;照片审核是至关重要的一步&#xff0c;但许多考生在上传照片时遇到了难题&#xff0c;导致无法继续报名&#xff0c;从而影响抢考场位置&#xff0c;下面就介绍如何快速完成照片处理、审核和上传过审的技巧。 一、国考报名照片基本要求首先&#xff…

vue中如何为不同功能设置不同的默认打印设置(设置不同的打印机)

浏览器自带的window.print 功能较简单&#xff0c;这里使用LODOP露肚皮打印 以下是vue2示例&#xff1a; 从官网中下载Lodop和C-Lodop官网主站安装包并安装到本地电脑可以全局搜索电脑找到安装文件LodopFuncs.js&#xff0c;也可以直接复制我贴出来的文件 //用双端口加载主JS…

数据库管理系统的ACID都各自是什么?

本文基于DBMS中ACID属性的概念&#xff0c;这些属性保证了数据库中执行事务时保持数据一致性、完整性和可靠性所。事务是访问并可能修改数据库内容的单一逻辑工作单元。交易使用读写操作访问数据。为了保持数据库的一致性&#xff0c;在事务前后&#xff0c;遵循某些属性。这些…

ssm基于vue搭建的新闻网站+vue

系统包含&#xff1a;源码论文 所用技术&#xff1a;SpringBootVueSSMMybatisMysql 免费提供给大家参考或者学习&#xff0c;获取源码请私聊我 需要定制请私聊 目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 [2 系统…

OB_GINS_day3

这里写目录标题 实现当前状态初始化实现预积分的初始化由于此时preintegration_options 是3&#xff08;也就是考虑odo以及earth rotation&#xff09;为预积分的容器添加需要积分的IMU积分因子接下来是添加新的IMU到preintegration中 实现当前状态初始化 这个state_curr的主要…