Linux 基础

操作系统
操作系统 Operating System 简称 OS ,是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁。

操作系统会控制其他程序运行,管理系统资源,提供最基本的计算功能,如管理及配置内存、决定系统资源供需的优先次序等,同时还提供一些基本的服务程序。

什么是 Linux
Linux 系统内核与 Linux 发行套件的区别

  • Linux 系统内核指的是由 Linus Torvalds 负责维护,提供硬件抽象层、硬盘及文件系统控制及多任务功能的系统核心程序。
  • Linux 发行套件系统是我们常说的 Linux 操作系统,也即是由 Linux 内核与各种常用软件的集合产品。

总结:真正的 Linux 指的是系统内核,而我们常说的 Linux 指的是“发行版完整的包含一些基础软件的操作系统”。

用户与权限

用户

Linux 是一个多用户的操作系统。在 Linux 中,理论上来说,我们可以创建无数个用户,但是这些用户是被划分到不同的群组里面的,有一个用户,名叫 root ,是一个很特殊的用户,它是超级用户,拥有最高权限。

  • useradd 添加新用户
    添加新用户之后,会在/home目录下新建一个用户名命名的文件夹
[root@localhost home]# useradd admin
[root@localhost ~]# ls /home
admin
  • passwd 修改用户密码
    出现了一点小插曲,密码长度第一次不符合要求,又重新输入一次
[root@localhost home]# passwd admin
Changing password for user admin.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
Sorry, passwords do not match.
New password:
BAD PASSWORD: The password contains the user name in some form
Retype new password:
passwd: all authentication tokens updated successfully.
  • su - 用户名 切换登录用户
    root切换admin不要密码 但是admin切换到root需要输入密码,因为两者权限不一样,root权限最高。
[root@localhost home]# su - admin
[admin@localhost ~]$ su - root
Password:
Last login: Sat Dec  3 19:06:43 EST 2022 from 192.168.92.1 on pts/0
[root@localhost ~]# 
  • userdel 可以用来删除用户
    删除用户但是home下文件夹不会删除
[root@localhost ~]# userdel admin
[root@localhost ~]# su - admin
su: user admin does not exist
[root@localhost ~]# ls /home
admin

群组的管理

Linux 中每个用户都属于一个特定的群组,如果你不设置用户的群组,默认会创建一个和它的用户名一样的群组,并且把用户划归到这个群组。

  • groupadd 创建群组和useradd一样 见名知意
[root@localhost ~]# groupadd test
  • groupdel 删除一个已存在的群组
[root@localhost ~]# groupdel test
  • groups 查看用户所在群组
[root@localhost ~]# groups root
root : root
[root@localhost ~]# 
  • usermod 用于修改用户的账户。

【常用参数】

-l 对用户重命名。需要注意的是 /home 中的用户家目录的名字不会改变,需要手动修改。
-g 修改用户所在的群组,例如 usermod -g luck look修改look 用户的群组为 luck。

[root@localhost home]# groupadd luck
[root@localhost home]# usermod -g luck look
[root@localhost home]# groups look
look : luck
[root@localhost home]#

-G 一次性让用户添加多个群组,例如 usermod -G all,both,apple look

[root@localhost home]#  groupadd all
[root@localhost home]#  groupadd both
[root@localhost home]#  groupadd apple
[root@localhost home]# usermod -G all,both,apple look
[root@localhost home]# groups look
look : luck all both apple
[root@localhost home]# 

-a -G 会让你离开原先的群组,如果你不想这样做的话,就得再添加 -a 参数,意味着append 追加的意思。

  • chgrp 用于修改文件的群组。
    chgrp all a.txt 将a.txt群组改为了 all
[root@localhost home]# touch a.txt
[root@localhost home]# ls
a.txt  look
[root@localhost home]# ll -s
total 0
0 -rw-r--r--. 1 root root  0 Dec  3 19:44 a.txt
0 drwx------. 2 look luck 62 Dec  3 19:37 look
[root@localhost home]# chgrp all a.txt
[root@localhost home]# ll -s
total 0
0 -rw-r--r--. 1 root all   0 Dec  3 19:44 a.txt
0 drwx------. 2 look luck 62 Dec  3 19:37 look
[root@localhost home]# 
  • chown 改变文件的所有者,需要 root 身份才能运行。
    将look用户创建的look.txt 转让给one用户
[root@localhost look]# ll -s
total 0
0 -rw-r--r--. 1 look luck 0 Dec  3 19:48 look.txt
[root@localhost look]# useradd one
[root@localhost look]# chown one look.txt
[root@localhost look]# ll -s
total 0
0 -rw-r--r--. 1 one luck 0 Dec  3 19:48 look.txt
[root@localhost look]#

look.txt 转让给one用户 并且所属群组改为all

[root@localhost look]# groups one
one : one
[root@localhost look]# chown one:all look.txt
[root@localhost look]# ll -s
total 0
0 -rw-r--r--. 1 one all 0 Dec  3 19:48 look.txt
[root@localhost look]#
  • -R 递归设置子目录和子文件
    chown -R one:all 20221203/
[look@localhost ~]$ ll -s
total 0
0 drwxr-xr-x. 2 look luck 6 Dec  3 19:54 20221203
0 -rw-r--r--. 1 one  all  0 Dec  3 19:48 look.txt
[look@localhost ~]$
[root@localhost look]# chown -R one:all 20221203/
[root@localhost look]# ll -s
total 0
0 drwxr-xr-x. 2 one all 6 Dec  3 19:54 20221203
0 -rw-r--r--. 1 one all 0 Dec  3 19:48 look.txt
[root@localhost look]#

文件权限管理

chmod 修改访问权限
先系统的学习一下Linux的文件权限

[root@localhost home]# ll -s
total 0
0 -rw-r--r--. 1 root all   0 Dec  3 19:44 a.txt
0 drwxr-xr-x. 3 look luck 94 Dec  3 19:54 look
0 drwxr-xr-x. 2 one  one  62 Dec  3 19:49 one

drwxr-xr-x 表示文件或目录的权限

d :表示目录,就是说这是一个目录,普通文件是 - ,链接是 l 。
r :read 表示文件可读。
w :write 表示文件可写,一般有写的权限,就有删除的权限。
x :execute 表示文件可执行。
- :表示没有相应权限。
权限的整体是按用户来划分的,
d                  rwx           r-x                r-x
文件属性            所有者         群组用户           其他用户

现在再来理解这句权限 drwxr-xr-x 的意思:

它是一个文件夹;
它的所有者具有:读、写、执行权限;
它的群组用户具有:读、执行的权限,没有写的权限;
它的其它用户具有:读、执行的权限,没有写的权限。

用 chmod 来尝试修改权限。chmod 它不需要是 root 用户才能运行的,只要你是此文件所有者,就可以用 chmod 来修改文件的访问权限。

数字分配权限

权限   数字
r   4
w   2
x   1

要改变权限,只要做一些简单的加法就行:

chmod 640 look.txt #
分析6 = 4 + 2 + 0 表示所有者具有 rw 权限
4 = 4 + 0 + 0 表示群组用户具有 r 权限
0 = 0 + 0 + 0 表示其它用户没有权限对应文字权限为:-rw-r-----

用字母来分配权限

u :user 的缩写,用户的意思,表示所有者。
g :group 的缩写,群组的意思,表示群组用户。
o :other 的缩写,其它的意思,表示其它用户。
a :all 的缩写,所有的意思,表示所有用户。
+ :加号,表示添加权限。
- :减号,表示去除权限。
= :等于号,表示分配权限。
chmod u+rx file --> 文件file的所有者增加读和运行的权限
chmod g+r file --> 文件file的群组用户增加读的权限
chmod o-r file --> 文件file的其它用户移除读的权限
chmod g+r o-r file --> 文件file的群组用户增加读的权限,其它用户移除读的权限
chmod go-r file --> 文件file的群组和其他用户移除读的权限
chmod +x file --> 文件file的所有用户增加运行的权限
chmod u=rwx,g=r,o=- file --> 文件file的所有者分配读写和执行的权限,群组其它用户分配读的权限,其他用户没有任何权限

Linux-新建用户/群组以及修改文件权限相关推荐

  1. linux创建用户和组、设置文件权限

    用户和组的配置文件 (1) 用户名信息 /etc/passwd/ (2) 用户密码 /etc/shadow/ (3) 组名 /etc/gpasswd/ (4) 组密码 /etc/gshadow/ 创建 ...

  2. linux的常用操作——查看和修改文件权限

    linux的常用操作--查看和修改文件权限 #1.查看当前用户 whoami#2.查看文件权限(r:read;w:write,x:execute) ls -l#3.修改文件\目录权限 chmod [w ...

  3. linux限制组访问权限,linux用户和组管理以及文件权限访问控制ACL策略

    01.通配符 文件通配符可以用来匹配符合条件的多个文件,方便批量管理文件. 通配符采用特定的符号,表示特定的含义,此符号称为元 meta 字符. 常见的通配符如下: * 匹配零个或多个字符,但不匹配 ...

  4. 树莓派Linux基础(四):修改文件权限与从属关系

    前言 通过上一讲,我们知道同一个文件对于不同的用户有着不同的读.写.执行权限.那么,我们该怎么修改这些权限呢? 一.修改文件权限 使用chmod命令来修改文件权限 第一个参数表示要做的修改,可以自己定 ...

  5. Linux创建用户,组,修改,添加,删除,查看命令详细解释

    用户User命令: 创建用户三种方式: useradd user1 /直接创建 useradd -e 22/5/2022 user2 /指定到期时间 useradd -u 1004 user3 /指定 ...

  6. Linux 命令 之 【chmod】 修改文件权限~

    我们常常看到 linux下的 文件 有 这样的属性 rwx rw- r- - 说明: 权限分为三级 : 档案拥有者.群组.其他. 利用 chmod 可以藉以控制档案如何被他人所调用. (chmod 为 ...

  7. 电脑修改ip地址方法cmd_Mac系统如何创建用户群组?苹果电脑修改用户名方法

    群组允许多个用户拥有相同的访问权限.例如,您可以将文件夹或文件的特定访问权限授予群组,这样该群组的所有成员都可以进行访问.您还可以将每个共享文件夹的特定访问权限分配给群组. Mac系统如何创建用户群组 ...

  8. Linux 学习笔记 文件、目录操作与用户群组权限

    一.命令行提示符 1.1 命令行基础 bearpi:当前用户名,在@前是用户名 ubuntu:用户所在的域名,在@后面,这是我自定义的,默认应该是主机名 ~ 波浪线为目前所在目录,~代表家目录(hom ...

  9. linux之用户与组群管理

    第四讲 用户与组群管理 一.实验要求 1.理解/etc/passwd/和/etc/group文件的含义. 2.掌握桌面环境下管理用户与组群的方法. 3.掌握利用Shell命令管理用户与组群的方法. 4 ...

最新文章

  1. Shell脚本中command not found报错处理
  2. Android应用开发-广播和服务
  3. 双机热备_什么是双机热备?
  4. java js 正则区别_对比正则表达式在JavaScript与Java中的区别
  5. 横向排列两个多个div盒子的方法(CSS浮动清除float-clear/inline)/办法
  6. 数据库事务及隔离级别
  7. java 实体类规范_实体类的规范
  8. CTR预估中的特征选择
  9. 在 ML2 中配置 OVS vlan network - 每天5分钟玩转 OpenStack(136)
  10. C#进行Post请求(解决url过长的问题)
  11. 《实用软件工程》复习知识点
  12. 计算机等级考试二级C语言考试环境VS2010学习版以及免费题库
  13. vue点击按钮跳转页面
  14. 【python】pycharts画关联图
  15. Andriod 简介
  16. C语言写的学生管理系统
  17. 【Vue】webpack的基本使用
  18. 分布式任务调度系统-定时任务的解决方案
  19. 软件测试学习 之 Python 函数默认参数
  20. IDC FutureScape:2023年中国未来数字创新十大预测

热门文章

  1. HTML基础(四)常用的内联元素
  2. Docker安装报错Hardware assisted virtualization and data execution protection must be enabled in the BIOS
  3. 二本计算机专业可以考电网,不能小瞧的二本大学,学生毕业后直接进入电网?不用羡慕公务员...
  4. kubernetes 部署_kubernetes应用程序部署工具概述
  5. 网红KOL营销怎么做?如何寻找合适的网红KOL?
  6. js分割thymleaf的字符串
  7. 值得一看的电脑教程下载
  8. Vue3 全家桶 + Element Plus + Vite + TypeScript + Eslint 项目配置最佳实践
  9. eclipse平台的手机程序开发步骤整理
  10. 腾讯云服务器公网6M带宽实际下载/上传速度详细解释