5-linux-用户操作、su和sudo、普通权限、特殊权限、解压压缩、软件管理(rpm和yum)、源码安装nginx、系统服务、进程管理

1 用户操作
2 su和sudo
3 普通权限
4 特殊权限
5 解压压缩
6 软件管理,rpm和yum
6.1 rpm
6.2 yum
7 源码安装nginx
8 系统服务
9 进程管理

1 用户操作

####创建用户####1 创建sa和sutdents组
groupadd sa
groupadd students
# 2 用户可以属于多个组,只能属于一个主组,附加组可以有多个 G
useradd -u 5001 -g students -G sa -c "注释" -s /bin/bash lqz666
# 3 设置密码
passwd lqz666# 4 有的情况下我们创建用户,不希望登录
#创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户无法登陆系统
useradd mysql -M -s /sbin/nologin  # 运行进程 某个用户运行的##### 修改用户 ###
usermod -L lqz666
usermod -U lqz666### 删除用户 ###
userdel justin   #保留家路径
userdel -r lqz888  # 家路径一并删除

2 su和sudo

# su身份切换-以root用户登录了---》切换到其他用户上去su 用户名  不需要输入密码su - username  # 加载当前用户的环境变量-以其他用户登录了---》切换成root用户su root  需要输入root用户密码
# 环境变量加载顺序/etc/profile->/家路径.bash_profile->家路径/.bashrc->/etc/bashrc# sudo 提权--->能不能干取决于有没有被授予
su命令在切换用户身份时,如果每个普通用户都能拿到root用户的密码,当其中某个用户不小心泄漏了root的密码,那系统会变得非常不安全。为了改进这个问题,从而产生了sudo这个命令。其实sudo就相当于给某个普通用户埋下了浩克(hulk)的种子,当需要执行一些高级操作时,进行发怒,但正常情况下还是普通人,还是会受到限制# 举个例子:-普通用户不能创建用户-就是普通用户,就想创建---》问管理员要root密码--》su 成 root---》可以创建了---》完事切回来-我就是普通用户,管理员授予我创建用户权限 sudo useradd lqz  输入密码:你的密码# 1 命令 把lqz666这个用户加入到wheel组,这个组 是root 用户的组,有很多权限usermod lqz666 -G wheel# 2 wheel组的成员,跟root是一种权限,跟root用户一样,有一些权限-删除文件,创建文件夹。。。# 3 文件有些操作权限-rwx:读,写 ,执行属主:用户的权限属组:当前组都有权限    rwxrw_r__  其他:其他用户有权限

3 普通权限

针对文件定义了三种身份,
分别是属主(owner):文件属于哪个用户
属组(group):文件是属于哪个用户用户组的
其他人(others):其他人
三种权限,分别是可读(readable)、可写(writable)、可执行(excutable)rw-                       r--                        r--
当前用户有读写权限         同一个组有读权限             其他人有读权限d   rwx                  ---                          ---# 授予文件权限
# 方式一:
chmod u=rwx,g=rwx,o=rwx lqz.txt  
# 方式二:
r:4
w:2
x:1
110  rw-  6
chmod 777 lqz.txtchmod 077 lqz.txtchomd +x  xx.sh  # 对该文件加执行权限(自己,组,其他人都有)

4 特殊权限

#选项: + 增加权限 -减少权限 =等于某个权限
# a:让文件或目录仅可追加内容
# i:不得任意更动文件或目录-电脑中毒了,一切皆文件---》查看哪个进程占cpu,内存高,定位到那个可执行文件---》删除可执行文件即可-删没有权限-chattr -i 文件# 操作
chattr +i  文件

5 解压压缩

# 在windows系统下,我们接触最多的压缩格式是 rar 或 zip ,但在Linux上使用最多的压缩格式是 zip 和 tar.gz 。当然不用担心,Linux上的压缩格式放在windows系统下都是可以正常打开的。
PS: Linux不支持 Windows下的 RAR 格式的压缩文件。Windows和Linux互通通常选择 zip# gzip-仅对文件有效,对文件夹无效,压缩后文件删除,解压后压缩包删除-安装:yum install gzip -y-压缩:gzip 文件名-解压:gzip -d file.gz-实际用途:做备份-gzip *     把当前路径下所有文件都压成 gz-gzip -d *  解压当前路径下所有gz文件# zip-yum install zip unzip -y-压缩:zip  filename.zip  xx.txt-压缩:包括目录和文件:zip  -r filename1.zip  xx.txt a.txt  /etc/hosts-查看压缩包中有哪些文件:unzip -t  filename1.zip-解压:unzip  filename.zip-解压到指定目录下:unzip  filename.zip -d /opt/
# tar #语法:tar [-zjxcvfpP] filename c   #创建新的归档文件x   #对归档文件解包t   #列出归档文件里的文件列表v   #输出命令的归档或解包的过程f   #指定包文件名,多参数f写最后z   #使用gzip压缩归档后的文件(.tar.gz)j   #使用bzip2压缩归档后的文件(.tar.bz2)J   #使用xz压缩归档后的文件(tar.xz)C   #指定解压目录位置X   #排除多个文件(写入需要排除的文件名称)h   #打包软链接# 压缩时候选项:可以打出czf     #打包tar.gz格式 常用cjf     #打包tar.bz格式 不怎么用cJf     #打包tar.xz格式 不考虑# 解压时候选项zxf     #解压tar.gz格式jxf     #解压tar.bz格式xf      #自动选择解压模式xvf     #显示解压过程tf      #查看压缩包内容# 实战:-压缩:只记这一条即可tar czf  test.tar.gz a.txt  ./etc xx.txt-解压:tar -xf test.tar.gztar -xvf test.tar.gz-查看压缩包内容tar tf  test.tar.gz

6 软件管理,rpm和yum

# 把光驱挂在到某个目录下
mount /dev/cdrom /mnt# rmp包的样子
httpd-devel-2.4.6-97.el7.centos.5.x86_64.rpm

6.1 rpm

# rpm安装软件命令rpm -ivh tree-1.6.0-10.el7.x86_64.rpm
# rpm查看软件rpm -q   查看是否安装rpm -ql  释放的目录
# rpm卸载软件rpm -qa |grep tree  # 从所有安装的软件中过滤一些是否有treerpm -q tree  # 查看tree有没有装rpm -e tree  # 卸载tree软件

安装软件命令

选项描述
-i安装rpm
-v显示安装详细信息
-h显示安装rpm进度
–force强制重新安装
–nodeps忽略依赖关系

查看软件命令

选项描述
rpm -q查看指定软件包是否安装(重点)
rpm -qa查看系统中已安装的所有RPM软件包列表
rpm -qi查看指定软件的详细信息
rpm -ql查询指定软件包所安装的目录、文件列表(重点)
rpm -qc查询指定软件包的配置文件(只有配置文件,etc下的)
rpm -qf查询文件或目录属于哪个RPM软件
rpm -qip查询未安装的rpm包详细信息
rpm -qlp查询未安装的软件包会产生哪些文件

6.2 yum

# Yum是RedHat以及CentOS中的软件包管理器。能够通过互联网下载 .rpm 包并且安装,并可以自动处理依赖性关系,无须繁琐地一次次下载、安装# YUM源-yum install  装软件,它去某个位置下,默认是centos提供的,国外,可能会慢一些-国内的阿里云,提供镜像站wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# epel扩展源wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo# 查询软件yum list |wc -l # 查看所有可以按装的软件yum list|grep ftpyum info ftp#安装软件
yum install vim -y
yum install 远程地址rpm包自动处理依赖
yum reinstall vsftpd # 重新安装
rpm -qc vsftpd # 查看改软件安装后的一些目录# 更新软件
yum update nginx -y
# 卸载软件
yum remove 软件名 -y

7 源码安装nginx

# nginx 为例安装# yum install nginx  简单,不能使用最新版,不能修改源码
# 源码安装,官方下载最新版,改源码,自己编译---》得到软件# 源码安装nginx
1 wget https://nginx.org/download/nginx-1.24.0.tar.gz
2 tar xf nginx-1.24.0.tar.gz
3 配置相关的选项,并生成Makefile./configure --help./configure --prefix=/usr/local/nginx  # 指定安装路径yum -y install gcc gcc-c++ makeyum install -y pcre-develyum -y install zlib-develyum -y install openssl-devel
4 make  编译---》把源码编译成可执行文件---/usr/local/nginx路径下会不会有?5 make install   安装6 cd /usr/local/nginx 可以看到文件夹
conf     html         logs      sbin
配置文件   index.html   日志     可执行文件7 在任意路径下敲nginx 都能找到-1 软连接-2 把sbin路径加入到环境变量- vim .bash_profile-加入一行:PATH=$PATH:$HOME/binPATH=$PATH:/usr/local/nginx/sbinexport PATH-3 source 一下,让它生效source .bash_profile-4 以后再任意路径敲nginx,都会有响应

8 系统服务

# centos7  systemclt 
systemctl管理服务的启动、重启、停止、重载、查看状态等常用命令# systemctl restart network# win上net start 服务名# 使用 systemctl 管理nginx -如果用yum安装的nginx,自动加入到服务中去,就会被systemctl管理-yum install nginx -y-systemctl status nginx-systemctl start nginx-systemctl stop nginx-systemctl reload nginx# 把咱们自己使用源码安装的软件也可以被systemctl管理#1  来到路径下:路径是
cd /usr/lib/systemd/system/
# 2 新建一个 mynginx.service
vim mynginx.service
[Unit]
Description=xxxx
After=network.target[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecRestart=/usr/local/nginx/sbin/nginx -s restart
ExecReload=/usr/local/nginx/sbin/nginx -s reload
[Install]
WantedBy=multi-user.target# 3 以后,使用systemctl 管理nginx-systemctl status mynginx-systemctl start mynginx-systemctl stop mynginx-systemctl reload mynginx# 4 开机自启动
systemctl enable mynginx # 开机启动
systemctl disable mynginx # 取消开机启动# 关闭防火墙,设置不开机自启动
systemctl stop firewalld
systemctl disable firewalld

9 进程管理


#1  ps -aux 
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root        1  0.4  0.3 128148  6800 ?        Ss   15:08   0:01 /usr/lib/systemd/systemd
root        2  0.0  0.0      0     0 ?        S    15:08   0:00 [kthreadd]# 哪个用户启动
# 进程id是什么,后期杀进程,可以使用进程id号
# cpu占用率
#内存占用率
# COMMAND  进程的命令  [系统进程]  其他进程#2  ps aux | grep redis#3  孤儿进程和僵尸进程
#4 ps -ef# 5 top  动态查看进程# 6 杀进程
kill -9 进程id号
pkill -9 进程名   批量干掉进程

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

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

相关文章

03-详细介绍Stream及其常用API

Stream API Stream API(java.util.stream)把真正的函数式编程风格引入到Java中,可以极大地提高程序员生产力,让程序员写出高效、简洁的代码 实际开发中项目中多数数据源都是来自MySQL、Oracle等关系型数据库,还有部分来自MongDB、Redis等非关系型数据库 从关系型…

1.测试基础

目录 一、测试基础 1.软件测试中基础信息定义 2.测试主流技能 3.常见的测试分类 3.1按阶段划分 3.2按代码可见度划分 3.3其他 4.测试模型 5.测试流程 6.测试用例 二、用例设计方法 2.1等价类 2.2 边界值 2.3判定表法 2.4场景法 2.5错误推测法 三、缺陷管理 1…

文章解读与仿真程序复现思路——电力系统自动化EI\CSCD\北大核心《交直流配电网中柔性软开关接入的规划-运行协同优化方法》

这个标题涉及到交直流配电网中柔性软开关接入的规划-运行协同优化方法。下面是对这个标题各部分的详细解读: 交直流配电网: 这指的是一个电力系统,同时包含交流和直流电力传输的元素。这样的系统可能结合了传统的交流电力传输和近年来兴起的直…

python中一个文件(A.py)怎么调用另一个文件(B.py)中定义的类AA详解和示例

本文主要讲解python文件中怎么调用另外一个py文件中定义的类,将通过代码和示例解读,帮助大家理解和使用。 目录 代码B.pyA.py 调用过程 代码 B.py 如在文件B.py,定义了类别Bottleneck,其包含卷积层、正则化和激活函数层,主要对…

WordPress用sql命令批量删除所有文章

有时我们需要将一个网站搬迁到另一个服务器。我们只想保留网站的模板样式,而不需要文章内容。一般情况下我们可以在后台删除已发表的文章,但如果有很多文章,我们则需要一次删除所有文章。 WordPress如何批量删除所有文章 进入网站空间后台&a…

常见树种(贵州省):013桉树、米槠、栲类

摘要:本专栏树种介绍图片来源于PPBC中国植物图像库(下附网址),本文整理仅做交流学习使用,同时便于查找,如有侵权请联系删除。 图片网址:PPBC中国植物图像库——最大的植物分类图片库 一、桉树 …

Java中的字符串String

目录 一、常用方法 1、字符串构造 2、String对象的比较 (1)、equals方法 (2)、compareTo方法 (3)、compareToIgnoreCase方法(忽略大小写进行比较) 3、字符串查找 4、转化 &…

4.3 实时阴影

一、基于图像的阴影技术(Shadow Map) 什么是阴影 当来自光源的至少一个点在空间中被遮挡时,就产生了阴影区域。 阴影的前提 直接光照不透明物体 阴影的实现方式 阴影体(Shadow Volumes)——空间中黑暗部分的几何…

Springboot集成swagger之knife4j

knife4j的最终效果&#xff1a; 支持直观的入参介绍、在线调试及离线各种API文档下载。 1 引入pom <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.2</ver…

python 3.7安装并配置 pytorch(torch 1.8.2 + cuda 11.1 + torchaudio 0.8.2 + torchvision 0.9.2)

文章目录 前言一、安装 python二、安装 cuda cudnn二、安装 pytorch2.1 版本匹配2.1.1 方法一2.1.2 方法二2.2 安装 .tar.bz2 三、验证是否安装成功总结 前言 本篇文章主要介绍在Windows下 python 3.7 配置 pytorch&#xff0c;帮助需要的朋友避坑 安装 pytorch 需要多个版本适…

内建组件和模块

讨论 Vue.js 中几个非常重要的内建组件和模块&#xff0c;例如 KeepAlive 组件、Teleport 组件、Transition 组件等&#xff0c;它们都需要渲染器级别的底层支持。另外&#xff0c;这些内建组件所带来的能力&#xff0c;对开发者而言非常重要且实用&#xff0c;理解它们的工作原…

Word中如何实现 图片 | 表格 自动编号与文中引用编号对应

当我们在进行大篇幅word文档的编写时&#xff0c;为了节约修改文章中图片或表格所花费的大量时间&#xff0c;可以将图片自动编号&#xff0c;且让文中引用的顺序跟着图片顺序的变化而变化&#xff0c;具体操作如下&#xff1a; 1. 将鼠标定位在图片或者表格欲加编号的下方或上…

Banana Pi [BPi-R3-Mini] 回顾和主线 ImmortalWrt 固件支持

BananaPi BPi-R3 Mini 采用 MediaTek 830&#xff08;4 个 A53&#xff0c;最高 2.0 GHz&#xff09;&#xff0c;具有 2 个 2.5 GbE、AX4200 2.4G/5G 无线和 USB 2.0 端口。它还具有两个 M.2 连接器&#xff0c;可用于 NVMe SSD 和 5G 模块&#xff08;板上包含 Nano SIM 插槽…

ELK企业级日志分析平台——kibana数据可视化

部署 新建虚拟机server5&#xff0c;部署kibana [rootelk5 ~]# rpm -ivh kibana-7.6.1-x86_64.rpm [rootelk5 ~]# cd /etc/kibana/[rootelk5 kibana]# vim kibana.ymlserver.host: "0.0.0.0"elasticsearch.hosts: ["http://192.168.56.11:9200"]i18n.local…

微服务学习(十二):安装Minio

微服务学习&#xff08;十二&#xff09;&#xff1a;安装Minio 一、简介 MinIO 是一款基于Go语言发开的高性能、分布式的对象存储系统。客户端支持Java,Net,Python,Javacript, Golang语言。MinIO系统&#xff0c;非常适合于存储大容量非结构化的数据&#xff0c;例如图片、视…

2023亚太杯数学建模C题:我国新能源电动汽车的发展趋势,思路模型代码

问题C 我国新能源电动汽车的发展趋势 赛题思路&#xff1a;获取思路见文末名片&#xff0c;第一时间更新 新能源汽车是指以先进技术原理、新技术、新结构的非常规汽车燃料为动力来源( 非常规汽车燃料指汽油、柴油以外的燃料&#xff09;&#xff0c;将先进技术进行汽车动力控制…

Qt 软件开发框架(主要部分)

目录 1、 一个软件基本要素 &#xff08;1&#xff09;UI模块 &#xff08;2&#xff09;网络模块 &#xff08;3&#xff09;业务逻辑模块 &#xff08;4&#xff09;中间层 &#xff08;5&#xff09;独立模块&#xff08;守护进程、更新模块、日志收集模块…&#xff…

【spring(三)】AOP总结

&#x1f308;键盘敲烂&#xff0c;年薪30万&#x1f308; 目录 一、AOP相关概念 ① AOP核心思想思想&#xff1a; ② AOP专业术语&#xff1a; 二、AOP快速如入门 三、AOP工作流程 四、切入点表达式 ① 语法格式 ②支持通配符 ③书写技巧 五、通知类型 ①⭐环绕通知…

nodejs 如何将 Buffer 数据转为 String

问题说明 使用webSocket的时候出现了一个问题&#xff0c;前端小程序和nodejs后端建立websocket连接后&#xff0c;使用send方法发送到后端为buffer格式&#xff0c;以下为我前后端代码 1、前端小程序代码 //创建webSocket连接 const socket uni.connectSocket({url: wss…

[架构之路-249]:目标系统 - 设计方法 - 软件工程 - 需求工程- 需求开发:如何用图形表达需求,结构化方法的需求分析

目录 一、概述 二、数据模型&#xff1a;E-R图/实体关系图&#xff08;数据单元之间的结构关系&#xff09; 三、功能模型&#xff1a;数据流图DFD&#xff08;逻辑运算&#xff0c;包括输入和输出&#xff0c;实体之间的关系&#xff09;&#xff1a;输入》处理 》 输出 四…