Linux基础 第四天

Linux :多用户的操作系统

(1)、每个用户运行一个进程时,都是独占一整套系统资源(1CPU 、8G内存、IO资源)。
a(内存共享):用户将文件(或者说执行文件)放入内存中运行之前,会先开辟一块虚拟内存,用于存储文件。当两个用户执行同一个进程时,理论上会使用同一个内存地址,但是此时同一个内存地址是位于其各自的虚拟内存中的同一个内存地址。虚拟内存和真实内存之间存在一张映射表,虚拟内存会通过映射表对应真实内存的一个真实地址中。即两个用户的进程占用的内存比较少的时候,但是又是相同的进程。两个用户的进程在虚拟内存中的地址是一样的,但是为了不在真实内存中“撞车”,虚拟内存的文件进入真实内存中时,会根据一张映射表将其分配到不同的地址。从而使得文件地址不冲突。
b(IO资源):首先一开始是在读取A文件,但是属于A用户使用IO资源的时间到了,该执行读取B文件了。此时计算机会将A文件读取的位置保存下来,然后就用IO资源去读取B文件,若是B文件也没有读取完,但是时间到了,计算机就会记录下B文件此时读取的位置,然后IO资源会从之前保存的A文件读取的位置继续读取A文件。
c(CPU资源):时间片。
Linux系统的每一个进程或者线程都将拥有完整一套资源集。
进程:进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位。进程由内存空间(代码,数据,进程空间,打开的文件)和一个或多个线程组成。
线程:是程序执行中一个单一的顺序控制流程,是处理器调度和分派的基本单位。(线程是程序执行的最小单位,而进程时操作系统分配资源的最小单位)
协程:协程是一种用户态的轻量级线程,协程的跳读完全由用户控制。协程控制时,当某个任务遇到阻塞时,它会自动切换到其他任务,当其他任务遇到阻塞时再切换到另一个任务。

帮助获取

内部命令:Linux内部命令被构建在shell之中,常驻内存。
内部命令
外部命令:外部命令是一条单独的可执行文件,存放于磁盘中。
外部命令
file :获取命令遵循特定格式规范。(需要找到命令所在的位置,例如 file /usr/bin/ls)
type :判断命令是否是内部命令。
help :获取内部命令帮助
whatis ls :该命令等同于使用 man -f命令(需要虚拟机运行时间)
1 :用户指令
5 :文件系统

man 1 ls:
info :在线帮助

使用 echo $? 命令 会显示出上一个命令的退出状态
0 正常
1 一般问题 (例如:无法访问子文件夹)
2 严重问题 (例如:无法使用命令行参数)
执行命令时,会根据PATH的路径去找命令:
在这里插入图片描述

vim :文本编辑器,vi —>vim

“命令模式” :dd: 删除当前行
u: 撤销
yy:复制
p:粘贴
x:删除当前字符
/: 查找,从当前到文尾
?: 查找,从当前到文前
n:
N:
h: <–
l: -->
j: 下
k: 上

		  翻页:pgup,pgdn;ctrl+F,ctrl+B
		  0,"^",home : 跳到行首
		  $,end :跳到行尾
		  G: 跳到文尾
		  gg: 跳到文首
		  10gg:
		  10G:

命令模式—>“编辑模式” : i: 所在位置前插入
a: 所在位置后插入
o: 下一行
O: 上一行

“编辑模式” —“命令模式” : esc

“末行模式” :
:q 退出
:q!强制退出
:w 保存
:w! 强制保存
:x 保存退出

KDE 、GNome

KDE :K桌面环境(K Desktop Environment)的缩写。
一种著名的运行于 Linux、Unix 以及FreeBSD 等操作系统上的自由图形桌面环境,整个系统采用的都是 TrollTech 公司所开发的Qt程序库(属于Digia公司)。KDE是Linux 操作系统上流行的桌面环境之一。
KDE 是一个网络透明的现代化桌面环境,支持Linux、 FreeBSD、Unix、其它类Unix、Mac OS X和微软的Windows。 位于Linux的用户空间。
GNome:GNOME是一套纯粹自由的计算机软件,运行在操作系统上,提供图形桌面环境。
GNOME 包含了 Panel (用来启动此程式和显示目前的状态)、桌面 (应用程式和资料放置的地方)及一系列的标准桌面工具和应用程式,并且能让各个应用程式都能正常地运作。
GNOME是Linux操作系统上最常用的图形桌面环境之一。
位于Linux的用户空间。

GPL通用公共许可证

GPL:是GNU General Public License的缩写,是GNU通用公共授权非正式的中文翻译。它并非由自由软件基金会所发表,亦非使用GNU通用公共授权的软件的法定发布条款─只有GNU通用公共授权英文原文的版本始具有此等效力。
GPL 通用公共许可证:

大多数软件许可证决意剥夺你共享和修改软件的自由。相比之下,GNU通用公共许可证试图保证你共享和修改软件的自由。——保证自由软件对所有用户是自由的。GPL适用于大多数自由软件基金会的软件,以及由使用这些软件而承担义务的作者所开发的软件。(自由软件基金会的其他一些软件受GNU库通用许可证的保护)。你也可以将它用到你的程序中。当我们谈到自由软件(free software)时,我们指的是自由而不是价格。
为了保护你的权利,我们需要作出规定:禁止任何人不承认你的权利,或者要求你放弃这些权利。如果你修改了自由软件或者发布了软件的副本,这些规定就转化为你的责任。
例如,如果你发布这样一个程序的副本,不管是收费的还是免费的,你必须将你具有的一切权利给予你的接受者;你必须保证他们能收到或得到源程序;并且将这些条款给他们看,使他们知道他们有这样的权利。
我们采取两项措施来保护你的权利。
(1)给软件以版权保护。
(2)给你提供许可证。它给你复制,发布和修改这些软件的法律许可。
同样,为了保护每个作者和我们自己,我们需要清楚地让每个人明白,自由软件没有担保(no warranty)。如果由于其他某个人修改了软件,并继续加以传播。我们需要它的接受者明白:他们所得到的并不是原来的自由软件。由其他人引入的任何问题,不应损害原作者的声誉。
最后,任何自由软件不断受到软件专利的威胁。我们希望避免这样的风险,自由软件的再发布者以个人名义获得专利许可证。事实上,将软件变为私有。为防止这一点,我们必须明确:任何专利必须以允许每个人自由使用为前提,否则就不准许有专利。

Shell

(1) Shell
shell 命令解释器,其程序存在于用户空间,是人机交互的屏障,对内核其保护作用。
(2) 常见shell的种类
Bourne Shell(sh):在许多Unix系统中,是root用户的默认的shell
Bourne -Again Shell(bash): —>大多数Linux发行版的默认shell类型
Korn Shell(ksh): 它完全向上兼容Bourne Shell 并包含了C Shell很多
C Shell: 标识为csh。由于语法类似于C语言,因此称为C Shell 。
CentOS Linux系统默认的shell为bash。

(3) bash 特点:

*1.*补全:按tab键
(1)命令补全
按照环境变量PATH定义的路径查找命名:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

(2)路径补全
在当前显示的路径下查找目录:
[root@localhost ~]# cd /etc/sysconfig/network-scripts/

2.保存历史命令
作用:方便命令操作
查看系统上执行过的命令

(1)查看历史命令:
[root@localhost ~]# history

在这里插入图片描述
(2)历史命令将保存在用户家目录下的 .bash_history 文件中。
[root@localhost ~]# vim .bash_history
在这里插入图片描述
(3)不同用户将拥独立的历史命令。
(4)历史命令默认不会立即写入文件,当bash程序退出时,写入文件。
(5)保持历史命令存在安全隐患,系统默认保存1000条历史命令。
[root@localhost ~]# echo $HISTSIZE
在这里插入图片描述
修改历史命令保存条目:
临时:
[root@localhost ~]# HISTSIZE=10
永久:
[root@localhost ~]# vim /etc/profile
[root@localhost ~]# source /etc/profile
(6)如何给历史命令添加时间戳?
[root@localhost ~]# vim /etc/profile
HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "
[root@localhost ~]# source /etc/profile
在这里插入图片描述
(7)
创建多级目录:
[root@localhost ~]# mkdir -p /data/123/456

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值