Linux用户及用户组管理命令

2023-11-04

http://blog.sina.com.cn/s/blog_857e9db00101l6u7.html

Linux用户及用户组管理命令
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

  1. useradd

  useradd 命令可以创建一个新的用户帐号其最基本用法为

  useradd 用户名

  如输入以下命令

  useradd newuser

  系统将创建一个新用户newuser 该用户的Home 目录为/home/newuser

  useradd 命令的参数较多常用的组合为

  useradd 用户名 -g 组名 –G 组名 -d Home 目录名 -p 密码

  其中 -g 指定该用户的首要组

  -G 指定该用户的次要组

  -d 指定该用户的Home 目录

  -p 指定该用户的密码

  如输入以下命令

  useradd oracle –g oinstall –G dba –d /home/oracle –p ora123

  系统将创建一个用户oracle oracle 用户的首要组为oinstall 次要组为dba

  Home 目录为/home/oracle 密码为ora123

  2. userdel

  userdel 命令用于删除一个已存在的帐号其用法为

  userdel 用户名
 

   userdel -r用户名    把用户目录也删除掉。


  3. groupadd

  groupadd 命令可以创建一个新的用户组其最基本用法为

  groupadd 组名

  如输入以下命令

  groupadd newgroup

  系统将创建一个新的用户组newgroup



4. groupdel

  groupdel 命令用于删除一个已存在的用户组其用法为

  groupdel 组名

  5. passwd

  出于系统安全考虑Linux 系统中的每一个用户除了有其用户名外还有其对应

  的用户口令用户可以随时用passwd 命令改变自己的口令该命令的一般格

  式为

  passwd

  输入该命令后按系统提示依次输入密码和密码确认后即可完成用户密码

  的修改

  此外超级用户还可以修改其他用户的口令命令如下

  passwd 用户名

  6. su

  su命令这个命令非常重要它可以让一个普通用户拥有超级用户或其他用户的权限也可以让超级用户以普通用户的身份做一些事情普通用户使用这个命令时必须有超级用户或其他用户的口令如要离开当前用户的身份可以键入exit命令su 命令的一般形式为

  su - 用户名

  7.chmod  改变文件的权限

  chmod命令是非常重要的用于改变文件或目录的访问权限该命令有两种用法一种是包含字母和操作符表达式的文字设定法另一种是包含数字的数字设定法由于数字设定法不太直观本文不做介绍文字设定法的用法如下

  chmod [who] [+ | - | =] [mode] 文件名

  命令中各选项的含义为

  1 操作对象who 可以是下述字母中的任一个或者它们的组合

  u 表示用户(user) 即文件或目录的所有者

  g 表示同组(group)用户即与文件属主有相同组ID 的所有用户

  o 表示其他(others)用户

  a 表示所有(all)用户它是系统默认值

  2 操作符号可以是

  + 添加某个权限

  - 取消某个权限

  = 赋予给定权限,并取消其他所有权限

    chmod  u=rwx,go=rx.bashrc

   chmod a+x .bashrc

   chmod u+x.bashrc 




3 mode 表示权限常用的参数有


  r 可读

  w 可写

  x 可执行

  举例

  1 将文件script 的权限设为可执行命令如下

  chmod a=rx script

  执行成功后用ls -l script 命令查看文件属性的结果如下

  -r-xr-xr-x 1 user group 0 Feb 10 09:42 script

  2 将文件text 的权限设为文件属主可读可写可执行与文件属主同组

  的用户可读其他用户不可读命令如下

  chmod u=rwx,g=r,o= text 注意,后无空格o=后有空格

  执行成功后用ls –l text 命令查看文件属性的结果如下

  -rwxr----- 1 user group 0 Feb 10 09:42 text

 

   其他组,只有r的权限,没有x的权限的情况下,是进不了那个文件夹的。

   如果是文件的话,是可以打开读的。但其他权限都没有。

  8.chown   改变文件所有者

  chown 用于更改某个文件或目录的属主和属组这个命令也很常用例如root 用户把自己的一个文件拷贝给用户oracle为了让用户oracle 能够存取这个文件root 用户应该把这个文件的属主设为oracle否则用户oracle无法存取这个文件chown 的基本用法为

  chown [用户:组] 文件
  举例
  chown oracle:dba text  或者chown oracle.dbatext

  该命令将text 文件的属主和属组分别改为oracle 和dba(可以顺便把文件所在组也给修改

   事实上chown也可以使用chown user.group file ,就是所有者和用户组间加上小数点.也可以。不过许多朋友喜欢在设置账号时候加入小数点,会造成系统误判。所以我们一般建议使用冒号:来隔开所有者和用户组。

此外,chown 也能单纯地修改所属组呢。例如 chown .sshdinstall.log 就是修改用户组,就是小数点的用途。(这里冒号也同样适用)

   9:chgrp 改变文件所属用户组

   使用格式:chgrp [R] dirame/filename...

   chgrp youyou instaal.log

   如果youyou不存在这个用户组,则会报错。

chmod 750 a.out
改变 a.out的权限为750;
chmod a+x a.out
对所有用户增加 a.out的执行权限,a(All)表示所有用户;
chmod u=rwx a.out
设置属主的权限为读、写和执行, u(user)表示属主用户;
chmod g+rw a.out
增加同组用户的读写权限, g(group)表示同组用户;
chmod o-w a.out
减少其他用户的写权限, o(others)表示其他用户;
chmod go= a.out
清除同组和其他用户的所有权限;
chmod o=u-w a.out

范例 :将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入:
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file

chmod 777 file
效果相同
chmod ug=rwx,o=x file

chmod 771 file
效果相同
若用chmod 4755 filename可使此程序具有root的权限

 

chmod 4755与chmod 755 的区别在于开头多了一位,这个4表示其他用户执行文件时,具有与所有者相当的权限。

例如:root用户创建了一个上网认证程序netlogin,如果其他用户要上网也要用到这个程序,那就需要root用户运行chmod755 netlogin命令使其他用户也能运行netlogin。

但是netlogin执行时可能需要访问一些只有root用户才有权访问的文件,那么其他用户执行netlogin时可能因为权限不够还是不能上网。

这种情况下,就可以用 chmod 4755 netlogin设置其他用户在执行netlogin也有root用户的权限,从而顺利上网。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux用户及用户组管理命令 的相关文章

  • 一致性 Hash 算法(分布式或均衡算法)

    简介 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希 DHT 实现算法 设计目标是为了解决因特网中的热点 Hot spot 问题 初衷和CARP十分类似 一致性哈希修正了CARP使用的简单哈希算法带来的问题 使得分布式哈希 D
  • Python爬取研招网数据

    一 爬虫定制部分 导入相关的包 import requests import lxml html import chardet import pandas as pd import numpy as np 请求头获取页面 def get p
  • Spring Boot 代码混淆(proguard-maven-plugin的使用说明)

    什么是代码混淆 就是将代码的通过工具使其可读性变差 越差越好 Proguard是什么 官网地址 www guardsquare com proguard 该工具主要是为了实现Java以及Android App的代码混淆工作 从官网的说明可以

随机推荐

  • 批量爬取百度图片

    输入关键字和要爬取的数量 直接爬取图片并保存到本地 这个比较简单 直接使用即可 import requests import json word input 输入您需要爬取的关键字 page num int input 需要爬取多少页 一页
  • Linux 进程手撕笔记——万字深剖详解

    目录 传统艺能 冯 诺依曼体系 内存 控制器 如何搞管理 进程 操作系统立大功 进程查看 进程的 PID 获取进程 PID fork 进程状态 Linux 进程状态 进程优先级 为什么会有优先级 Linux 优先级相关操作 传统艺能 小编是
  • Java线程池的正确关闭方法,awaitTermination还不够

    问题说明 今天发现了一个问题 颠覆了我之前对关闭线程池的认识 一直以来 我坚信用shutdown awaitTermination关闭线程池是最标准的方式 不过 这次遇到的问题是 子线程用到BufferedReader 而BufferedR
  • 利用STM32CubeMX软件生成USB_DEVICE_SD卡虚拟U盘

    一 测试平台 MCU STM32F429NIH6 工具 STM32CubeMX软件 编译软件 MDK 二 配置步骤 1 打开STM32CubeMX软件 创建新的工程文件 先生成一个的串口的收发例程 需要实现将串口收到的数据发送的出来 生成串
  • 【华为OD机试 】新工号中数字的最短长度(C++ Java JavaScript Python)

    华为od机试共有3道题 分值为100 100 200 总分为400分 考试时间 2 5h 每道题目都需要通过测试用例来得分 全通过则为满分 华为od机试是在牛客网上进行的 采用ACM模式 华为od机试目标院校分数为160分 华为od机试非目
  • ideavim 解决烦人的中英文切换问题

    先下载插件IdeaVimExtension 然后终端输入 set keep english in normal and restore in insert 注意前面有个冒号
  • 利用遗传算法求解函数极值

    1 利用遗传算法求解函数极值 例1 利用遗传算法求函数 f x 11sin 6x 7cos 5x x 的最大值点 解 在MATLAB中编制绘制函数曲线的代码 运行得到题中函数的曲线图如下图所示 从下图中可以看出 该函数有多个极值点 如果使用
  • 使用ES6编写一个超简单的搜索算法

    自从chrome和ES6的普及 JS的性能和科学算法也日新月异 这次我就分享一个超简单的搜索算法 let result appData map item gt Object assign item count arr map i gt it
  • gulp安装那些事

    在Gulp中 使用的是Nodejs中的 stream 流 首先获取到需要的stream 然后可以通过stream的pipe 方法把流导入到你想要的地方 比如Gulp的插件中 经过插件处理后的流又可以继续导入到其他插件中 当然也可以把流写入到
  • 【电磁场计算】磁偶极子在外磁场中的受力

    磁偶极子在外磁场中的受力 背景 受力推导 矢量展开 结论 背景 最近在总结电磁场计算公式的时候发现 关于磁偶极子受力的计算公式 在不同文献中的说明有点出入 在此特地写一篇博客澄清一下 受力推导 通过磁偶极子在外磁场中的磁势能求梯度得出其受力
  • python虚拟环境的概念,配置和操作(pycharm为例)

    一 虚拟环境的由来和概念 1 在PyCharm中创建python项目时 需要配置python的运行环境 除了使用系统现有环境以外 还可以创建虚拟环境 2 虚拟环境的创建是因为在实际开发中需要同期用到不同版本的python解释器 不同的第三方
  • 微信小程序之蓝牙 BLE 踩坑记录

    前言 前段时间接手了一个微信小程序的开发 主要使用了小程序在今年 3 月开放的蓝牙 API 此过程踩坑无数 特此记录一下跳坑过程 顺便开了另一个相关的小项目 欢迎 start 和 fork BLE MiniProgram API简介 微信小
  • vue 富文本vue-quill-editor 自定义字号大小和字体样式

    一 先创建一个名为font的 css文件 然后引入自定义css 字体样式大小 ql snow ql picker ql font ql picker label data value SimSun before ql snow ql pic
  • Unity修改开始画面

    下面 是我换好的开始画面 中间的是开始淡入淡出画面的第一个 后面的是背景 还有就是如果不要最后的背景的话 那么就是一个纯色的背景 颜色可调
  • 干货!情感计算理论基础必看知识!!

    产生背景 在较长一段时期内 情感一直位于认知科学研究者的视线以外 直到20世纪末期 情感作为认知过程重要组成部分的身份才得到了学术界的普遍认同 当代的认知科学家们把情感与知觉 学习 记忆 言语等经典认知过程相提并论 关于情感本身及情感与其他
  • 假设检验之单个总体均值检验(含Python代码)

    什么是假设检验 教材原话 很容易理解 假设检验原理图 均值假设检验原理 理解重点 单个总体均值假设检验步骤 分位数的理解 附教材 统计量规定 单个总体检验的扩展 分为三类情况讨论 单侧检验 重点 Python代码 含例题答案 def zte
  • ./gophish: /lib64/libc.so.6: version `GLIBC_2.28‘ not found (required by ./gophish)

    本文向大家介绍Centos系统在启动一些服务的时候会碰到的 lib64 libc so 6 version GLIBC 2 28 not found required by 的问题的解决方法 根据提示可知碰到此问题 是因为没有找到GLIBC
  • ubuntu安装SLAM所需的库的方法

    一 安装Eigen3 安装步骤 从Github下载eigen3 git clone https github com eigenteam eigen git mirror sudo apt get install libeigen3 dev
  • 背包问题专题-动态规划

    目录 01背包问题 完全背包 多重背包 多重背包的优化 分组背包 01背包问题 有 N 件物品和一个容量是 V 的背包 每件物品只能使用一次 第 i 件物品的体积是 vi 价值是 wi 求解将哪些物品装入背包 可使这些物品的总体积不超过背包
  • Linux用户及用户组管理命令

    http blog sina com cn s blog 857e9db00101l6u7 html Linux用户及用户组管理命令 Linux系统是一个多用户多任务的分时操作系统 任何一个要使用系统资源的用户 都必须首先向系统管理员申请一