Linux之用户管理、权限管理、程序安装卸载

news2025/7/27 17:41:39

 一. 用户管理

1. 查看账户

(1). 查看当前账号:whoami

​(2). 查看系统当前登录的账号:who

​补充常用选项:

​(3). 查看系统所有的账号: cat /etc/passwd

​2. exit:退出登录账户

 如果是图形界面,退出当前终端;

 如果是使用ssh远程登录,退出登陆账户;

 如果是切换后的登陆用户,退出则返回上一个登陆账号。

3. useradd:添加用户

常用指令:【sudo useradd -m 用户名】,创建用户名,并且创建与用户名相同的目录和用户组。

​参数说明:

​补充说明

(1). Linux每个用户都要有一个主目录,主目录就是第一次登陆系统,用户的默认当前目录(/home/用户);

(2). 每一个用户必须有一个主目录,所以用useradd创建用户的时候,一定给用户指定一个主目录(或者自动默认创建);

(3). 用户的主目录一般要放到根目录的home目录下,用户的主目录和用户名是相同的;

(4). 如果创建用户的时候,不指定组名,那么系统会自动创建一个和用户名一样的组名。

C++入门到精通Linux学习链接:零基础入门 C++Linux

​其它命令组合:

(1). 指定目录:【sudo useradd -d /home/lmr2 ypf2 -m】,创建ypf2用户,如果 /home/lmr2 目录不存在,就自动创建这个目录,同时用户属于ypf2组

​(2). 指定目录和组名:【sudo useradd -d /home/a a -g mygroup1 -m】,创建一个用户名字叫a,主目录在/home/a,如果主目录不存在,就自动创建主目录,同时用户属于mygroup1组

​4. passwd:设置用户密码

命令组合:【sudo passwd 用户名】,然后两次输入密码

​5. userdel:删除用户

​命令组合:【sudo userdel -r xxx】

​6. su:切换用户

命令组合:【su - 用户名】,如果不写中间的 -,只切换了账户,没有切换到对应的工作目录

​7. 查看有哪些组

(1). 写法1:cat /etc/group

​(2). 写法2:groupmod + 空格 + 两次tab

​8. groupadd:添加组

命令组合:【sudo groupadd 组名】

​9. groupdel:删除组

命令组合:【sudo groupdel 组名】

​10. groups:查看用户所在的组

命令组合:【groups 用户名】

​11. usermod:修改用户所在的组

命令组合:【sudo usermod -g 用户组 用户名】

​12. gpasswd :将用户添加到某个组中

C++高级开发学习地址:C/C++Linux服务器开发高级架构师/Linux后台架构师-学习视频

学习路线、学习资料有需要的可以自行添加:Q群:720209036 点击加入~群文件共享

​命令组合【sudo gpasswd -a 用户名 目标组】

​PS:与usermod是修改用户所在的当前组,gpasswd是将用户额外添加到一个新组中。

二. 权限管理

1. 为创建的普通用户添加sudo权限

 新创建的用户,默认不能sudo,需要进行一下操作.

指令:【sudo usermod -a -g sudo 用户名】

​PS: usermod -g 与 -G的区别

-g:用来制定这个用户默认的用户组

-G:一般配合'-a'来完成向其它组添加

2. 修改文件权限: chmod

(1). 权限的所有者

​如何查看呢?

​(2). 修改权限可以使用的符号

​(3). 字母法修改权限

​举例:将文件拥有者的权限设置为只读。

​举例:将文件拥有者设置为只读、同组者设置为读写、其他人的权限为只写。

​(4). 数字法修改权限

​举例:执行:chmod u=rwx,g=rx,o=r ypf.txt 就等同于:chmod 754 ypf.txt

(剖析7=1+2+4,所以代表可读可写可执行,5=1+4,所以代表可读可执行 4代表可读)

​常用组合:

(1). 赋予文件或目录所有权限:【chmod 777 ypf.txt】

(2). 递归赋予文件或目录所有权限:【chmod -R 777 /ypf/test1】

3. 修改文件所有者:chown

命令:【sudo chown 用户名 文件名】

举例:将ypf.txt这个文件拥有者改为用户 ypf1

​4. 修改文件所属组:chgrp

命令:【sudo chgrp 组名 文件名】

举例:将ypf.txt这个文件所属组改为组 ypf1

三. 程序安装卸载

 Linux安装软件主要有4种方式,以Centos/Ubuntu为例,进行说明:

(1). 二进制发布包

 软件已经针对具体平台编译打包发布,只要解压,修改配置即可。

(2). RPM包

 软件已经按照redhat的包管理工具规范RPM进行打包发布,需要获取到相应的软件RPM发布包,然后用RPM命令进行安装。

(3).源码编译安装

 软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署。

(4). Yum在线安装

 软件已经以RPM规范打包,但发布在了网络上的一些服务器上,可用yum在线安装服务器上的rpm软件,并且会自动解决软件安装过程中的库依赖问题。

特别注意:下面指令ubuntu系统使用apt-get,centos系统使用的是yum,其它都相同!!!

 Ubuntu 推荐使用 apt 进行下载、安装。会从 ubuntu 官网下载(中国区镜像),如果下载速度慢的话,可以设置从其他镜像下载,具体搜索“Ubuntu apt-get 镜像”,执行某些程序的时候,如果程序没安装,还会提示你,比如执行 vim、tree 等。

常用的有:

(1). 搜索: 【sudo apt-get search 包名】

(2). 安装 “sudo apt-get install 程序名”,比如 “sudo apt-get install tree” ,可以简写【sudo apt install tree】

(3). 卸载 “sudo apt-get remove 程序名”, 比如 “sudo apt-get remove tree”,可以简写【sudo apt remove tree】

补充一下其他常用指令:

sudo apt-get update  更新源
​
sudo apt-get install package 安装包
​
sudo apt-get remove package 删除包
​
sudo apt-cache search package 搜索软件包
​
sudo apt-cache show package  获取包的相关信息,如说明、大小、版本等
​
sudo apt-get install package --reinstall   重新安装包
​
sudo apt-get -f install   修复安装
​
sudo apt-get remove package --purge 删除包,包括配置文件等
​
sudo apt-get build-dep package 安装相关的编译环境
​
sudo apt-get upgrade 更新已安装的包
​
sudo apt-get dist-upgrade 升级系统
​
sudo apt-cache depends package 了解使用该包依赖那些包
​
sudo apt-cache rdepends package 查看该包被哪些包依赖
​
sudo apt-get source package  下载该包的源代码
​
sudo apt-get clean && sudo apt-get autoclean 清理无用的包
​
sudo apt-get check 检查是否有损坏的依赖

原文地址:第三节:Linux入门之用户管理、权限管理、程序安装卸载 - Yaopengfei - 博客园

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

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

相关文章

curl命令的常用操作

curl是非常实用的命令行工具,用来与服务器之间传输数据。它的命令行参数多达几十种。 在Linux环境中使用curl命令可以进行接口测试。利用curl对http协议发送Get/Post/Delete/Put请求,同时还可以携带header来满足接口的特定需求。 curl命令的语法 curl[options] [U…

Linux03-网络设置

一、说明 在上一节,咱使用VMware安装了虚拟机,网络设置选择了 “桥接模式” ,本节咱们来具体讨论一下网络连接方式和网络设置。 实验环境:CentOS7 VMware 二、桥接模式 当我们设置桥接模式时,虚拟机是直接使用物理…

eNSP出现错误,错误代码40暴力解决方案

如果你和我一样,在eNSP中启动一个设备时发生了错误,错误代码为40,那么这篇文件可能会帮助你。 首先你可以仔细地按照这篇说明中的做法进行操作,如果你电脑也是win10,并且之前没有安装过wireshark,virtualb…

后端总说他啥也没动,我从线上调了一下测试接口,你再说一句动没动

◇ 不知道广大前端同学有没有过这样的经历,在做新需求联调的时候,原本上一个版本已经做的好好的功能,前后端已经联调好的。这次做需求的时候,测试发现好多地方都不对了。 ◇ 开发人员经常说的一句话就是:我啥也没动啊…

Java -- 每日一问:你了解Java应用开发中的注入攻击吗?

典型回答 注入式(Inject)攻击是一类非常常见的攻击方式,其基本特征是程序允许攻击者将不可信的动态内容注入到程序中,并将其执行,这就可能完全改变最初预计的执行过程,产生恶意效果。 下面是几种主要的注…

Web前端:2022年Web开发者的五大CSS工具

据相关数据统计,2018年至2028年,网络开发人员的就业预计将增长13%,这意味着网站开发者的需求量很大,而企业需要专业人员来构建网站,而高效制作优秀网站的最佳方法是拥有最好的web开发工具。 对优秀web开发工具的需求使…

设信号x(t)=cos(2π×50t)+2×cos(2π×400t),试将它的两个频率分量分离,并绘制它们的时域波形及频谱图

以下程序无需赋值,直接运行即可: (已验证可以运行) function [yl,yh]shiyan49 fs1600; %采样频率 Tt0.02; %信号周期 T04*Tt; %记录长度 [xn,wk,N]shiyan40(fs,T0); Mlength(wk); if M2 rp1;rs80; f1wk(1)*fs/N; f2wk(2…

升余弦滤波器的FPGA实现

目录 升余弦滤波器与无码间串扰(一) 升余弦滤波器与无码间串扰(二) 升余弦滤波器的FPGA实现 一、FIR ip核 成形滤波器采用vivado中的FIR ip核实现。滤波器的系数用matlab产生并转成coe文件。 wire m_axis_data_tvalid; rcos_f…

官网下载JAVA的JDK11版本(下载、安装、配置环境变量)

目录 前言: 一、下载JDK11 1.先去浏览器搜索 2.选择Products 3.Java ​编辑 4.往下滑找到Oracle JDK,然后点击 5.往下滑找到Java11,再选择自己的操作系统 6.选择exe这个直接安装的后缀 7.跳出来的弹窗勾选,并点击 8.弹出来一个甲骨文…

树莓派4b linux内核调试(jtag、kgdb)

1、-O0编译树莓派4b linux内核(linux-5.10.95) 内核源码分支: https://github.com/raspberrypi/linux/tree/rpi-5.10.y 参考其他网站,注释掉arch/arm64/include/asm/jump_label.h文件里面的内联汇编分支; 修改arch/arm64/include/asm/memory.h里面的MIN…

大一学生Web课程设计 美食主题网页制作(HTML+CSS+JavaScript)

🎀 精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

传奇开服教程——传奇微端架设教程-GEE引擎

登录器和网站配置好后,我们进入游戏后会发现是黑屏的,更新不了地图和NPC这些,因为还没有做微端,会黑屏也是正常的。 有些GEE版本有配套的微端程序,有些版本没有,需要自己去gee官网下载更新时间比引擎还靠后…

多层固定分组计算

【问题】 I want to build opening closing report – ITEM_TRANSACTION TABLE- Consider below data– 1.When item is prepared entry is made into table wih NULL indicator.. 2. When Item is issued/sold entry is made into table with ISSUE indicator Date Iname I…

[附源码]SSM计算机毕业设计中学学生学籍管理JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

笔试强训第29天

单选 A选项:当内存访问越界的时候,线程会收到信号,进而进行信号处理。调用信号处理函数。 B选项:ACM时间。 A:最后访问时间,文件被读取而更新的时间 C:状态修改时间,文件的属性或者权…

遨博机械臂URDF功能包ROS仿真

文章目录知识目标1.机械臂URDF功能包文件结构2.URDF模型中的元素和参数3.任务描述3.1 修订launch启动文件参数3.2 URDF功能包编译知识目标 学习机械臂URDF功能包文件结构 掌握机械臂URDF模型文件各元素和参数概念 1.机械臂URDF功能包文件结构 2.URDF模型中的元素和参数 机械…

【mmDetection框架解读】入门篇三、VOC数据集转COCO数据集,在MMDetection中成功运行

目录一、voc数据集转coco数据集二、修改配置二、验证数据集是否转换成功相关源码文件一、voc数据集转coco数据集 执行命令: python tools/dataset_converters/pascal_voc.py ../../../data/devkit ../../../data/coco通过VOC的xml文件生成COCO的json标签文件。 再…

Linux下延时一定时间,又不挂起程序。

0.前言 这是一个解决篇Linux C语言怎么实现通过socket发送一秒数据,上次想要实现做一秒的事情没有写出来,这次解决掉。先推荐一部电影《猩球崛起》三部曲。 1.Linux下的sleep函数。 这个函数的确可以起到延时的作用,但是他会把整个进程挂起&a…

CentOS8替代盘点

常用的替代选项 国外替代 Rocky Linux AlmaLinux Oracle Linux UEK内核 CentOS Stream 国产替代 Anolis OS TencentOS Server(桌面版无法迁移) openEuler OpenCloudOS 宝塔面板 推荐 Rocky/Alma/Oracle linux 8 持保守态度 Centos 8 Stream Anolis(Centos 8 Stream…

L1和L2正则化的三种不同角度的理解

观看B站视频后写的笔记,链接 降低模型复杂度>正则化>减小模型参数个数 0. 前言 正则化是一个专有名词,和正则表达式中的正则没有任何关系。L1和L2正则化就是用L1范数和L2范数来规范模型参数的这么一种方法,Dropout也叫正则化&#x…