当前位置: 首页 > news >正文

linux---》用户操作/su和sudo/普通权限/特殊权限/解压压缩/软件管理,rpm和yum/源码安装nginx

用户操作

####创建用户####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  # 家路径一并删除

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__  其他:其他用户有权限

普通权限

针对文件定义了三种身份,
分别是属主(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  # 对该文件加执行权限(自己,组,其他人都有)

特殊权限

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

解压压缩

# 在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

软件管理,rpm和yum

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

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查询未安装的软件包会产生哪些文件

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

源码安装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,都会有响应

系统服务

# 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

进程管理


#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 进程名   批量干掉进程

相关文章:

linux---》用户操作/su和sudo/普通权限/特殊权限/解压压缩/软件管理,rpm和yum/源码安装nginx

用户操作 ####创建用户####1 创建sa和sutdents组 groupadd sa groupadd students # 2 用户可以属于多个组,只能属于一个主组,附加组可以有多个 G useradd -u 5001 -g students -G sa -c "注释" -s /bin/bash lqz666 # 3 设置密码 passwd lqz6…...

tinkerCAD案例:20. Simple Button 简单按钮和骰子

文章目录 tinkerCAD案例:20. Simple Button 简单按钮Make a Trick Die tinkerCAD案例:20. Simple Button 简单按钮 Project Overview: 项目概况: This is a series of fun beginner level lessons to hone your awesome Tinkercad skills a…...

Java - 为什么要用BigDecimal?

🤔️为什么要用BigDecimal? 当然是因为使用Double计算,在某些对精度要求很高的场景下会出现问题💀不信你看⤵️ Test void test12() {// 丢失精度double result 0.2 0.1;System.out.println(result); // 输出结果为 0.300000000…...

mac 删除自带的ABC输入法保留一个搜狗输入法,搜狗配置一下可以减少很多的敲击键盘和鼠标点击次数

0. 背景 对于开发者来说,经常被中英文切换输入法所困扰,我这边有一个方法,删除mac默认的ABC输入法 仅仅保留搜狗一个输入法,配置一下搜狗输入:哪些指定为英文输入,哪些指定为中文输入(符号也可…...

JiaYu说:如何做好IT类的技术面试?

IT类的技术面试 面试IT公司的小技巧IT技术面试常见的问题嵌入式技术面试嵌入式技术面试常见的问题嵌入式软件/硬件面试题 JiaYu归属嵌入式行业,所以这里只是以普通程序员的角度去分析技术面试的技巧 当然,也对嵌入式技术面试做了小总结,友友们…...

RL 实践(6)—— CartPole【REINFORCE with baseline A2C】

本文介绍 REINFORCE with baseline 和 A2C 这两个带 baseline 的策略梯度方法,并在 CartPole-V0 上验证它们和无 baseline 的原始方法 REINFORCE & Actor-Critic 的优势参考:《动手学强化学习》完整代码下载:7_[Gym] CartPole-V0 (REINFO…...

Python numpy库的应用、matplotlib绘图、opencv的应用

numpy import numpy as npl1 [1, 2, 3, 4, 5]# array():将列表同构成一个numpy的数组 l2 np.array(l1) print(type(l2)) print(l2) # ndim : 返回数组的轴数(维度数) # shape:返回数组的形状,用元组表示;元组的元素…...

SpringBoot 如何进行 统一异常处理

在Spring Boot中,可以通过自定义异常处理器来实现统一异常处理。异常处理器能够捕获应用程序中抛出的各种异常,并提供相应的错误处理和响应。 Spring Boot提供了ControllerAdvice注解,它可以将一个类标记为全局异常处理器。全局异常处理器能…...

数据库索引优化与查询优化——醍醐灌顶

索引优化与查询优化 哪些维度可以进行数据库调优 索引失效、没有充分利用到索引-一索引建立关联查询太多JOIN (设计缺陷或不得已的需求) --SQL优化服务器调优及各个参数设置 (缓冲、线程数等)–调整my.cnf数据过多–分库分表 关于数据库调优的知识点非常分散。不同的 DBMS&a…...

Student and Teacher network(学生—教师网络)与知识蒸馏

Student and Teacher network指一个较小且较简单的模型(学生)被训练来模仿一个较大且较复杂的模型(教师)的行为或预测。教师网络通常是一个经过训练在大型数据集上并在特定任务上表现良好的模型。而学生网络被设计成计算效率高且参…...

FPGA——PLD的区别以及各自的特点

目录 一、概述二、PLD的优点三、PLD的分类1、PROM(可编程只读存储器):2、PAL(可编程阵列逻辑)3、GAL(通用阵列逻辑)4、CPLD (复杂PLD)5、FPGA(现场可编程门阵…...

八、Kafka时间轮与常见问题

Kafka与时间轮 Kafka中存在大量的延时操作。 1、发送消息-超时重试机制 2、ACKS 用于指定分区中必须要有多少副本收到这条消息,生产者才认为写入成功(延时 等) Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而…...

Web端即时通讯技术(SEE,webSocket)

目录 背景简介个人见解被动推送轮询简介实现 长轮询(comet)简介实现 比较 主动推送长连接(SSE)简介实现GETPOST 效果 webSocket简介WebSocket的工作原理:WebSocket的主要优点:WebSocket的主要缺点: 实现用法一用法二 **效果** 比较…...

脑电信号处理与特征提取——4.脑电信号的预处理及数据分析要点(彭微微)

目录 四、脑电信号的预处理及数据分析要点 4.1 脑电基础知识回顾 4.2 伪迹 4.3 EEG预处理 4.3.1 滤波 4.3.2 重参考 4.3.3 分段和基线校正 4.3.4 坏段剔除 4.3.5 坏导剔除/插值 4.3.6 独立成分分析ICA 4.4 事件相关电位(ERPs) 4.4.1 如何获…...

分析npm run serve之后发生了什么?

首先需要明白的是,当你在终端去运行 npm run ****,会是什么过程。 根据上图的一个流程,就可以衍生出很多问题。 1,为什么不直接运行vue-cli-service serve? 因为直接运行 vue-cli-service serve,会报错&#xff0c…...

LINUX上操作redis 用shell7

LINUX上操作redis 用shell7 步骤1:连接到Linux服务器步骤2:安装和配置Redis步骤3:连接到Redis服务器步骤4:操作Redis数据步骤5:断开与Redis服务器的连接 步骤1:连接到Linux服务器 首先,需要使用…...

Python的threading模块

为引入多线程的概念&#xff0c;下面是一个例子&#xff1a; import time, datetimestartTime datetime.datetime(2024, 1, 1, 0, 0, 0) while datetime.datetime.now() < startTime:time.sleep(1)print(Program now starting on NewYear2024) 在等待time.sleep()的循环调…...

HTML5 的离线储存怎么使用,工作原理

TML5提供了一种称为离线储存&#xff08;Offline Storage&#xff09;的功能&#xff0c;它允许网页在离线时缓存和存储数据&#xff0c;以便用户可以在没有网络连接的情况下访问这些数据。离线储存是通过使用Web Storage API或者应用程序缓存&#xff08;Application Cache&am…...

FTP文件传输协议与DHCP

基本概念 主机之间传输文件是IP网络的一个重要功能 互联网早期&#xff0c;最通用方式就是使用FTP&#xff08;File Transfer Protocol&#xff0c;文件传输协议&#xff09;以及&#xff08;Trivial File Transfer Protocol&#xff0c;简单文件传输协议&#xff09; FTP采用…...

【UE5 多人联机教程】06-显示玩家名称

效果 可以看到玩家输入各自的名称&#xff0c;会显示到自己控制的角色头上。但是目前有一个BUG就是&#xff0c;当客户端加入游戏时会多创建一个服务端的角色。 步骤 1. 打开“BP_ThirdPersonCharacter”&#xff0c;添加一个控件组件&#xff0c;用于显示玩家名称 作为网格体…...

如何在Linux系统中快速找到文件:FSearch终极文件搜索工具完整指南

如何在Linux系统中快速找到文件&#xff1a;FSearch终极文件搜索工具完整指南 【免费下载链接】fsearch A fast file search utility for Unix-like systems based on GTK3 项目地址: https://gitcode.com/gh_mirrors/fs/fsearch 在Linux系统中寻找特定文件常常令人头疼…...

Unity Shader UV 坐标与纹理平铺Tiling Offset 深度解析

从 UV 空间的数学本质出发&#xff0c;理解 URP 中纹理坐标的缩放&#xff08;Tiling&#xff09;与偏移&#xff08;Offset&#xff09;控制原理&#xff0c; 并掌握 Shader Graph、HLSL、C# 三种维度的实践技巧。UV 坐标系基础在实时渲染中&#xff0c;UV 坐标是将二维纹理贴…...

Fish-Speech 1.5效果展示:双自回归Transformer架构,语音质量惊艳

Fish-Speech 1.5效果展示&#xff1a;双自回归Transformer架构&#xff0c;语音质量惊艳 你听过那种一听就知道是机器人的AI语音吗&#xff1f;生硬、刻板&#xff0c;每个字都像从模板里抠出来的&#xff0c;毫无生气。再听听这个&#xff1a;“今天天气真好&#xff0c;适合…...

打破设备壁垒:Sunshine让游戏自由流动的串流革命

打破设备壁垒&#xff1a;Sunshine让游戏自由流动的串流革命 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 想象一下&#xff1a;你在客厅的高性能电脑上开始了一场紧张刺激的3A大…...

ED-最优设计实战:如何用Python实现鲁棒实验设计(附完整代码)

ED-最优设计实战&#xff1a;如何用Python实现鲁棒实验设计&#xff08;附完整代码&#xff09; 在数据科学和工程领域&#xff0c;实验设计是优化参数估计和模型性能的关键环节。传统D-最优设计虽然经典&#xff0c;但在面对参数不确定性时往往表现不佳。本文将带你深入理解ED…...

3步轻松延长Navicat使用周期:Mac用户实用指南

3步轻松延长Navicat使用周期&#xff1a;Mac用户实用指南 【免费下载链接】navicat_reset_mac navicat16 mac版无限重置试用期脚本 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 还在为Navicat试用期到期烦恼吗&#xff1f;作为数据库管理的得力工具…...

智慧园区能源管理系统解决方案

某园区集成生产、办公、生活三大功能&#xff0c;建设有生产厂房、化学品库、辅助用房、气罐站、研发楼、综合楼及其他配套设施&#xff0c;涉及到多种用能&#xff0c;包含电能、天然气、压缩空气、冷热能等&#xff0c;带来日益高昂的能耗成本与能源浪费隐患。 1、制冷空调监…...

本地部署openclaw(window环境下)不用花钱买token版

步骤一&#xff1a;参考视频到安装 openclaw 前就行&#xff08;剩下的步骤和博主不太样&#xff09; 步骤 2 1、免费注册一个 NVIDIA NIM 账户&#xff1a; 【点击前往】 登入后在设置中心生成你自己的API Keys &#xff0c;过期时间选择永不过期&#xff0c;目前可以直接免…...

LSLib:从游戏资源新手到MOD制作专家的完整路径

LSLib&#xff1a;从游戏资源新手到MOD制作专家的完整路径 【免费下载链接】lslib Tools for manipulating Divinity Original Sin and Baldurs Gate 3 files 项目地址: https://gitcode.com/gh_mirrors/ls/lslib 你是否曾经想过修改《神界原罪》系列或《博德之门3》的游…...

Git从入门到精通:完整学习路线图,全面详细一次过

Git超详细使用教程&#xff1a;从入门到高级&#xff08;全面详解&#xff5c;目录结构&#xff5c;口语化专业双轨&#xff5c;长文警告&#xff09; ⚠️ 长文警告&#xff1a;全文共 6218 字&#xff0c;覆盖 Git 全生命周期操作&#xff0c;含 18 个核心章节、7 张结构化对…...