Linux入门初识Linux

简介: Linux入门初识Linux
为什么学习命令
  • Linux刚面世是并没有图形界面,所有操作都靠命令完成,如磁盘操作、文件存取、目录操作、进程管理、文件权限
  • 工作中,大量的服务器维护工作都是在远端通过SSH客户端来完成的,并未使用图形界面,所有的维护工作都需要通过命令来完成。

1、Linux用户和用户组管理

Linux用户分为以下几种

  • root用户:也称超级用户,UID为0,权限最高。
  • 系统用户:也称虚拟用户、伪用户、假用户,是系统自身拥有的用户,UID为1~999,比如bin、daemon、adm、ftp、mail等,不具有登录Linux系统的能力,但却是系统运行不可缺少的用户。
  • 普通用户:UID为1000~60000,可以登录系统,操作自己目录的内容。

/etc/passwd文件:是Linux系统识别用户的重要文件,所有的用户都记录在该文件中。一行表示一个用户的账户信息,有7个段位,依次为用户名、密码、用户标识号UID、用户所属的主要群组标识号GID、用户名全称、用户主目录、用户使用的Shell类型。UID是用户的ID值,在系统中每一位用户的UID值都是唯一的。UID是确认用户权限的标识,用户登录系统所处的角色是通过UID来实现的,而不是用户名。

/etc/shadow文件:是/etc/passwd的影子文件,与/etc/passwd是对应互补的,内容包括用户及被加密的密码以及其他/etc/passwd不能包括的信息,比如用户账户的有效期限等。该文件只有root用户可以读取和操作。

用户主组、附加组:一个用户账户可以属于多个组群,挑一个作为用户的主组,即用户登录系统后属于该组。

用户管理命令

1、添加用户

使用者权限:管理员用户(root)

user 选项 用户名

参数:

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

切换用户

su 用户名

以下为useradd常用选项

修改用户密码

passwd 选项 用户名

可使用的选项:

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

修改已有用户信息使用usermod命令

usermod 选项 用户名

删除用户

userdel 选项 用户名

-f:强制删除用户,即使用户当前已登录;

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

用户组

增加用户组

新增一个用户组,然后将用户添加到组中

使用者权限:管理员用户

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

修改用户组
使用者权限:管理员用户

groupmod 选项 用户组

常用的选项有:

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

系统管理

日期管理

当前日期如果通过date进行设置,在系统重启后不会保存date的设置,常用的只是通过date命令查看日期

date 可以用来显示或设定系统的日期与时间

使用者权限:所有用户

语法如下:

date [参数选项]

参数

-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;

-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;

-u:显示GMT;

–help:在线帮助;

–version:显示版本信息

显示时间

date

设置时间

date -s "2020-08-08 12:00:00"

(1)UTC

协调世界时,又称世界统一时间、世界标准时间、国际协调时间。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC。。

(2)GMT

格林尼治 平太阳时间,是指格林尼治所在地的标准时间,也是表示地球自转速率的一种形式

**外文名:**Universal Time

其他外文名G.M.T.(Greenwich Mean Time)

(3)CST

北京时间 (中国国家标准时间)

北京时间是中国采用国际时区东八时区的区时作为标准时间

北京时间并不是北京(东经116.4°)的地方时间,而是东经120°的地方时间,故东经120度地方时比北京的地方时早约14分半钟。因为北京处于国际时区划分中的东八区,同格林尼治时间(世界时)整整相差8小时(即北京时间=世界时+8小时),故命名为“北京时间”。东八区包括的范围从东经112.5°到东经127.5°,以东经120°为中心线,东西各延伸7.5°,总宽度为15°的区域。

而中国幅员辽阔,东西相跨5个时区(即东五区、东六区、东七区、东八区、东九区5个时区)授时台必须建在地理中心地带,从而也就产生了长短波授。“北京时间”与“北京当地时间”是两个概念, “北京时间”的发播不在北京,而在陕西蒲城(处于东七区)

(4)东八区

东八区(UTC/GMT+08:00)是比世界协调时间(UTC)/格林尼治时间(GMT)快8小时的时区,理论上的位置是位于东经112.5度至127.5度之间,是东盟标准的其中一个候选时区。当格林尼治标准时间为0:00时,东八区的标准时间为08:00

显示用户

logname命令用于显示用户名称

logname

sudo执行

比如我们使用普通用户操作用户或者操作用户组、以及修改网卡配置文件的时候,需要切换到root用户才操作,此时我们可以使用sudo命令提高普通用户的操作权限,以达到操作目的

sudo:控制用户对系统命令的使用权限,root允许的操作。

通过sudo可以提高普通用户的操作权限

使用者权限:普通用户

修改网卡配置文件

比如,在下面的例子中,我们使用普通用户修改网卡的配置文件,在进行保存的时候,提示我们【无法打开并写入文件】,那么此时,我们可以通过sudo命令来提升自己的写入权限

执行:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

执行效果如下(保存)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iKz1dX56-1598610050784)(assets/1576494207598.png)]

然后点击回车

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Sc7CONWo-1598610050789)(assets/1576493914410.png)]

那么我们在修改上面的 命令,使用sudo进行修改

sudo   vi /etc/sysconfig/network-scripts/ifcfg-ens33

执行效果如下(键入itcast密码)

执行保存

我们发现此时就不在报错了

top命令

在企业级开发中,开发人员(运维人员也会经常使用)常常为了查看服务器上运行的程序占用的CPU情况以及占用内存情况,目的就是检测我们的程序是否在正常范围内运行

top命令用于实时显示 process 的动态。

使用权限:所有使用者。

显示进程信息

top

按q键退出

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

PID — 进程id

USER — 进程所有者

PR — 进程优先级

NI — nice值。负值表示高优先级,正值表示低优先级

VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR — 共享内存大小,单位kb

S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

%CPU — 上次更新到现在的CPU时间占用百分比

%MEM — 进程使用的物理内存百分比

TIME+ — 进程使用的CPU时间总计,单位1/100秒

COMMAND — 进程名称(命令名/命令行)

显示完整命令,与top命令不同的就是command属性像是进行了命令补全

top -c

显示指定进程信息

top -p 4160

ps命令

ps命令类似于我们在Windows中通过任务管理器查看进程信息

Linux ps命令用于显示当前进程 (process) 的状态信息

使用者权限:所有用户

语法如下:

ps

显示进程信息

ps -A

显示指定用户信息

ps -u itcast

显示所有进程信息

ps -ef

kill命令

引子:
前面,我们刚刚学习完了Windows上开发,比如,我们经常遇到的要给问题就是,我们需要经常的启动或者重启tomcat,有的时候会报端口冲突,这个时候,我们可能就去Windows的任务管理器中去结束这个进程
那么在Linux中我们可以通过kill命令来实现Windwos上手工结束进程的操作

Linux kill命令用于删除执行中的程序或工作(可强制中断)

使用者权限:所有用户

语法如下:

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

参数说明

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

杀死一个进程

kill 15642

强制杀死进程

kill -KILL 15642

彻底杀死进程

kill -9 15642

杀死指定用户所有进程

1.方法一 过滤出itcast用户进程

kill -9 $(ps -ef | grep itcast)

2.方法二,直接杀死

kill -u itcast

注意

上面列举了很多kill进程的命令

但是我们我们常用的就是kill -9命令,我们常常找到进程的pid

然后通过kill -9进行杀死进程

关机命令

shutdown命令可以用来进行关闭系统,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机

使用者权限:管理员用户

语法如下:

shutdown [-t seconds] [-rkhncfF] time [message]

参数说明

  • -t seconds : 设定在几秒钟之后进行关机程序。
  • -k : 并不会真的关机,只是将警告讯息传送给所有使用者。
  • -r : 关机后重新开机。
  • -h : 关机后停机。
  • -n : 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机。
  • -c : 取消目前已经进行中的关机动作。
  • -f : 关机时,不做 fcsk 动作(检查 Linux 档系统)。
  • -F : 关机时,强迫进行 fsck 动作。
  • time : 设定关机的时间。
  • message : 传送给所有使用者的警告讯息。

立即关机

shutdown -h now
或者
shudown

指定1分钟后关机,1分钟关机并显示警告信息

shutdown +1 “System will shutdown after 1 minutes”

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o3VdVNAV-1598612029730)(assets/1576059932470.png)]

指定1分钟后重启,并发出警告信息

shutdown –r +1 “1分钟后关机重启”

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hc3wMis2-1598612029738)(assets/1576060232485.png)]

重启命令

reboot命令用于用来重新启动计算机

使用者权限:管理员、普通(需要验证)用户

语法如下:

reboot [-n] [-w] [-d] [-f] [-i]

参数

  • -n : 在重开机前不做将记忆体资料写回硬盘的动作
  • -w : 并不会真的重开机,只是把记录写到 /var/log/wtmp 档案里
  • -d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d)
  • -f : 强迫重开机,不呼叫 shutdown 这个指令
  • -i : 在重开机之前先把所有网络相关的装置先停止

开始重新启动

reboot
目录
相关文章
|
3月前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
242 73
|
1月前
|
Unix Linux Shell
linux入门!
本文档介绍了Linux系统入门的基础知识,包括操作系统概述、CentOS系统的安装与远程连接、文件操作、目录结构、用户和用户组管理、权限管理、Shell基础、输入输出、压缩打包、文件传输、软件安装、文件查找、进程管理、定时任务和服务管理等内容。重点讲解了常见的命令和操作技巧,帮助初学者快速掌握Linux系统的基本使用方法。
74 3
|
2月前
|
机器学习/深度学习 Linux 编译器
Linux入门3——vim的简单使用
Linux入门3——vim的简单使用
61 1
|
2月前
|
Linux Shell Windows
Linux入门1——初识Linux指令
Linux入门1——初识Linux指令
36 0
Linux入门1——初识Linux指令
|
6月前
|
存储 Linux Android开发
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility 是一个完全开源的工具,用于从内存 (RAM) 样本中提取数字工件。支持Windows,Linux,MaC,Android等多类型操作系统系统的内存取证。针对竞赛这块(CTF、技能大赛等)基本上都是用在Misc方向的取证题上面,很多没有听说过或者不会用这款工具的同学在打比赛的时候就很难受。以前很多赛项都是使用vol2.6都可以完成,但是由于操作系统更新,部分系统2.6已经不支持了,如:Win10 等镜像,而Volatility3是支持这些新版本操作系统的。
|
2月前
|
存储 数据可视化 Linux
Linux 基础入门
Linux 基础入门
|
2月前
|
Linux Go 数据安全/隐私保护
Linux入门2——初识Linux权限
Linux入门2——初识Linux权限
30 0
|
4月前
|
Java Shell Linux
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
关于如何使用Shell脚本来解析Linux系统中的应用服务日志,提供了脚本实现的详细步骤和技巧,以及一些Shell编程的技能扩展。
66 0
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
|
4月前
|
存储 Ubuntu Linux
Linux基础入门
Linux基础入门
33 1
|
4月前
|
Ubuntu Linux Shell
Linux 终端入门
Linux 终端入门
43 0