Linux 第一节 基础操作

本文详细介绍了Linux的基础操作,包括用户和用户组管理(添加、修改、删除、权限)、系统管理(日期、用户切换、权限执行)、目录管理(文件与目录操作、权限控制)和文件属性管理(属主、属组、chmod权限设置)。
摘要由CSDN通过智能技术生成

一、Linux 用户和用户组管理

1.Linux账号管理

1.添加用户

 useradd 选项 用户名
  • -c comment 指定一段注释性描述。
  • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
  • -g 用户组 指定用户所属的用户组。
  • -G 用户组,用户组 指定用户所属的附加组。
  • -s Shell文件 指定用户的登录Shell。
  • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

2.用户口令

passwd 选项 用户名
  • -l 锁定口令,即禁用账号。
  • -u 口令解锁。
  • -d 使账号无口令。
  • -f 强迫用户下次登录时修改口令。

3.修改用户

usermod 选项 用户名

相当于我们在Windows系统中修改一个用户,只是我们在CentOS中是修改用户是通过命令完成的

4.删除用户

userdel 选项 用户名
  • -f:强制删除用户,即使用户当前已登录;

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

2.Linux用户组

1.增加用户组

使用者权限:管理员用户

groupadd 选项 用户组
  • -g GID 指定新用户组的组标识号(GID)。
  • -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同

2.修改用户组

使用者权限:管理员用户

groupmod 选项 用户组
  • -g GID 为用户组指定新的组标识号。
  • -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
  • -n新用户组 将用户组的名字改为新名字
    将组haha的组名修改为hahaha
groupmod -n hahaha haha

3.查询用户所属组

在查询用户所属的用户组前,我们先增加一个用户gao,新建一个组haha

useradd gao
groupadd haha

要查询一个用户属于哪个用户组,使用groups命令,其格式如下

groups 用户名

查询用户gao属于某个用户组,执行groups命令

groups gao

4.删除用户组

使用者权限:管理员用户
要删除一个已有的用户组,使用groupdel命令,其格式如下

groupdel 用户组

删除hahaha用户组,注意不能删除gao的用户组

groupdel hahaha

3.将用户添加到组

1.已经存在的用户添加到组中 usermod -a -G 组名 用户名

usermod -a -G haha gao

2.新用户添加到指定组 useradd -g 组名 新用户名

新用户添加到指定组  useradd -g 组名 新用户名

二、系统管理

1.日期管理

date 可以用来显示或设定系统的日期与时间
使用者权限:所有用户
语法如下:

date [参数选项]

参数:

-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
-u:显示GMT;
–help:在线帮助;
–version:显示版本信息

1.设置时间

用 -s选项可以设置系统时间,如下: s setting

date -s "2020-12-11 16:15:00"

2.查看时间

date

2.显示用户

logname命令用于显示用户名称。
执行logname指令,它会显示目前用户的名称
语法为如下:

logname [--help][--version]

参数:

  • –help  在线帮助。
  • –vesion  显示版本信息。
    显示登录账号的信息
logname

3.su切换账户

su命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。
使用权限:所有使用者。
语法如下:

su

从root管理员权限切换到其他用户,直接 su 用户名

su gao

切换到root

exit

如果你最初登录的不是管理员则用
su root ,然后输入密码

4.sudo执行

1.执行

  • yum install lrzsz -y
    上传,直接拖拽
    下载 sz 文件名
  • sudo:控制用户对系统命令的使用权限,root允许的操作。
    通过sudo可以提高普通用户的操作权限
    使用者权限:普通用户

2.语法如下:

sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command

3.参数说明

  • -V 显示版本编号
  • -h 会显示版本编号及指令的使用方式说明
  • -l 显示出自己(执行 sudo 的使用者)的权限
  • -v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码
  • -k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
  • -b 将要执行的指令放在背景执行
  • -p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
  • -u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)
  • -s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
  • -H 将环境变数中的 HOME 指定为要变更身份的使用者HOME目录(如不加 -u 参数就是系统管理者 root )
  • command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令

5.top命令

1.使用

top命令用于实时显示 process 的动态。
使用权限:所有使用者。
显示进程信息

top

2.各进程(任务)的状态监控属性解释说明:

PID:进程ID
USER:进程的所有者
PR:进程的优先级
NI:
VIRT:占用的虚拟内存
RES:占用的物理内存
SHR:使用的共享内存
S:进行状态 S:休眠 R运行 Z僵尸进程 N nice值为负
%CPU:占用的CPU
%MEM:占用内存
TIME+: 占用CPU的时间的累加值
COMMAND:启动命令

  • 显示指定的进程信息,以下显示进程号为6972的进程信息,CPU、内存占用率等
 top -p 1

6.ps命令

Linux ps命令用于显示当前进程 (process) 的状态信息
使用者权限:所有用户
常用语法如下:

ps -ef | grep 进程名称

7.kill命令

Linux kill命令用于删除执行中的程序或工作(可强制中断)
使用者权限:所有用户
语法如下:

kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]

参数说明

  • -l <信息编号>  若不加<信息编号>选项,则-l参数会列出全部的信息名称。
  • -s <信息名称或编号>  指定要送出的信息。
  • [程序]  [程序]可以是程的PID或是PGID,也可以是工作编号。

杀死一个进程

 kill - 9 进程号

8.clear命令

clear命令用于清除屏幕
使用者权限:所有使用者都可使用。
语法

clear

三、Linux目录管理

1.Linux 文件与目录管理

1.目录常用命令

1) ls:列出目录
ls [选项]  目录名称

选项与参数:

  • -a :全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用)
  • -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
  • -l :长数据串列出,包含文件的属性与权限等等数据;(常用)
 ls -l

ls -l 可以查看文件夹下文件的详细信息, 从左到右 依次是:

  • 权限(A区域), 第一个字符如果是 d 表示目录
  • 硬链接数(B区域), 通俗的讲就是有多少种方式, 可以访问当前目录和文件
  • 属主(C区域), 文件是所有者、或是叫做属主
  • 属组(D区域), 文件属于哪个组
  • 大小(E区域):文件大小
  • 时间(F区域):最后一次访问时间
  • 名称(G区域):文件的名称
2) cd:切换目录

Linux的cd切换目录,相当于我们在Windows中通过鼠标或者快捷键点开不同的目录
注意:在Linux系统当中, cd 命令算是比较常用的命令
cd是Change Directory的缩写,这是用来变换工作目录的命令
使用者权限:所有使用者都可使用。
语法如下:

 cd [相对路径或绝对路径]
3) pwd: 显示目前的目录

执行pwd命令相当于我们在Windows系统路径导航栏中查看到的当前浏览位置信息
查看当前所在目录

pwd -P
4) mkdir:创建一个新的目录

Linux的mkdir命令相当于我们在Windows中通过鼠标或者快捷键新建文件夹
mkdir命令用于建立名称为 dirName 之子目录
使用权限:于目前目录有适当权限的所有使用者
语法

mkdir [-p] dirName

参数说明:

  • -p 确保目录名称存在,不存在的就建一个
    建立一个名为jinyanlong 的子目录
mkdir video

在工作目录下的 aaa目录中,建立一个名为 bbb的子目录。 若 aaa目录原本不存在,则建立一个。(注:本例若不加 -p,且原本 aaa目录不存在,则产生错误。)

mkdir -p aaa/bbb
5) rmdir:删除一个空的目录

Linux的rmdir命令相当于我们在Windows中通过鼠标或者快捷键删除文件夹。
稍微有点不同的就是在Linux中删除子目录的时候,如果主目录下没有了目录以及文件,会连同主目录同时删除了(需要写Linux带有P的参数)
rmdir命令删除空的目录
使用权限:于目前目录有适当权限的所有使用者。
语法

rmdir [-p] dirName

参数

  • -p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。
    将工作目录下,名为 jinyanlong 的子目录删除 :
rmdir video

在工作目录下的 aaa目录中,删除名为 bbb的子目录。若 bbb删除后,aaa目录成为空目录,则 aaa同时也会被删除

rmdir  -p aaa/bbb
6) cp: 复制文件或目录

Linux的cp命令相当于我们在Windows中通过鼠标或者快捷键复制文件或者目录
cp命令主要用于复制文件或目录。
使用权限:于目前目录有适当权限的所有使用者
语法

cp [options] source dest

或者

cp [options] source... directory

参数说明:

  • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
  • -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
  • -f:覆盖已经存在的目标文件而不给出提示。
  • -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r/R:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  • -l:不复制文件,只是生成链接文件。

我们将当前目录"aaa/"下的所有目录以及文件复制到新目录"ccc"下,输入如下命令:
1、数据准备

创建aaa目录并且aaa下包含bbb目录

mkdir -p aaa/bbb
mkdir -p ccc

aaa目录下有bbb
ccc下面没有目录和文件

2、执行复制

cp –r aaa/*  ccc  

我们将aaa下面的所有文件、目录复制到了目录c下面
scp root@82.157.173.221:/usr/local/elasticsearch-7.12.1-linux-x86_64.tar.gz /home

7) rm: 删除目录

Linux的rm命令相当于我们在Windows中通过鼠标或者快捷键删除文件或者目录
rm命令用于删除一个文件或者目录。
使用权限:于目前目录有适当权限的所有使用者
语法

rm [options] name...

参数:

  • -i 删除前逐一询问确认。
  • -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
  • -r 将目录及以下之档案亦逐一删除。

常用 rm -rf 文件 (删除命令慎重使用)

8) mv:移动文件与目录或修改文件与目录的名称

Linux的mv命令相当于我们在Windows中通过鼠标或者快捷键剪切(+重命名)+粘贴文件或者目录
mv 命令用来为文件或目录改名、或将文件或目录移入其它位置
语法

mv [options] source dest
mv [options] source... directory

参数说明:

  • -i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
  • -f: 在 mv 操作要覆盖某已有的目标文件时不给任何指示;
9) touch

创建文件

touch 文件名
10) 自动补全
  • 在敲出 文件/ 目录 / 命令 的前几个字母之后, 按下 tab
  • 如果还存在其他 文件 / 目录 / 命令, 再按一下tab键, 系统会提示可能存在的命令

2.Linux 文件基本属性

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。

  • 当为[ d ]则是目录
  • 当为[ - ]则是文件;
  • 若是[ l ]则表示为链接文档(link file);
  • 若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字符中,以三个为一组,且均为『rwx』 的三个参数的组合。其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号[ - ]而已。

3.Linux文件属主和属组

1.chown更改属主和属组

Linux是多任务操作系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限
使用权限 : 管理员账户
语法如下

chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
 chown han a.txt

2.chmod权限命令

Linux文件属性有两种设置方法,一种是数字,一种是符号
Linux的文件调用权限分为三级 : 文件属主、属组、其他。利用 chmod 可以控制文件如何被他人所调用。
使用权限 : 所有使用者
语法

chmod [-cfvR] [--help] [--version] mode file...

参数说明
mode : 权限设定字串,格式如下

[ugoa...][[+-=][rwxX]...][,...]

u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。

+表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。

1)数字权限

Linux文件的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx—] 分数则是:

  • owner = rwx = 4+2+1 = 7
  • group = rwx = 4+2+1 = 7
  • others= — = 0+0+0 = 0
    所以等一下我们设定权限的变更时,该文件的权限数字就是770啦,变更权限的指令chmod的语法是这样的
chmod [-R] xyz 文件或目录

选项与参数:

  • xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
  • -R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更

上面的 可以表示如下

chmod  -R 770     档案或目录
2) 符号权限

还有一个改变权限的方法,就是 符号权限,我们先回顾下之前提到的9个权限

  • (1)user 属主权限
  • (2)group 属组权限
  • (3)others 其他权限

那么我们就可以使用 u, g, o 来代表三种身份的权限!
如果我们需要将文件权限设置为 -rwxr-xr– ,可以使用 chmod u=rwx,g=rx,o=r 文件名 来设定:

chmod u=rx,g=rw,o=r a.txt

假如我们要将权限去掉而不改变其他已存在的权限呢?举个例子,比如我要拿掉全部人的可读权限,则

chmod  o-r a.txt
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值