Linux学习

一. 计算机硬件知识

1.电源(心脏)

供电设备。断电会导致内存中数据的丢失,所以生产环境中服务器都是使用AB双电源线路。计算机集群中不需要使用双电源。集群:一堆服务器做一件事,一台计算机停止工作影响不大。UPS电源:将交流点进行存储,当断市电断供时,保证主机正常供电,在生产环境也经常应用。

2.主板(骨架)

计算机硬件工作平台,将计算机内所有的部件连接在一起,进行数据传输。主板有个内置的BIOS系统,如果cpu不支持安装虚拟系统要进入到BIOS进行设置以支持安装虚拟系统。

3.cpu(大脑)

中央处理器。是控制核心和运算核心。cup性能的好坏直接决定计算机的档次。

4.内部存储器

内存又分为sdram内存和ddr内存。它的组成部分是芯片与电路板,用来存储外部设备输入的数据,或者从磁盘读取数据。体积小、运行速度快,在开机的时候就帮我们存储数据,比如缓存数据,下载数据等。cpu是直接与从内存中获得数据的。

5.硬盘

外部存储硬件。容量大,读写速度较慢,常见的是移动硬盘。

6.声卡

将计算机的内入声音数字信号转换成模拟信号传给外部播放设备比如音箱,然后发出声音。

7.显卡

可以传输数字、图形,将所有需要显示的信息全部转换成驱动扫描信号,是显示器与主板之间最重要的硬件之一。挖矿也需要显卡。

8.网卡

帮助计算机进行物理连接,有了网卡才可以连接网络。

9.机箱

抗静电,抗碰撞,大空间支持硬件扩展,散热。

二.服务器

服务器侧面图片展示 

1.什么是服务器

服务器就是一台性能强大的主机而已。硬件设备性能更高,安全性更高。在计算机网络中,一台管理资源并为用户服务的计算机。

2.服务器种类

(1)文件服务器:图片、视频、网页文件展示。

(2)数据库服务器:提供数据读写的机器。

(3)应用程序服务器:开发应用程序的运行机器。

Note:服务器的维护通过远程操作,因此对显卡的要求不高,使用主板本身的集成显卡就可以,不需要安装独立显卡。

服务器机房展示

 4.机房托管

(1)企业机房无法提供稳定运行环境。服务器的机房有严格的要求:无尘、无湿、无经典、低温。防止服务器断电造成数据丢失。

(2)企业机房无法保证7*24*365正常运转。

(3)企业机房没有安全防护容易被hack攻击。

(4)企业机房一般都是小区宽带,网速慢。

专业的机房托管可以解决以上问题。

5.云服务器

更加安全,性价比高,按需按时购买服务。可以减少企业对服务器的运维成本。

 三.操作系统(Operating Systerm)

1.操作系统

操作系统是人与计算机进行沟通的桥梁。安装了操作系统的计算机就变成了可以玩耍的硬件了。

用户输入Linux指令ls计算机硬件是不认识的,指令发给翻译官bash解释器(Linux系统自带),翻译成机器码(列出文件中的内容)硬件才能执行。

2.操作系统的作用

是管理和控制计算机硬件和各种软件资源,比如cpu的使用率,检测内存使用情况,系统磁盘剩余空间,我们对系统文件(通过程序员写的文件系统软件)的怎删改查。

3.常见的操作系统

Windows、Linux、dos命令行、Unix(Linux前身)

4.Linux定义

一套开放源代码的支持多用户多任务(运行多个程序)支持多cpu、多线程的类Unix系统。

5.Linux应用

服务器领域、无人机、物流机器人(后两者是嵌入式开发)。Linux是所有IT技能的基础。无论是开发、测试,还是DBA都应该了解Linux系统。

6.Linux的优点

(1)开发源码,自由修改传播。

(2)兼容Unix,继承了Unix的特点且去除了商业化。(Unix是付费的)

(3)移植性高,适用于各类计算机。(服务器、PC、树莓派、嵌入式等)

7.Unix的演变

8.Linux不同的发型版本

-RedHat:付费版本,Linux本身自由传播,但是redHat提供了付费的技术支持,又对系统的维护资格证书比如:RHCSA、RHCE、RHCA。

-Centos:和RedHat有着完全一样的命令的免费试用的Linux系统。 

-Ubantu:桌面试应用、嵌入式。

-suse:数据库领域。

四.虚拟机安装操作系统

1.为什么使用vmware虚拟机安装操作系统。

(1)双系统开机时选定了系统就不能切换了,不方便。

(2)虚拟机可以同时安装Linux、Windows、macos等多个系统(只要配置允许)。

(3)工作中都是通过ssh命令通过网络远程连接服务器进行部署操作,不会真的到机房里。

(4)虚拟机可以非常方便地创建Linux系统,学习集群技术。

(5)虚拟机可以随便操,都不睡影响宿主机,因为虚拟机也是一个软件、虚拟化技术。

2.虚拟机的网络连接模式

(1)桥接模式:虚拟机和宿主机处于同一个局域网段。很多虚拟机都采用这种链接方式的话会产生ip冲突。

(2)NAT:在宿主机的网络环境下再生成一个虚拟局域网,和宿主机不是同一个网段。不会产生ip冲突。

(3)仅主机模式:虚拟机就是单机模式,无法和外界通信。

3.Linux机器的默认7个终端

Ctrl + Alt + F1~F7

4.Linux远程连接

(1)装好Linux之后第一件事就是进行远程连接。Windows用户需要安装xshell远程连接工具(其实也是封装了ssh命令)。

(2)macOS和Linux用户直接使用ssh命令即可。 

(3)远程连接的步骤

A.确认Linux机器的ip地址

ip addr show 查看ens33下的inet就是ip地址了(macros里的虚拟Linux机器)

可以在宿主mac机器使用ifconfig查看本机的ip可以发现两者ip地址的第三组数字是不一样的。 这也证明了我们采用的是NAT链接模式。

B.用xshell工具或者直接用ssh命令远程连接。

a.Windows用以管理员身份首次打开xshell会提示建立会话,这个会话指的就是远程操控Linux的终端。点击新建新建一个会话,为链接取一个名字,协议默认SSH,主机填写要链接的Linux机器的ip,端口号默认22。点击确定、链接,输入root用户名和密码链接成功。

b.macOS直接在终端执行 ssh   root@Linux机器ip地址 就可以链接成功。第一次在mac登录会提示是否要继续登录,yes即可。

#解释

# ssh  Linux远程登录命令

# root 登录的用户

四.Linux命令

1.Linux命令格式

命令   空格  参数(可选)     空格    文件/文件夹(可选)

# 命令:要执行的操作。

# 空格:必须要有,可以一个也可以多个。

# 文件/文件:命令操作的对象。

Note:执行 ls 和执行 ls  . 都是显示当前目录未隐藏的文件。

2.Linux命令提示符

3.Linux核心命令与文件管理

(1)cd 命令  change directory  更改目录

几个特殊的目录:

.  当前工作目录。

..  上一级工作目录。

-   上一次工作目录。

~  当前系统登录用户的家目录。

Note:Linux中意点开头的都是隐藏目录。

(2)ls 命令  list    列出文件夹中的内容。

- a  列出所有文件包含隐藏文件。

- l   列出文件的详细信息。

- lh  h可以有好的列出文件的大小  Note:- lh 参数相当于 -l  -h 参数。 

--full-time  显示与文件相关的时间。

-t   根据最后修改的时间进行排序。

-F  在文件结尾列出代表文件类型的符号(*结尾:可执行文件;@结尾:软连接,就是快捷方式;没有任何符号:普通文件)ls   -lhF

-d  显示文件夹本身信息,不显示其内容。ls   -d  文件夹

-S  大写S,按照文件大小排序。ls   -lhS

-r   reverse   逆转排序。

-i   inode  存储了文件的元信息(大小、位置、权限),相当于文件的身份证号。

(3)pwd 命令   显示当前目录。

(4)su  -  用户名 命令   完全环境变量用户切换。

(5)midir   make directory    创建文件夹  

mkdir  {file1,file2,file3}   一次创建多个文件夹

mkdir  -p ./demo/test.    递归创建文件夹,在当前目录下检查是否存在并创建文件夹demo/test。

mkdir  -p  test{1..100}    创建test1,test2,....test100 连续100个文件。

4.绝对相对路径和touch命令

从根目录开始寻找就是绝对路径,除了觉得路径都是相对路径。

touch 命令两个作用:

(1)创建普通文件,通过touch创建的文件都是普通文件。

(2)修改文件的时间

5.cp  命令

cp   copy

(1)复制普通文件

cp  hello.jpg  ./test/   把hello.jpg 文件复制到目录test。

cp  hello.jpg  ./test/hello1.jpg   把hello.jpg 文件复制到目录test并改名为hello1.jpg。

cp  hello.exe  hello.jpg  ./test1/   把hello.exe和hello.jpg文件同时放到test1目录中。

cp  -r  hello  ./test/   把hello文件夹复制到目录test。加上参数-r是因为hello文件夹中有隐藏的目录.和..不加-r(递归复制:文件夹中有子目录的话就连带子目录一起复制)参数复制会报错。所以复制整个文件夹必须加上-r参数。

cp  -p 复制且保持稳健参数不变(时间也不变)-r的话复制之后时间是不同的。

cp  -d 复制软连接。

cp  -i 复制文件前询问是否要覆盖已有的内容。

6. mv 命令

(1)移动单个文件文件      mv  原文件夹文件夹  目标文件夹

(2)移动多个名称相似的文件和文件夹    mv  test*  目标文件夹     当前目录下所有名称以test开头的文件或者文件夹都被移动到目标文件夹中。

(3)给文件改名字    mv   hello.txt    hollo.txxt  文件hello.txt名称被修改为hello.txxt

(4)覆盖询问   hello.exe 文件已存在,mv   test.txt   hello.exe 询问是否以test.txt文件的内容覆盖hello.exe中文件的内容。

7.rm 命令

(1)删除单个文件  rm  文件名 (默认使用-i参数)

(2)删除多个文件 rm 文件1 文件2 (默认使用-i参数)

(3)删除文件夹要加 -r 参数,递归删除目录及内容。recurse

(4)-d 参数只能删除空文件夹。

(5)-f 强制删除文件。使用这个参数时一定要小心 例如 rm  -f  -r ./*  强制递归删除当前目录下的所有内容。

注意!!!

rm  -f  ./  删除当前目录下的所有内容。

rm  -f  /   删除根目录下的所有内容!!!(删库跑路!!!)严禁使用该命令!!!

(6)-v显示删除过程。

7.Linux帮助命令

man 命令

info 命令

命令 help

8.Linux关机/重启命令

shutdown -r 10 十分钟后重启

shutdown -r 0 或者 shutdown -r now 或者 reboot  立即重启

shutdown -h 10 十分钟后关机

shutdown -h 0 或者 shutdown -h 或者 poweroff 或者 halt  立即关机

8.Linux常用快捷键

(1)ctrl + c 终止当前操作

(2)ctrl + l 清屏 相当于执行 clear

(3)ctrl + d 退出当前用户相当于执行 logout

(4)ctrl + a 光标移动到首行

(5)ctrl + e 光标移动到尾行

(6)ctrl + u 删除光标到行首的内容

Note:查看Linux的环境变量 echo $PATH 我们发现Linux系统中各环境变量之间的分隔符是冒号,而在Windows中是分号。

9.Linux常用编辑器

vi 是所有类Linux系统内置了的编辑命令。相当于Windows的 Notepad。功能较少

vim 是基于vi 开发的命令,功能强大。相当于Windows的Notepad++

(1)vim 文件名   打开一个文件。如果文件不存在,就创建这个文件。

(2)打开文件后输入i,进入insert模式在光标所在行开始编辑文件。输入o,在光标下一行开始编辑。

(3)编辑文件后按esc回到命令模式,输入冒号进入底线命令模式,再紧接着输入wq!(强制写入并退出)

(4)cat 文件名 查看刚才写入的文件内容。

10.vim 常用快捷键 (命令模式下,非insert模式)

h:向左        j:向下      k:向上      l:向右

w:光标移动到下一个单词。       b:光标移动到上一个单词。

0:光标移动到行首。       $:光标移动到行尾。

g:光标移动到整个文本的首行。  G:光标移动到整个文本的尾行。

h:光标移动到屏幕的首行。    H:光标移动到屏幕的尾行。     M:移动到屏幕的中间行。

向下查找:命令模式按下g回到文本开头,然后按下 / 进入查找模式,输入查找的内容可以列出所有的被查找内容,按 n(next)光标检索每个内容。

 向上查找:按下大写G到文本结尾,按下  ?要查找的内容。

yy:复制一行    3 yy:复制3行。p:答应复制的行(粘贴)

dd:删除所在行。

D:删除光标所在位置到行尾的内容。

x:从光标位置开始向后逐个删除。  X:从光标位置向前逐个删除。

u:撤销操作。

ZZ:insert模式编辑完后,按Esc,命令模式下,按ZZ快速保存退出。

11.重定向命令

cat  file1  >  file2   file1 的文件内容重定向覆盖到file2

cat  file1  >>  file2   file1 的文件内容重定向追加到file2

cat  <  file  写入文件内容

xargs  -n   3   <    file   每三个元素一行写入文件  

cat  >>   file    <<EOF   回车  写入文件内容   EOF   回车         非交互式地编辑或追加文件内容

  

 cat   file1    file2    >   file3    合并多个文件内容,写入到新的文件中

echo   >    file     直接清空文件内容,但是留下了一个空行。

>   file   只用一个重定向符号清楚文件内容且不会留下空行。

cat    /dev/null   >   file      读取dev目录下的null文件写入到目标文件从而清空文件内容。

tac 命令 与 cat 命令 查看文件的行的顺序刚好相反

cat     file    |    grep    "xxx"     利用管道符读取特有文件内容。 grep # 过滤字符串

  more   命令 (less命令与more命令用法相似)

more    file      分屏显示文件内容

回车 # 显示下一行

空格 # 显示下一屏

=  # 显示行号

q  # 退出 more 命令

head   -5  file   # 查看文件的前5行(不加参数默认显示10行)。

-c   # 指定字符数量,显示字符数。

tail 命令的用法与head相似。

tail   -f    file   # 实时刷新文件内容变化。 可以监测线上日志。 

12.sort 命令

sort   -n   file  对文件按照数字大小从小到大排序

sort   -nr  file    对文件按照数字大小从大到小排序

sort   -u   file   对文件去重病排序

sort   -n  -t  "."  -k  4 file  对文件以指定分隔符“.”分隔以第4个区域的数据进行排序

13.uniq 命令与 sort命令结合使用

 # uniq 只能够对连续的重复元素去重

# sort 命令 结合 -n 参数排序,再利用管道符 传给 uniq 命令可以完全去重

# 再加上 -c 参数可以统计重复的个数

用 -d 参数只读取重复的行

用 -u 参数只读取出现一次的行 

14.wc 命令 

-c # 打印字节数

-m # 打印字符数

-l #打印行数

-L #打印最长行的长度

-w #打印单词数

 cat 命令加 -E 参数可以展示每一行文本末尾隐藏的$符

15.tr 命令

从标准输入中替换、缩减或删除字符,将结果写入到标准输出。

# 替换标准输入中的大小写  Note:[ ] 可以表示一个范围

# 使用 -d 删除标准输入中的特定内容

# 使用 -s 指定去掉多个重复字符

16. stat 命令

 比 ls 更详细的查看文件的信息

17. find 命令

查找文件

-maxdepth  # 最大搜索层级

-mindepth  # 最小搜索层级

-atime  # 按访问时间

-mtime  # 按修改时间

-ctime  # 按更改时间

-name  # 按名称,支持* ? [] 通配符

-group  # 按文件所属组

-perm  # 按问价权限

-size  # 按文件大小

-type  # 按文件类型

        -b  # 块设备文件

        -d  # 目录

        -c  # 字符设备文件

        -p  # 管道文件

        -l  # 符号连接文件

        -f  # 普通文件

        -s  # socket 文件

        -prune  # 排除某个目录,不在这个目录中找

        -delete  # 删除找到的文件

        -exec 或 -ok  # 在找到文件后执行相关的 shell 命令

        -print  # 将找到的结果标准输入

        !  # 取反

        -a  和  -o # 对结果取交集、并集

 

 

 

# -2 参数查找两天以内被访问的文件

# 2 参数查找正好两天前被访问的文件

# +2 参数查找访问时间超过两天的文件

 find  .  -path  "./hello"  -prune  -o  -name  "*txt"  -print

# 查找当前目录下排除hello文件夹,剩下的文件夹中的名字中含txt的文件并取并集后打印输出。

# 管道 将echo执行的结果传给xargs命令,-d参数指定分隔符,-n指定每行最多显示的个数。 

 # 将ip.txt文件内容重定向到xargs命令展示。也可以用-n指定每行展示的个数

 # xargs 命令的-i 参数和 {} 组合代表查到结果。然后再通过管道符执行其他操作。如:我们新两个文件file1和file2,然后把它们查询出来并移动到指定的文件夹下。

 五.文件属性介绍

1.Linux中的文件扩展名只是为了方便阅读,对文件类型没有影响。

2.通过 echo touch cp cat 命令或者重定向符号 > 都可以生成普通文件。执行 ll 命令,发现以 . 或者 - 开头的文件,它们都是普通文件。

我们可以看到时可以正常cat 文件happy.jpg 中的文本的。这里证实了文件后缀没有任何意义。那么为了规范期间我们还是用mv命令把文件命名为文本类型的 

 3.文件已内容区分可分为纯文本文件和二进制文件

纯文本文件:可以用cat查看。

二进制文件:Linux中的所有命令都是二进制文件。如 ls cat等我们找到这个ls文件看一下这个 ls 一下这个文件的详细信息。

 当我们cat ls 这个文件的时候就会乱吗,因为它是二进制文件,不是纯文本文件,cat到的是二进制数据,只有机器可以识别。

4.文件夹

(1)文件权限开头带有d字符的文件表示文件夹,是一种特殊的Linux文件。

(2)mkdir    或者 cp  sourcefile   objectfile  两种方式新建文件夹。

5.软连接(类似于Windows中的快捷方式)

语法:ls -s 被设置软连接的文件  软连接文件

6. file 命令

file 可以查看文件的类型的详细描述

Note:readlink 查看软连接到哪个文件。

7.压缩打包命令

(1)which 查看命令的文件位置,whereis 查看命令的man帮助手册等信息

(2)tar 命令对Linux命令进行打包、压缩、解压

打包: 将一大堆文件或目录汇总成一个整体。

压缩:将大文件压缩成小文件,节省磁盘空间。

tar 语法:tar  参数  压缩后的文件名   要压缩的内容

打包hello目录下所有内容到allhello.tar中,-cvf 显示打包的过程。

将allhello.tar移动到上一级目录并删除hello目录中的所有内容

将上一级目录中的allhello.tar解包恢复到hello目录中,-xvf显示解包的过程。

将hello目录下所有的文件打包并压缩,以节省磁盘空间。

将打包并压缩的文件移动到上一级目录。

删除当前目录也就是hello目录下的所有内容,再通过上一级的allhello1.tar.gz打包压缩文件将删除的所有内容解压恢复到当前目录。

 参数 -ztvf 和 -tvf 分别查看打包并压缩的文件和仅打包的文件里有哪些内容。t查看内容,v显示过程f指定文件,z压缩文件类型。

 还可以单独解压出来某个文件,比如file1

 还可以使用-C参数解包或者解压到指定的目录中

--exclude 参数指定排除不解压某个指定的文件

 (3)gzip  filename   对文件进行压缩

Note:gzip 不能对文件夹直接压缩,必须先对文件夹tar后才能压缩。-l 参数可以查看压缩率。

(3)unzip 命令对用zip命令压缩的文件进行解压。

 

 验证一下解压成功:

六.Linux里习题

1.Linux的命令格式是什么? # 命令  参数  文件对象 

ls  -l  /       # 显示根目录的详细信息

ls  -l  -h  /        #显示根目录下文件的详细信息,并且将文件大小以kb等单位显示

 2.Linux必须添加参数才能之行吗? #不是。如ls

3.如何用Linux命令解析命令提示符?

(1)whoami     # 用户名

(2)@  #占位符

(3)hostname  # 主机名

(4)空格 # 就是普通的空格

(5)demo3  # 用户的家目录

(6)#号 # 代表超级用户(root)切换到普通用户则显示$

 上面的su命令不加参数我们发现用户切换了,但是工作目录始终是demo3。我们可以在su命令后面加上一个“-”就可以切换到对应用户的家目录。我们可以看到root用户的家目录就是root,普通用户的家目录是/home/username

Note: 快速切换到当前用户的家目录:cd ~

 4.Linux的目录分隔符是什么? #  是正斜杠  /  如果/在开头表示根目录,除此之外都是目录分隔符。

5.简述Linux的目录结构。

以根目录 / 为父节点的倒立的树 / 又有如下等目录:

/root

/home

/tmp

/usr

通过执行下面的操作,我们可以看到根目录 / 只有一个。普通用户是无法访问root用户的家目录/root的

 但是超级用户root是可以访问普通用户的家目录的

 6.如何切换到上一级目录?  # cd ..

Note:

.  当前目录

..  上一级目录

-  上一次目录

~  家目录

7.如何查看当前工作目录?  # pwd

8.当前目录是/home,请以绝对相对两种方式进入opt目录

以根目录 / 开头的就是绝对路径,其他的都是相对路径。./test 和 test,Linux认为是相同的相对路径。

所以这个题是这样的:

cd  ../opt   # 在home目录下,以相对路径切换到根目录下的opt目录

cd  /opt     # 在home目录下,以绝对路径切换到根目录下的opt目录

 11.如何列出/opt目录下所有文件及其详细信息,包括隐藏文件?

ls  -a  -l  /opt     或者   ls  -al  /opt

12.如何创建Test.java脚本文件?

Linux后缀没有意义,但是.java也是文本文件所以用touch命令

13.创建file1.text file2.text .... fiel10.test连续10个文件 

touch  file{1..10}.txt 

 14.如何将文件名 abc.text 改为 cba.txt      # mv  移动/重命名文件

mv  abc.txt  cba.txt

 15.如何强制删除/tmp下所有的内容?

rm  -rf   /tmp/*    # 如果不加*就会把tmp文件夹也删掉

16. root用户/root执行ls只显示 anacanda 文件,而不是正常显示/root下的其他文件夹是为什么?如何解决?

执行 cd /  即可。

 17.如何查看ls命令的使用方法?

(1)ls  --help

(2)info  ls

(3)man  ls

18.如何永久设置Linux的环境变量?

(1)echo  $PATH   #环境变量以:分隔。

(2)用 vim 命令打开/etc/profile 文件,编辑如下内容,然后保存退出:PATH="新的环境变量"

(3)source  /etc/profile  #使文件生效。

19.Linux常见的配置文件目录有哪些?

/etc/profile  # 环境变量

/etc/nginx.conf  # web服务器配置文件

/etc/my.cnf  # mysql配置文件

20. vim三种模式是什么?执行的流程是什么?

(1)vim  filename 打开文件,此时为命令模式。

(2)命令模式下输入a(在光标往后的一个位置开始编辑)、i(在光标当前位置开始编辑)、o(在光标下一行开始编辑)都可以进入编辑模式。编辑内容和code。

(3)按esc退出标记模式,然后按:wq写入退出。或者:wq!强制写入退出。q!不写入强制退出。

21.如何查看文件且显示行号?

cat  -n  filename

 22.如何清空文件内容?

(1)echo "xxx"  >>  filename   # 将xxx追加到原有的内容后面

(2)echo "xxx"  >  filename  # 空格输入到文件覆盖原有内容。

(3)>  filename    # 清空文件内容。

23.显示文件前10行。

head  -n  10  filename

24.显示文件后30行 

tail  -n  10  filename

 wumingyuan # 用户名

x # 用户的加密密码 (存储在 /etc/shadow目录中)

1000 # UID 用户id。

1000 # GID 组id。

三个点 # 用户注释。

/home/wumingyuan # 用户家目录。

/bin/bash # 用户使用的解释器,代表可以登录机器,进行命令翻译如果是/sbin/nologin表示禁止登录机器。

25.从文件结尾开始读读取文件,并时时刷新文件内容。

tail  -f  filename  # 常用在监测日志变化。

七.用户管理

1. useradd  新用户名     # 添加新用户

2. ip  用户名   # 查看用户uid gid 信息。新建的组在/etc/group下

3. usermod  # 修改用户信息

4. userdel  # 删除用户相关文件

5. passwd 用户名  # 修改用户密码

6. chpasswd 回车  用户名1: 密码1  用户名2: 密码2  # 一次修改多个用户密码

Note:root用户切换到普通用户不需要输入密码,除此之外都需要输入密码。

7. w  # 插看登录服务器的用户

8. last  # 用户登录信息

9. last log # 显示用户更加详细的登录信息

10. su 命令不加 - 切换用户后,环境并没有切换:

  我们可以看到用户名虽然改变了,但邮箱和密码还是root用户的。此时退出也必须用exit。因此使用su命令时,必须要加 -。

11. 为普通用户配置执行sudo命令的权限。

(1)root下执行visudo打开Sudoers文件

(2)输入/root回车,查找与root相关的内容,输入n(next)找到 root  All=(ALL)   All 行,光标停在此行输入yy复制本行。

(3)输入p粘贴到下一行,输入i进入insert模式,然后将root修改为需要配置的用户名,保存退出。

(4)然后我们以普通用户roy执行cat命令时前面加上sudo就可以访问root家目录下的内容了。而没有配置过sudo权限的普通用户是不可以访问这个目录的。

 没有配置Sudoers文件的普通用户无法用sudo执行命令。

 因此,可以看到root用户去配置Sudoers文件,可以给普通用户临时加授权使其可以利用sudo执行命令,获得访问root的家目录的权限。

八. 正则表达式

eg: 利用sed命令打印出IP地址

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值