Linux(实操篇二)

Linux实操篇

  • Linux(实操篇二)
    • [1. 常用基本命令](#1. 常用基本命令)
      • [1.3 时间日期类](#1.3 时间日期类)
        • [1.3.1 date显示当前时间](#1.3.1 date显示当前时间)
        • [1.3.2 显示非当前时间](#1.3.2 显示非当前时间)
        • [1.3.3 date设置系统时间](#1.3.3 date设置系统时间)
        • [1.3.4 cal查看日历](#1.3.4 cal查看日历)
      • [1.4 用户管理命令](#1.4 用户管理命令)
        • [1.4.1 useradd添加新用户](#1.4.1 useradd添加新用户)
        • [1.4.2 passwd设置用户密码](#1.4.2 passwd设置用户密码)
        • [1.4.3 id查看用户是否存在](#1.4.3 id查看用户是否存在)
        • [1.4.4 cat /etc/passwd 查看创建了哪些用户](#1.4.4 cat /etc/passwd 查看创建了哪些用户)
        • [1.4.5 su切换用户](#1.4.5 su切换用户)
        • [1.4.6 userdel删除用户](#1.4.6 userdel删除用户)
        • [1.4.7 who查看登录用户信息](#1.4.7 who查看登录用户信息)
        • [1.4.8 sudo设置普通用户具有root权限](#1.4.8 sudo设置普通用户具有root权限)
        • [1.4.9 usermod修改用户](#1.4.9 usermod修改用户)
      • [1.5 用户组管理命令](#1.5 用户组管理命令)
        • [1.5.1 groupadd新增组](#1.5.1 groupadd新增组)
        • [1.5.2 groupdel删除组](#1.5.2 groupdel删除组)
        • [1.5.3 groupmod修改组](#1.5.3 groupmod修改组)
        • [1.5.4 cat /etc/group查看创建了哪些组](#1.5.4 cat /etc/group查看创建了哪些组)
      • [1.6 文件权限类](#1.6 文件权限类)
        • [1.6.1 文件属性](#1.6.1 文件属性)
        • [1.6.2 chmod改变权限](#1.6.2 chmod改变权限)
        • [1.6.3 chown改变所有者](#1.6.3 chown改变所有者)
        • [1.6.4 chgrp改变所属组](#1.6.4 chgrp改变所属组)

Linux(实操篇二)

1. 常用基本命令

1.3 时间日期类

  • 基本语法

    date [OPTION]... [+FORMAT]

  • 选项说明

    -d<时间字符串> 显示指定的"时间字符串"表示的时间,而非当前时间

    -s<日期时间> 设置系统日期时间

  • 参数说明

    <+日期时间格式> 指定显示时使用的日期时间格式

1.3.1 date显示当前时间

  • 基本语法

    (1)date 功能描述:显示当前时间

    (2)date +%Y 功能描述:显示当前年份

    (3)date +%m 功能描述:显示当前月份

    (4)date +%d 功能描述:显示当前是哪一天

    (5)date "+%Y-%m-%d %H:%M:%S" 功能描述:显示年月日时分秒

  • 实例实操

    显示当前时间信息

    [guozihan@hadoop100 ~]$ date

    2023年 08月 27日 星期日 11:03:46 CST

    显示当前时间年月日

    [guozihan@hadoop100 ~]$ date +%Y%m%d

    20230827

    显示当前时间年月日时分秒

    [guozihan@hadoop100 ~]$ date "+%Y-%m-%d %H:%M:%S"

    2023-08-27 11:04:43

1.3.2 显示非当前时间

  • 基本语法

    (1)date -d '1 days ago' 功能描述:显示前一天时间

    (2)date -d '-1 days ago' 功能描述:显示明天时间

  • 案例实操

    显示前一天

    [guozihan@hadoop100 ~]$ date -d '1 days ago'

    2023年 08月 26日 星期六 11:13:27 CST

    显示明天时间

    [guozihan@hadoop100 ~]$ date -d '-1 days ago'

    2023年 08月 28日 星期一 11:13:37 CST

1.3.3 date设置系统时间

  • 基本语法

    date -s 字符串时间

  • 案例实操

    [root@hadoop101 ~]# date -s "2017-06-19 20:52:18

1.3.4 cal查看日历

  • 基本语法

    cal [选项] 功能描述:不加选项,显示本月日历

  • 选项说明

    具体某一年 显示这一年的日历

  • 案例实操

    查看当前月的日历

    [guozihan@hadoop100 ~]$ cal

    查看 2017 年的日历

    [guozihan@hadoop100 ~]$ cal 2023

1.4 用户管理命令

1.4.1 useradd添加新用户

  • 基本语法

    useradd 用户名 功能描述:添加新用户

    useradd -g 组名 用户名 功能描述:添加新用户到某个组

  • 案例实操

    添加一个用户

    [root@hadoop100 guozihan]# useradd sunchen

    [root@hadoop100 guozihan]# ll /home

    总用量 4

    drwx------. 18 guozihan guozihan 4096 8月 27 10:59 guozihan

    drwx------. 3 sunchen sunchen 78 8月 27 11:19 sunchen

1.4.2 passwd设置用户密码

  • 基本语法

    passwd 用户名 功能描述:设置用户密码

  • 案例实操

    设置用户的密码

    [root@hadoop100 guozihan]# passwd sunchen

    更改用户 sunchen 的密码 。

    新的 密码:

    重新输入新的 密码:

    passwd:所有的身份验证令牌已经成功更新。

1.4.3 id查看用户是否存在

  • 基本语法

    id 用户名

  • 案例实操

    查看用户是否存在

    [root@hadoop100 guozihan]# id guozihan

    uid=1000(guozihan) gid=1000(guozihan) 组=1000(guozihan)

    [root@hadoop100 guozihan]# id sunchen

    uid=1001(sunchen) gid=1001(sunchen) 组=1001(sunchen)

1.4.4 cat /etc/passwd 查看创建了哪些用户

  • 案例实操

    [root@hadoop100 guozihan]# cat /etc/passwd

1.4.5 su切换用户

su: swith user 切换用户

  • 基本语法

    su 用户名称 功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量

    su - 用户名称 功能描述:切换到用户并获得该用户的环境变量及执行权限

  • 案例实操

    切换用户

    [root@hadoop101 ~]#su sunchen

    [root@hadoop101 ~]#su - sunchen

1.4.6 userdel删除用户

  • 基本语法

    (1)userdel 用户名 功能描述:删除用户但保存用户主目录

    (2)userdel -r 用户名 功能描述:用户和用户主目录,都删除

  • 选项说明

    -r 删除用户的同时,删除与用户相关的所有文件

  • 案例实操

    删除用户但保存用户主目录

    [root@hadoop100 guozihan]# userdel sunchen

    [root@hadoop100 guozihan]# ll /home/

    总用量 4

    drwx------. 18 guozihan guozihan 4096 8月 27 10:59 guozihan

    drwx------. 3 1001 1001 78 8月 27 11:19 sunchen

    删除用户和用户主目录,都删除

    [root@hadoop100 guozihan]# userdel -r sunchen

    [root@hadoop100 guozihan]# ll /home/

    总用量 4

    drwx------. 18 guozihan guozihan 4096 8月 27 10:59 guozihan

1.4.7 who查看登录用户信息

  • 基本语法

    (1)whoami 功能描述:显示自身用户名称

    (2)who am i 功能描述:显示登录用户的用户名以及登陆时间

  • 案例实操

    显示自身用户名称

    [root@hadoop100 guozihan]# whoami

    root

    显示登录用户的用户名

    [root@hadoop100 guozihan]# who am i

    guozihan pts/0 2023-08-27 11:03 (:0)

1.4.8 sudo设置普通用户具有root权限

修改配置文件

修改 /etc/sudoers 文件,找到下面一行(91 行),在 root 下面添加一行,如下所示:

Allow root to run any commands anywhere

root ALL=(ALL) ALL

guozihan ALL=(ALL) ALL

或者配置成采用 sudo 命令时,不需要输入密码

Allow root to run any commands anywhere

root ALL=(ALL) ALL

guozihan ALL=(ALL) NOPASSWD:ALL

1.4.9 usermod修改用户

  • 基本语法

    usermod -g 用户组 用户名

  • 选项说明

    -g 修改用户的初始登录组,给定的组必须存在。默认组 id 是 1

1.5 用户组管理命令

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同

如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。

用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group文件的更新。

1.5.1 groupadd新增组

  • 基本语法

    groupadd 组名

  • 实例实操

    添加一个xitianqujing组

    [root@hadoop101 opt]#groupadd xitianqujin

1.5.2 groupdel删除组

  • 基本语法

    groupdel 组名

  • 案例实操

    删除xitianqujing组

    [root@hadoop101 opt]# groupdel xitianqujing

1.5.3 groupmod修改组

  • 基本语法

    groupmod -n 新组名 老组名

  • 选项说明

    -n<新组名> 指定工作组的新组名

  • 实例实操

    修改xitianqujing组名称为xitian

    [root@hadoop101 ~]#groupadd xitianqujing

    [root@hadoop101 ~]# groupmod -n xitian xitianqujing

1.5.4 cat /etc/group查看创建了哪些组

  • 基本操作

    [guozihan@hadoop100 ~]$ cat /etc/group

1.6 文件权限类

1.6.1 文件属性

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。 为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做 了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属 的用户和组。

如果没有权限,就会出现减号[ - ]而已

  • 0 首位表示类型

    在Linux中第一个字符代表这个文件是目录、文件或链接文件等等

    • 代表文件

    d 代表目录

    l 链接文档(link file)

  • 第1-3位确定属主(该文件的所有者)拥有该文件的权限。---User

  • 第4-6位确定属组(所有者的同组用户)拥有该文件的权限,---Group

  • 第7-9位确定其他用户拥有该文件的权限 ---Other

rwx 作用文件和目录的不同解释

  • 作用到文件

    [ r ]代表可读(read): 可以读取,查看

    [ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前 提条件是对该文件所在的目录有写权限,才能删除该文件

    [ x ]代表可执行(execute):可以被系统执行

  • 作用到目录

    [ r ]代表可读(read): 可以读取,ls查看目录内容

    [ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录

    [ x ]代表可执行(execute):可以进入该目录

  • 如果查看到是文件:链接数指的是硬链接个数
  • 如果查看的是文件夹:链接数指的是子文件夹个数

1.6.2 chmod改变权限

  • 基本语法
  • 第一种方式变更权限

    chmod [{ugoa}{±=}{rwx}] 文件或目录

    u:所有者 g:所有组 o:其他人 a:所有人(u、g、o 的总和)

  • 第二种方式变更权限

    chmod [mode=421 ] [文件或目录]

    r=4 w=2 x=1 rwx=4+2+1=7

  • 案例实操

    修改文件使其所属主用户具有执行权限

    [root@hadoop101 ~]# cp xiyou/dssz/houge.txt ./

    [root@hadoop101 ~]# chmod u+x houge.txt

    修改文件使其所属组用户具有执行权限

    [root@hadoop101 ~]# chmod g+x houge.txt

    修改文件所属主用户执行权限,并使其他用户具有执行权限

    [root@hadoop101 ~]# chmod u-x,o+x houge.txt

    采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权限

    [root@hadoop101 ~]# chmod 777 houge.txt

    修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可 执行权限

    [root@hadoop101 ~]# chmod -R 777 xiyou/

    -R 为递归操作

1.6.3 chown改变所有者

  • 基本语法

    chown [选项] [最终用户] [文件或目录] 功能描述:改变文件或者目录的所有者

    chown [选项] [所有者]:[组] 文件

  • 选项说明

    -R 递归操作

  • 案例实操

    修改文件所有者

    [root@hadoop101 ~]# chown atguigu houge.txt

    [root@hadoop101 ~]# ls -al

    -rwxrwxrwx. 1 atguigu root 551 5 月 23 13:02 houge.txt

    递归改变文件所有者和所有组

    [root@hadoop101 xiyou]# ll

    drwxrwxrwx. 2 root root 4096 9 月 3 21:20 xiyou

    [root@hadoop101 xiyou]# chown -R atguigu:atguigu xiyou/

    [root@hadoop101 xiyou]# ll

    drwxrwxrwx. 2 atguigu atguigu 4096 9 月 3 21:20 xiyou

1.6.4 chgrp改变所属组

  • 基本语法

    chgrp [最终用户组] [文件或目录] 功能描述:改变文件或者目录的所属组

  • 案例实操

    修改文件的所属组

    [root@hadoop101 ~]# chgrp root houge.txt

    [root@hadoop101 ~]# ls -al

    -rwxrwxrwx. 1 atguigu root 551 5 月 23

相关推荐
林农24 分钟前
C05S14-MySQL高级语句
linux·mysql·云计算
码农君莫笑1 小时前
《信管通低代码信息管理系统开发平台》Windows环境安装说明
服务器·数据库·windows·低代码·c#·bootstrap·.netcore
Wanliang Li1 小时前
Linux电源管理——CPU Hotplug 流程
linux·嵌入式硬件·嵌入式·armv8·电源管理·cpuhotplug
fnd_LN1 小时前
Linux文件目录 --- mkdir命令,创建目录,多级目录,设置目录权限
linux·运维·服务器
达帮主1 小时前
7.C语言 宏(Macro) 宏定义,宏函数
linux·c语言·算法
行思理1 小时前
Linux 下SVN新手操作手册
linux·运维·svn
初学者丶一起加油2 小时前
C语言基础:指针(数组指针与指针数组)
linux·c语言·开发语言·数据结构·c++·算法·visual studio
一只搬砖的猹2 小时前
cJson系列——常用cJson库函数
linux·前端·javascript·python·物联网·mysql·json
IPdodo全球网络服务3 小时前
如何通过TikTok引流到私域流量池
运维·服务器·网络
莫固执,朋友3 小时前
Linux下编译 libwebsockets简介和使用示例
linux·websocket·音视频