认知root用户:
Windows、MacOS、Linux均是采用多用户的管理模式进行权限管理。
- 在Linux系统中,拥有最大权限的账户名为:root(超级管理员)
- 而在前期,一直使用的账户是普通的用户
root用户:
root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。
- 普通用户的权限,一般在其HOME目录内的不受限
- 一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限
su(切换账户):
su就是用于账户切换的系统命令。
语法:
su [-] [用户名]
- - 符号是可选的,表示是否在切换用户后加载环境变量
- 参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root
- 切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl + d
- 使用普通用户,切换到其他用户需要输入密码,如切换到root
- 使用root切换到其他用户,无需密码,可以直接切换
sudo(为普通的命令授权临时root):
语法:
sudo 其它命令
- 在其它命令之前,带上sudo,为普通的命令授权,临时以root身份执行。
- 但是并不是所有的用户,都又权利使用sudo,需要为普通用户配置sudo认证
为普通用户配置sudo认证:
- 切换到root,执行sudo命令,会自动通过vi编译器打开:/etc/sudoers
- 文件的最后添加:
- 其中的NOPASSWD:ALL 表示使用sudo,无需输入密码
- 最后通过 wq 保存
- 切换回普通用户
- 执行的命令,均以root运行
- 切换用户,”临时“借调权限相关命令
su 用户名 # 切换用户, 来源于: switch user, # root -> 其它, 无需密码, 否则: 需要密码. sudo Linux命令 # 临时借调权限, Linux会检查 /etc/sudoerrs文件, # 如果没有权限, 则会记录该行为到日志. 如果有权限, 则可以执行执行该命令. # 临时借调权限, 默认持续时间: 5分钟.Linux系统中可以:
- 配置多个用户
- 配置多个用户组
- 用户可以加入多个用户组中
Linux中关于权限的管控级别有2个级别:
- 针对用户的权限控制
- 针对用户组的权限控制
- 用户组相关命令
# 查看所有的用户组 getent group # 创建用户组 groupadd 组名 # 删除用户组 groupdel 组名用户管理:
- 创建用户:
- useradd [-g -d] 用户名
- 选项:-g 指定用户的组,不指定-g,回创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g
- 选项:-d 指定用户HOME路径,不指定,HOME目录默认在:/home/用户名
- 删除用户:
- userdel [-r] 用户名
- 选项:-r ,删除用户的HOME目录,不使用 -r,删除用户时,HOME目录保留
- 查看用户所属组:
- id [用户名]
- 参数:用户名,被查看的用户,如果不提供则查看自身
- 修改用户所属组
- usermod -aG 用户组 用户名,将指定用户加入指定用户组
- 用户相关命令
# 查看所有用户. getent passwd # 创建用户, -g是指定用户所在的组. 不写则默认会创建1个和该用户名一模一样的组, 然后添加用户到该组中. useradd [-g] [用户组] 用户名 # 设置密码 passwd 用户名 # 删除用户, -r: 删除用户的同时, /home目录下 该用户的目录也同步删除. userdel [-r] 用户名 # 查看用户信息 id 用户名 # 改变用户所在的组. usermod -aG 组名 用户名 # append group: 追加组权限管理
- 1. 表示文件、文件夹的权限控制信息
- 2. 表示文件、文件夹所属用户
- 3. 表示文件、文件夹所属用户组
Linux的权限管理 :
“1.” 部分的介绍:
例:
drwxr-xr-x:
- 这个是一个文件夹,首字母d表示
- 所属用户(2.) 的权限是:有r有w有x,rwx
- 所属用户组(3.)的权限是:有r无w有x,r-x(-表示无此权限)
- 其他用户的权限是:有r无w有x,r-x
rwx解释:
- r表示读权限
- w表示写权限
- x表示执行权限
差别:
- r,针对文件可以查看文件内容
- 针对文件夹,可以查看文件夹内容,如 ls
- w,针对文件表示可以修改此文件
- 针对文件夹,可以在文件夹内:创建、删除、改名等操作
- x,针对文件表示可以将文件作为程序执行
- 针对文件夹,表示可以更改工作目录到此文件夹,cd 进入
修改权限控制:
chmod:
chmod:修改文件、文件夹的权限信息。
注意:只有文件、文件夹的所属用户或root用户可以修改。
语法:chmod [-R] 权限 文件或文件夹
- 选项:-R,对文件夹内的全部内容应用同样的操作
chmod u=rwx,g=rx,o=x 1.txt # 属主权限:rwx, 属组权限:r-x, 其它用户权限: --x chmod -x 1.txt # 属主, 属组, 其它权限都去掉 x 权限 chmod u+x,g-r,o=rw 1.txt # 属主+x权限, 属组-r权限, 其它权限为: rw-为了更好的表示权限, 引入了 数字权限的概念, 发现权限无外乎四种, r, w, x, -
#分别用数字: 4 -> r, 2 -> w, 1 -> x, 0 -> - 表示权限的数字序号:
权限可用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其它用户权限。
数字的细节如下:r 记位 4,w 记为 2,x 记为 1,可有:
- 0:无任何权限,即 ---
- 1:仅有x权限,即 --x
- 2:仅有w权限,即 -w-
- 3:有w和x权限,即 -wx
- 4:仅有r权限,即 r--
- 5:有r和x权限,即 r-x
- 6:有r和x权限,即 rw-
- 7:有全部权限,即 rwx
#数字 对应的权限 0 --- 1 --x 2 -w- 3 -wx 4 r-- 5 r-x 6 rw- 7 rwx # 实际开发写法, 遇到权限问题, 犹豫不决, 直接 777 chmod 777 1.txt # 俗称: 满权限.例如:751:rwx(7),r-x(5),--x(1)
chown:
chown:修改文件、文件夹的所属用户和用户组。
注意:普通用户无法修改所属为其它用户或组,所以此命令只适用于root用户执行。
语法:chown [-R] [用户] [:] [用户组] 文件或文件夹
- 选项,-R,同chmod,对文件夹内全部内容应用相同规则
- 选项,用户,修改所属用户
- 选项,用户组,修改所属用户组
- :用于分隔用户和用户组
chown zhangsan 1.txt # 改变: 属主 chown :itcast 1.txt # 改变: 属组 chown lisi:itheima 1.txt # 改变: 属主 和 属组 chown -R zhangsan aa # 改变: 属主, 包括子级快捷键:
强制停止:
ctrl + c 强制停止
- Linux某些程序的运行,如果想要强制停止它,可以使用快捷键 ctrl + c
- 命令输入错误,也可以通过快捷键 ctrl + c,退出当前输入,重新输入
退出或登出:
ctrl + d 退出或登出
- 可以通过快捷键: ctrl + d ,退出账户的登录
- 或者退出某些特定程序的专属页面
注意:不能用于退出 vi / vim 。
历史命令搜索:
- history,查看历史输入过的命令
- 可以通过:!命令前缀,自动执行上一次匹配前缀的命令
- 可以通过快捷键:ctrl + r,输入内容去匹配历史命令
如果搜索到的内容是需要的:
- 回车键可以直接执行
- 键盘左右键,剋得到此命令(不执行)
光标移动快捷键:
- ctrl + a 跳到命令开头
- ctrl + e 跳到命令结尾
- ctrl + 键盘左键,向左跳一个单词
- ctrl + 键盘右键,向右跳一个单词
清屏:
- 通过快捷键 ctrl + l ,可以清空终端内容
- 或通过命令 clear 得到同样效果
ctrl + c # 强制结束(执行) ctrl + L # 清屏, 等价于: clear ctrl + d # 强制登出 ctrl + a # 跳转到命令 行首 ctrl + e # 跳转到命令 行尾 ctrl + ← # 上一个单词 ctrl + → # 后一个单词 history # 查看历史命令 !命令名 # 倒序匹配第一个能匹配上的命令, 并执行. ctrl + r # 搜索命令, 并执行.软件安装:
yum:
yum:
- RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。
- 类似于: windows系统 或者 Mac系统的应用商店, 直接从中查找并进行安装。
语言:yum [-y] [install | remove | search] 软件名称
- 选项:-y,自动确认,无需手动确认安装或卸载过程
- install:安装
- remove:卸载
- search:搜索
# 格式解释: yum # 命令名 -y # 可选项, 表示在安装过程中, 只要询问, 默认输入: yes install # 安装 remove # 卸载(移除) search # 查找并安装注意:
- yum命令要root权限,可以su切换到root,或使用sudo提权。
- yum命令需要联网。
- yum [-y] install wget 通过yum安装wget程序
- yum [-y] remove wget 通过yum卸载wget程序
- yum search wget 通过yum,搜索是否有wget安装包
# 安装 wget 命令, 可以联网下载资源 yum -y install wget # wget命令的用法 # 格式: wget url地址apt -扩展:
前面Linux命令,都是通用的。但软件安装,CentOS系统和Ubuntu是使用不同的包管理器。
CentOS使用yum管理器,Ubuntu使用apt管理器
语法:apt [-y] [install | remove | search] 软件名称
用法和yum一致,同样需要root权限
- apt install wget 安装wget
- apt remove wget 移动wget
- apt search wget 搜索wget
systemctl:
Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动、停止、开机自启
能够被systemctl管理的软件,一般也称为:服务
语法:systemctl start | stop | status | enable | disable 服务名
- start 启动
- stop 关闭
- status 查看状态
- enable 开启开机自启
- disable 关闭开机自启
系统内置的服务比较多比如:
- NetworkManager 主网络服务
- network 副网络服务
- firewalld 防火墙服务
- sshd,ssh 服务(FinalShell远程登录Linux使用的就是这个服务)
除了内置的服务以外,部分第三方软件安装后也可以以systemctl进行控制
- yum install -y ntp 安装ntp软件
- 可以通过ntpd服务名,配合systemctl进行控制
- yum install -y httpd 安装apache服务器软件
- 可以通过httpd服务名,配合systemctl进行控制
systemctl status firewalld #查看防火墙软连接
ln 创建软连接:
在系统中创建软连接,可以将文件、文件夹连接到其它位置
类似Windows系统中的快捷方式
语法:ln -s 参数1 参数2
- -s选项,创建软连接
- 参数1:被连接的文件或文件夹
- 参数2:要连接去的目的地
IP地址
固定IP:
当前虚拟机的Linx操作系统,其IP地址是通过DHCP服务获取的
DHCP:动态获取IP地址,即每次重启设备后都会获取一次,可能导致IP地址频繁变更
原因:
- 办公电脑IP地址变化无所谓,但是要远程连接到Linux系统,如果IP地址经常变化就要频繁修改适配很麻烦
- 在刚刚配置了虚拟机IP地址和主机名的映射,如果IP频繁更改,也需要频繁更新映射关系
在VMware Workstation中配置固定IP:
配置固定IP需要2个步骤:
第一步:
- 在VMware Workstation(或Fusion)中配置IP地址网关和网段(IP地址的范围)
- 在Linux系统中手动修改配置文件,固定IP
第二步:
- 使用vim编辑/etc/sysconfig/network-scripts/ifcfg-ens33文件
- 执行:systemctl restart network 重启网卡,执行ifconfig即可看到ip地址固定为192.168.88.130
网络传输
下载和网络请求:
ping:
检查指定的网络服务器是否是可联通状态
语法:ping [-c num] ip或主机名
- 选项,-c,检查的次数,不使用-c选项,将无限次数持续检查
- 参数:ip或主机名,被检查的服务器的ip地址或主机名地址
wget:
非交互式的文件下载器,可以在命令行内下载网络文件
语法:wget [-b] url
- 选项,-b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件
- 参数:url,下载链接
注意:无论下载是是否完成,都会生成要下载的文件,如果下载未完成,请及时清理未完成的不可用文件。
curl:
可以发送http网络请求,可用于:下载文件、获取信息等。
语法:curl [-0] url
- 选项:-0,用于下载文件,当url是下载链接时,可以使用此选项保存文件
- 参数:url,要发起请求的网络地址
端口:
端口,是设备与外界通讯交流的出入口。端口可以分为:物理端口和虚拟端口两类
- 物理端口:又可称之为接口,是可见的端口,如USB接口,RJ45网口,HDMI端口等
- 虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用
端口(虚拟):
计算机程序之间的通讯,通过IP只能锁定计算机,但无法锁定具体的程序。
通过端口可以锁定计算机上具体的程序,确保程序之间进行沟通
查看端口占用:
可以通过Linux去查看端口的占用情况
- 使用nmap,安装nmap:yum -y install nmap
- 语法:namp 被查看的IP地址
- 可以通过netstat,查看指定端口的占用情况
- 语法:netstat -anp | grep 端口号
- 安装netstat:yum -y install net-tools
进程管理:
程序运行在操作系统中,是被操作系统所管理的
为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个:进程
并会为每一个进程都分配一个独有的:进程ID(进程号)
查看进程 ps:
查看Linux系统中的进程信息。
语法:ps [-e -f]
- 选项:-e,显示出全部进程
- 选项:-f,以完全格式化的形式展示信息(展示全部信息)
- 在FinalShell中,执行命令:tail,可以看到,此命令一直阻塞在那里
- 在FinalShell中,复制一个标签页,执行:ps -ef 找出tail这个程序的进程信息
关闭进程:
上传、下载:
rz、sz:
- rz,进行上传
- 语法:直接输入rz
- sz进行下载
- 语法:sz 要下载的文件
文件会自动下载到桌面的:fsdownload文件夹中
注意:rz、sz需要终端软件支持才可正常运行 FinalShell、SecureCRT、XShell等常用终端软件均支持此操作
压缩、解压:
压缩格式:
tar:
- -c,创建压缩文件,用于压缩模式
- -v,显示压缩、解压过程,用于查看进度
- -x,解压模式
- -f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
- -z,gzip模式,不使用-z就是普通的tarball格式
- -C,选择解压的目的地,用于解压模式
压缩:
- -z选项如果使用的话,一般处于选项位第一个
- -f选项,必须在选项位最后一个
解压:
注意:
- -f选项,必须在选项组合体的最后一体
- -z选项,建议在开头位置
- -C选项单独使用,和解压所需的其它参数分开
zip压缩文件:
压缩文件位zip压缩包。
语法:zip [-r] 参数1 参数2 ... 参数N
- -r,被压缩的包含文件夹的时候,需要使用-r选项,和rm、cp等命令的-r效果一致
unzip解压文件:
方便解压zip压缩包
语法:unzip [-d] 参数
- -d,指定要解压去的位置,同tar的-C选项
- 参数,被解压的zip压缩包文件