Linux-(系统启动、用户管理)

2024-09-05 23:28

本文主要是介绍Linux-(系统启动、用户管理),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

前言

关机&重启命令

基本介绍

注意细节

用户登录和注销

注意:

用户管理

基本介绍

添加用户

指定/修改密码

删除用户

查询用户信息

切换用户

查看当前用户登录用户

用户组

新增组

删除组

查看所有组

修改用户所属组

创建用户时指定用户的组

删除用户所属的某个组

用户和组相关文件

/etc/passwd文件

/etc/shadow文件

/etc/group文件

sudo指令

注意

设置某个用户可以使用sudo

前言

Linux操作系统在虚拟机VM上的安装【CentOS版本】-CSDN博客

Linux特别篇-忘记密码(root)-CSDN博客

关机&重启命令

基本介绍

  1. shutdown -h now 立刻进行关机
  2. shutdown -h 1 一分钟后关机
  3. shutdown -r now 现在重新启动计算机
  4. halt 关机,作用和上面一样
  5. reboot 现在重启计算机
  6. sync 把内存中的数据同步到磁盘

注意细节

  1. 不管是重启系统还是关闭系统,首先要运行“sync”命令,把内存中的数据写到磁盘中
  2. 目前的shutdown/reboot/halt等命令已经在关机前进行了sync

用户登录和注销

  • 输入logout可注销用户

注意:

  • logout在图形运行级别无效,在运行级别3下才有效

用户管理

用户管理指的是“root用户”对“普通用户”的管理,因此下面的指令都是在“root用户”命令行下使用的

基本介绍

Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统

添加用户

useradd 用户名

  • 添加一个用户后,该用户的家目录在:“/home/用户名
  • 也可以通过“useradd -d 指定目录 用户名”,给新创建的用户指定家目录  

指定/修改密码

passwd 用户名

删除用户

  • userdel 用户名,删除用户,但不删除用户的家目录
  • userdel -r 用户名,删除用户,同时删除用户的家目录

查询用户信息

id 用户名

返回结果如下:

  • uid:Linux系统来唯一标识用户的数字。每个用户在系统中都有唯一的一个UID,系统通姑婆UID来管理用户权限和访问控制
  • gid:gid十系统用来唯一标识用户组的数字。每个用户组在系统中也有一个唯一的gid,用户组用于管理一组用户的权限,允许多个用户共享文件和资源
  • 组信息:标志用户所属的组

例如:

切换用户

su 用户名

注意:

  • 从高权限用户切换到低权限用户不用输入密码,反之需要
  • 当需要返回到原来的用户,可以使用:“exit/logout”命令

查看当前用户登录用户

whoami 或者 who i am

whoamiwho i am

用户组

用户组类似于角色,系统可以对有“共性/权限”的多个用户进行统一管理

有点类似于编程语言中的类,不同角色相当于不同的类对象

新增组

groupadd 组名

删除组

groupdel 组名

查看所有组

  • cat /etc/group:直接查看组文件
  • getent group:命令行查看

效果:

使用这两个命令查找,不仅会列出用户组,还会列出系统组非常繁琐,不利于我们查看

通常,我们只在乎“用户组”即:“创建用户时自动创建的组”或者“root用户手动创建的组

在Linux中,系统组GID通常在(1~999)之间,而新创建的组GID(大于等于1000),为此我们可以使用以下命令行查看:

  • awk -F: '$3 >= 1000 {print}' /etc/group

效果:

  • nfsnobody:网络文件系统环境组,不必理会

修改用户所属组

usermod -g 用户名 组名

  • 假设我们有一个用户为“tom”,所属组为“tom
  • 现在想将他修改为“xinzheng”组下成员,代码如下:
    • usermod -g tom xinzheng

效果:

创建用户时指定用户的组

useradd -g 组名 用户名

 效果:

删除用户所属的某个组

gpasswd -d 用户名 组名

用户和组相关文件

/etc/passwd文件

用户的配置文件,记录用户的各种信息

每行的含义:

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell

例如:

/etc/shadow文件

口令的配置文件

每行的含义:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大事件间隔:警告时间:不活动时间:失效时间:标志

如果密码字段是“”表示该用户账户被禁用或锁定(就是没设置密码)

 例如:

/etc/group文件

组配置文件,记录Linux包含的组的信息

每行含义:

组名:口令:组标识号:组内用户列表

例如:

sudo指令

有时,我们是普通用户的身份,但是我们需要利用普通用户执行只有root用户才能执行的命令,这个时候我们就可以是用sudo指令:

sudo 命令

  • 例如我是普通用户,但是我想创建一个新的用户,这本应只能是root用户才能做到,但我可以使用“sudo useradd newuser”来创建用户 

注意

只有root用户允许的普通用户才能使用sudo命令,否则将被警告

例如某用户没有sudo权限:

设置某个用户可以使用sudo

  1. root用户在命令行中输入:“visudo”,进入sudoers文件
  2. 找到“Allow root to run any commands anywhere”这一栏,添加如下内容:

用户名 ALL=(ALL) ALL

这篇关于Linux-(系统启动、用户管理)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1140358

相关文章

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet