Linux学习第二天基本操作命令

安装VmWare注意事项

1.是否启动虚拟化服务

2.安装之后是否出现虚拟网卡

虚拟化服务禁用如何开启

win10系统->更新和安全->恢复->高级启动->疑难解答->高级选项->UEFI 固件启动->(有的电脑直接进入BOIS命令,有的电脑需要手动选择BOIS)->虚拟化服务->开启->保存退出

安装之后没有出现虚拟网卡

1.卸载重装

2.下载CCleanr软件,扫描清理注册表

安装Linux之后VMnet8网络不匹配

还原默认设置

Linux网络配置

ip地址:保证和DOS窗口中VMnet8Ipv4前三部分保持一致,最后一部分在11-254之间

子网掩码:255.255.255.0

网关:保证和DOS窗口中VMnet8Ipv4前三部分保持一致,最后一部分为2

DNS服务器:8.8.8.8或144.114.114.114

linux目录结构

bin:存储普通命令

sbin:存储超级命令

home:存储普通用户

root:存储超级用户

usr /usr/local:下存储数据或软件

tmp:临时目录 迎来存放临时数据

常用命令

ifconfig:查看网络

service network restart:重启网络

hostname:查看主机名

hostnamectl set-hostname 主机名:永久修改主机名

systemctl status firewalld.service:查看防火墙状态

systemctl stop firewalld.service:关闭防火墙状态(重启后自动打开)

systemctl disable firewalld.service:关闭防火墙开机自启

常用命令

man:帮组命令查询当前命令的使用方式(打开当前命令的帮组手册)

格式:

man 命令

cd:切换目录

格式:

cd 目录名称(单极目录或多级目录(目录全路径或当前目录下开始的全路径))

注意:

/:linux根目录

~:当前用户的家目录

.:当前命令

..:上一级目录

tab:一次补全 两次搜索

ls:查看

格式:

ls [选项] [文件名]

选项:

-l:查看详细信息 可以简写为ll

-a:查看所有

-la:查看所有详细信息

mkdir:创建目录

格式:

mkdir [选项] [目录名称....]

选项:

-p:迭代创建

rmdir:删除目录

格式:

格式:

mkdir [选项] [目录名称....]

选项:

-p:迭代删除

注意:

只能删除空目录

多级目录只能删除最后一个

touch:创建空白文件

格式:

touch 文件名

注意:

只能创建空白文件

如果文件已存在,不创建

rm:删除

格式:

rm [选项] [文件或目录]

选项:

-f:跳过提示信息

-r:强制删除

-rf:跳过提示信息强制删除

注意:

使用-rf注意注意注意再注意

cp:复制

格式:

cp [选项] [源文件或目录路径] [新文件或目录路径]

选项:

-r:复制目录

注意:

复制过程中可以对名称做修改没有特殊需求不要修改

mv:剪切 移动

格式:

cp [选项] [源文件或目录路径] [新文件或目录路径]

注意:

剪切过程中可以对名称做修改,没有特殊需求不要修改

vim:文本编辑器

格式:

vim 文件名

注意:

文件存在直接打开

文件不存在也直接打开,保存就是创建 不保存就是不创建

如何保存和退出

:q :退出

:w :保存

:wq :保存并退出

:q! :强制退出 不保存

:w! :强制保存

:wq! :强制保存并退出

注意:

vim因为意外终止,会产生交换文件(隐藏的),和源文件在同一级

如何进入编辑模式:

i:在当前光标,进入插入模式

o:下一行进入插入模式

如何进行行首行尾,开头末尾切换

行首:home/0

行尾:end/$

开头:gg/(

结尾:G /)

关闭networkmanage服务

systemctl status NetworkManager #查看NetworkManager状态

systemctl stop NetworkManager #停止NetworkManager

systemctl disable NetworkManager#禁止NetworkManager开机启动

修改ip地址

vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet

PROXY_METHOD=none

BROWSER_ONLY=no

BOOTPROTO=none

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

NAME=ens33

DEVICE=ens33

ONBOOT=yes

IPADDR=192.168.129.211

NETMASK=255.255.255.0

GATEWAY=192.168.129.2

DNS1=114.114.114.114

修改启动级别

systemctl get-default #获取默认启动级别

systemctl set-default multi-user.target #修改启动级别为文本

映射关系:ip地址和主机名或者域名之间的对应关系

windows:映射文件在C:\Windows\System32\drivers\etc\hosts

在文件中新加

格式:

linuxIP地址 主机名

例如:

192.186.64.110 master

linux:映射文件在/etc/hosts

在文件中新加

格式:

linuxIP地址 主机名

例如:

192.186.64.110 master

1、用户组管理

  用户组的管理包括用户组的添加、删除和修改。 ​   为什么要建立用户组 ​   人事部有20名员工,我们要建立一个组,叫 hr,这样就不用分别给20个员工设置权限了。

① 用户组添加

命令:groupadd

作用:添加组

语法:# groupadd [参数选项 选项值] 用户组名

选项:-g:设置用户组ID 数字,如果不指定,则默认从1000 之后递增(1-999系统组)

用法一:groupadd 组名 示例代码: #groupadd hr 含义:新建一个组叫做hr

提示:linux下我们执行完命令,有时候会没有任何提示,直接回到#提示符,这种状态表明,命令执行成功,没有报错。==“没有消息就是最好的消息”==

存储用户组信息的文件:/etc/group 使用cat命令,查看/etc/group文件

/etc/group文件结构:

特别说明:

1) 密码位x代表占位符,用户组可以设置密码,但是大部分情况下不需要设置

2)组内用户名:表示附加组是该组的用户名称。

② 用户组修改

命令:groupmod

语法:# groupmod [选项 选项值] 用户组名

选项:-g :gid缩写,设置一个自定义的用户组ID 数字

  -n :name缩写,设置新的用户组的名称

示例代码:修改hr用户组,将组ID改成1100,将名称改为bjhr

用法一:groupmod -g 新的组ID -n 新的组ID 原有组ID 示例代码: #groupmod -g 1100 -n bjhr hr 含义:将hr组的组ID改成1100,组名改成bjhr

③ 用户组删除

命令:groupdel

语法:# groupdel 用户组名

案例:删除bjhr组

用法一:groupdel 组名 示例代码: #groupdel bjhr 含义:将bjhr组删除

2、用户管理

用户的管理涉及用户的添加、删除和修改。

与用户相关的文件:/etc/passwd

①useradd添加用户

命令:useradd

作用:添加用户

语法:# useradd [选项 选项的值] … 用户名

选项:-g:表示指定用户的用户主(主要)组,选项值可以是用户组ID,也可以是组名

  -G:表示指定用户的用户附加(额外)组,选项值可以是用户组ID,也可以是组名 ​   -u :uid,用户的id(用户的标识符),系统默认会从500 /或1000之后按顺序分配uid,如果不想使用系统分配的,可以通过该选项自定义【类似于腾讯QQ 的自选靓号情况】 ​   -c:comment,添加注释(选择是否添加) ​   -s:指定用户登入后所使用的shell 解释器,默认/bin/bash【专门的接待员】,如果不想让其登录,则可以设置为/sbin/nologin   (重要) ​   -d:指定用户登入时的启始目录(家目录位置) ​       -n:取消建立以用户名称为名的群组(了解) ​    当我新建一个账户叫user01, 同时,系统会自动建立一个组也叫user01

用法一:useradd 用户名 示例代码: #useradd zhangsan 含义:创建用户zhangsan,不带任何选项。

注意:不用任何参数,创建用户,系统会默认执行以下操作:

1)在 /etc/passwd 文件中创建一行关于zhangsan用户的数据 2)在 /etc/shadow 文件中新增了一行关于zhangsan 密码的数据 3)在 /etc/group 文件中创建一行与用户名相同的组,例如zhangsan 4)在 /etc/gshadow 文件中新增一行与新增群组相关的密码信息,例如zhangsan 5)自动创建用户的家目录,默认在/home下,与用户名同名

验证是否成功:

1)使用tail文件查看/etc/passwd文件

2)使用tail文件查看/etc/group文件

3)验证是否存在家目录(在Centos 下创建好用户之后随之产生一个同名家目录)

②etc/passwd存储用户信息的文件

使用vim命令打开/etc/passwd文件,如下图所示:

root : x : 0 : 0 : root : /root : /bin/bash 用户名 : 密码 : 用户ID : 用户组ID : 注释 : 家目录 : 解释器shell

用户名:登录linux时使用的用户名 密码:此密码位置一般情况都是"x",表示密码的占位,真实密码存储在/etc/shadow 用户ID:用户的识别符,每个用户都有唯一的UID【-u】 用户组ID:该用户所属的主组ID;【-g】

注释:解释该用户是做什么用的;【-c】 家目录:用户登录进入系统之后默认的位置;【-d】 解释器shell:等待用户进入系统之后,用户输入指令之后,该解释器会收集用户输入的指令,转换成机器语言,传递给内核处理;如果解释器是==/bin/bash 表示用户可以登录到系统==,==/sbin/nologin表示该用户不能登录到系统==【-s】

下面我们来看一下对于useradd参数的使用

企业场景1:

公司新员工lisi,属于shujia部门,用户ID1200,不允许登录系统 创建用户lisi,默认lisi属于自己同名的主组,让lisi 属于附加组gzhr,用户ID 1200,注释为"hruser lisi",解释器为/sbin/nologin

用法二:useradd -G 附加组名 -u 用户ID -s /sbin/nologin -c "shuser lisi" 用户名 示例代码: #useradd -G gzhr -u 1200 -s /sbin/nologin -c "gzuser lisi" lisi 含义:创建用户lisi,不带任何选项。

gzhr行的含义:在gzhr的组里(组id 是1002)有一个组内用户lisi(lisi 的附加组就是1002,附加组的名字是gzhr)。 如果需要为一个用户指定多个附加组,只需要将多个附加组的id 通过英文逗号“,”分割即可。 例如-G 500,501,502 ​ ① 主组只能有1 个(类似于亲生父母只有一对),附加组可以多个,也可以没有附加组(类似于认干爹干妈,可以有也可以没有,也可以有多个) ② 主组必须有 ③ 后期将权限管理的时候,关于文档的属组指的是主组(了解)

③id查看用户信息

命令:id

作用:查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…),该指令如果不指定用户则默认当前用户。

语法1:# id 默认显示当前执行该命令的用户的基本信息

语法2:# id 用户名, 显示指定用户的基本信息

如何验证以上信息是否正确?

==答:验证用户信息:通过文件/etc/passwd,验证用户组信息:通过文件/etc/group==

④usermod修改用户

命令:usermod(user modify)

语法:# usermod [选项 选项的值] … 用户名

作用:修改用户的各种属性

选项:-g:表示指定用户的用户主组,选项的值可以是用户组的ID,也可以是组名

  -G:表示指定用户的用户附加组,选项的值可以是用户组的ID,也可以是组名 ​   -u:uid,用户的id(用户的标识符),系统默认会从500 之后按顺序分配uid,如果不想使用系统分配的,可以通过该选项自定义【类似于腾讯QQ 的自选靓号情况】 ​   -L:锁定用户,锁定后用户无法登陆系统lock ​       -U:解锁用户unlock ​   -c<备注>:修改用户帐号的备注文字 ​   -d<登入目录>:修改用户登入时的目录 ​   -s<shell>:修改用户登入后所使用的shell

企业场景2:

公司员工wangwu,属于shhr部门,现在要休产假,产假期间,暂时停止她登陆电脑的权限,同时原来属于gzhr部门的员工lisi,负责wangwu的工作,所以,需要把lisi加入到shhr的组,同时,修改lisi的账户注释为“gzhr shhr user” 对于wangwu用户,我们要执行锁定和解锁操作 对于lisi用户,我们要将lisi加入到shhr的附加组,同时修改lisi账户的注释

用法一:usermod -L 王五账户名 示例代码: #usermod -L wangwu 含义:将王五账户暂时锁定 ​ 用法二:usermod -U 王五账户名 示例代码: #usermod -U wangwu 含义:将王五账户解锁

用法三:usermod -G 组名 -c “注释内容” 李四用户账号 示例代码: #usermod -G shhr -c "shhr user" lisi 含义:将李四的账户加入shhr组,并修改注释内容为shhr user

⑤passwd修改用户密码

  Linux ==不允许没有密码的用户登录到系统==,因此前面创建的用户目前都处于锁定状态,需要设置密码之后才能登录计算机。

命令:passwd

语法:# passwd 用户名 【如果不指定用户名则修改自己的密码】

作用:修改用户密码 企业场景3:

  王五产假休完回到公司上班,需要将王五的账户解锁,在使用usermod -U解锁时,我们看到一个错误信息如下:

usermod: unlocking the user's password would result in a passwordless account.

解锁这个账户,将导致一个没有密码的账户,因为之前王五的账户没有密码。这时候,我们就需要使用passwd命令,给王五的账户设置一个密码

用法一:passwd 账户名 示例代码: #passwd wangwu 含义:为wangwu账户设置密码 注意:   当密码过于简单时,系统会提示这是一个不好的密码,因为它太简单了,但是我们仍然可以坚持使用这个密码。   在我们输入密码时,屏幕不会有任何显示。   密码需要输入两次,请确保两次输入的密码是一样的。

示例代码:设置wangwu的用户密码

⑥认识/etc/shadow文件

  由于 /etc/passwd文件允许所有用户读取,易导致用户密码泄露,因此 Linux 系统将用户的密码信息从 /etc/passwd 文件中分离出来,并单独放到了shadow文件中。 ​   /etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。  

与用户密码相关的文件:/etc/shadow

为用户设置密码之后,会自动在/etc/shadow文件中进行体现,使用vim编辑器打开

第一列为用户名,例如zhangsan

后面是加密后的密码,就是$开头的字符串

如果显示为!!,则表示这个用户==没有==设置密码。

由以上截图所知,zhangsan,lisi是没有设置密码的。wangwu我们刚刚设置了密码,所以显示为一个加密的字符创

任务:新建一个账户叫ityunwei

  新建第二个账户叫shichang ​   给ityunwei账户设置一个密码 ​   进入shadow文件,观察两个账户的区别

⑦su切换用户

  在设置用户密码之后就可以使用此账号进行登录系统了,如果系统处于已登录状态,则可以使用su命令进行切换用户。 ​   为了系统安全,企业中通常不会允许root用户直接登录计算机,但是工作需要,我们又需要使用root权限,这时候,我们就可以先使用一个普通用户登录计算机,再通过su命令切换到root权限。

命令:su

语法:# su [-] 账号

作用:切换用户

用法一:su 用户名 示例代码: #su root 含义:切换到root权限 ​ 注意: a. 从root 往普通用户切换不需要密码,但是反之则需要root 密码; b. 切换用户之后前后的工作路径是不变的,添加了选项[-]会自动切换到用户的家; c. 普通用户没有办法访问root 用户家目录,但是反之则可以;

启用wheel组设置(了解)

步骤1:使用vim编辑器 打开/etc/pam.d/su文件

步骤2:编辑文件,去掉auth required pam_wheel.so use_uid这一行前面的#,使这一行配置生效

步骤3:下面是去掉#后的状态

步骤4:保存退出 :wq 这时,只有在wheel组内的用户才可以su到root ⑧userdel删除用户 命令:userdel

语法:# userdel 选项 用户名

作用:删除账户及其对应家目录

选项:-r:表示删除用户的同时,删除其家目录/home下的对应文件夹

注意:已经登录的wangwu用户删除的时候提示删除失败,但是没有登录的lisi 用户可以正常删除,那这个时候想删除wangwu怎么办呢?

解决办法:简单粗暴,kill 对应用户的全部进程

提示:所有跟用户操作的命令(除passwd 外,只能修改自己的密码,即不指定用户名)只

有root 超级管理员有权限执行。

备注:也可以在登录需要删除的用户之后,按下快捷键“ctrl+d”进行对当前用户的注销,随后退回到上一个用户(root)此时就可以对需要删除的用户进行删除操作。

删除账号=>删除家=>删除所属组(主组)

权限: 通过ll查看详细信息时:-rw-r--r--. 1 root root 181 3月 15 15:34 test.txt -:表示类型 rw-:当前用户权限 r--:当前用户组权限 r--:其他用户权限

r:读 w:写 x:执行 ​ u:当前用户 g:当前组 o:其他 a:所有

权限分配 chmod:修改权限 格式1:(使用相加减表达权限) chmod [选项] [权限修改] [文件] 格式2:(使用数字表达权限) chmod [选项] [权限修改] [文件] 4:读 2:写 1:执行 7:全部 注意:如果只给一个数字表示修改o,两个表示修改go 选项: -R:迭代修改

chgrp:修改用户组 格式: chgrp [选项] [组名] [文件或目录] 选项: -R:表达迭代修改 注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组 如果不存在就显示编号,存在显示名称 ​ chown:修改所属用户 格式: chown [选项] [组名] [文件或目录] 选项: -R:表达迭代修改 ​ sudo:越权执行 格式: sudo 命令 注意:sudo实际上去借root权限执行命令(root对普通用户分配了权限) ​ sudo -l:查看当前权限 ​ visudo:修改配置文件进行权限分配(文件所在位置/etc/sudoers) 例如:普通用户拥有root所有权限 用户名 ALL=(ALL) ALL 用户名 ALL=(root) ALL 例如:普通用户只能执行一个命令 用户名 ALL=(root)/bin/rm ​ 可以同过vim /etc/sudoers修改权限分配

查找 find 格式: find 开始查找路径 [选项] [条件] 选项: -name 表示匹配所有 ?表示匹配一个 例如:从/开始查找后缀为.txt find / -name ".txt" -type d:表示目录 f:表示文件 例如:从/开始查找文件 find / -type f -size ll --block-size=单位 例如:大小以k为单位进行显示 ll --block-size=k 注意:条件需要给上单位 +表示大于 -表示小于 不给就是等于 例如:从/开始查找文件大小大于2k find / -size +2k -user -group Linux常见符号 |:管道,把前面一部分的内容交给后面去处理 例如: cat /etc/profile | more

grep:筛选 格式: grep 筛选条件 >>:追加,把命令1的结果写入到命令2 格式: 命令1 >> 命令2 例如:cat profile >> test.txt >:覆盖 格式: 命令1 > 命令2 例如:cat profile > test.txt

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值