最新要闻
- 全球热点评!国产GPU公司景嘉微募资42亿:研发高性能显卡 可用于大型游戏
- 积极拥抱生僻字!阿里普惠体推出3.0版本:免费商用-当前讯息
- 今日关注:为何坚持使用高压油箱?吉利研究院副院长:常压油箱不可能达标
- 音视频会议神器!阿里云通义听悟正式发布:轻松记录总结、实时翻译
- 2K-3K价位段无敌!Redmi K60斩获618首销双冠军|每日讯息
- 天天新消息丨淘宝开店多少钱能开直通车_淘宝开店多少钱
- 低到13.48万元起步 江西五十铃现款D-MAX年中大促_全球热点评
- 被人类幼崽萌化的瞬间:画面实在太可爱!祝愿大家六一快乐
- 访华后特斯拉股价大涨 马斯克重返世界首富宝座
- 播报:老外试驾法拉第未来FF 91被震撼:从未见过副驾驶有屏幕的车子
- 旧机福音 极限精简版Win10系统Tiny10更新:64位支持来了|全球百事通
- 坐飞机也要称体重 新西兰航空登机前将给国际旅客称重-天天热推荐
- 仙佑膏药逐步实现标准化 公司规范化生产管理水平
- 环球热文:南运河南路与金钟桥大街交口车行道调整
- 全球快报:14代酷睿有望首发 Intel开发Wi-Fi 7芯片:网速狂飙4.8千兆
- 热点!男孩六一表演化身行走表情包 全情投入阳光自信:网友看笑不愧C位
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Linux实验文档
Linux技术文档
1.说明
研究思路:从Linux外部向内部研究,从外部工具到系统内核深入的研究思路。本文档主要针对外部工具进行实验。并赋予实验结论。
(资料图片)
2.系统内核初识
1.系统内存管理:管理物理内存与虚拟内存(内核通过硬盘上的存储空间来时间虚拟内存,这块区域称为交换空间)
2.软件程序管理:init进程来启动其他所有进程。内核启动时,init进程会加载到虚拟内存中去。内核启动任何其他进程都会在虚拟内存中分配一块专有的区域来存储进程用到的数据和代码。用一个表来管理需要开机启动的程序。Linux有5个启动运行级
3.硬件设备管理:编译进内核的驱动代码、可插入内核的设备驱动模块。
4.文件系统管理:
3.Shell操作文件和目录
1.GUN bash shell能提供对linux系统的交互方式访问。作为普通程序运行,在用户登录终端时启动,登陆时系统启动的shell依赖于用户账户的配置。
/etc/passwd文件包含了所有系统用户账户列表以及每个用户的基本配置信息。每个条目都有7个字段,用冒号分隔开。第7个字段说明用户是否使用了shell程序。条目截图如图3.1所示。可以清晰验证这一说法。
图3.1 条目截图
Ps:CLI(命令行界面)
2.提示符显示了用户名和系统名。如图3.2所示
图3.2提示符
3.bash手册(bash手册不是学习指南,而是快速参考,也就是要有一定的使用基础)
Man命令用来访问存储在Linux系统上的手册页面,在想要查找的工具名称前面输入man命令,就可以找到那个工具相应的手册条目。如图3.3时查早ps命令的手册页面;DESCRIPTION段落主要是技术行话。显示是用分页程序(pager)来显示。操作空格、回车、箭头、q。
图3.3ps命令手册
3.Linux文件系统
Linux将文件存储在单个目录结构中,这个目录被称为虚拟目录。虚拟目录将安装在pc的所有存储设备的文件路径纳入单个目录结构中。
Linux虚拟目录结构只包含一个称为根目录的基础目录。根目录下的目录和文件会按照访问他们的目录路径一一列出。
Ps:Linux的\反斜杠用来表示转义字符。
Linux安装的第一块硬盘称为跟驱动器,跟驱动器包含了虚拟目录的核心,其他目录都是从那里开始构建的。
Linux会在根驱动器上创建一些特定的目录,我们称之为挂载点。挂载点是虚拟目录中用于分配额外存储设备的目录。虚拟目录会让文件和目录出现在这些挂在点目录中,然而实际上他们却存储在另外一个驱动器上。
通常系统文件会存储在根驱动器中,而用户文件则存储在另一驱动器中。
Linux顶层虚拟目录名及内容:
/:虚拟目录的根目录,通常不会在这里存储文件
/bin:二进制目录,存放许多用户级的GUN工具
/boot:启动目录,存放启动文件
/dev:设备目录,Linux在这里创建设备节点
/etc:系统配置文件目录
/home:主目录,Linux在这里创建用户目录
/lib:库目录,存放系统和应用程序的库文件、
/media:媒体目录,可移动媒体设备的常用挂载点
/mnt:挂载目录,另一个可移动设备的常用挂载点
/opt:可选目录,常用于存放第三方软件包和数据文件
/proc:进程目录,存放现有硬件及当前进程的相关信息。
/root:root用户主目录
/sbin:系统二进制目录,存放存放许多GUN管理员级工具
/run:运行目录,存放系统运作时的运行时数据
/srv:服务目录,存放本地服务的相关文件
/sys:系统目录,存放系统硬件信息的相关目录
/tmp:临时文件,可以在该目录中创建和删除临时工作文件
/usr:用户二进制目录,大量用户级的GUN工具和数据文件都存放在这里
/var:可变目录,可以存放经常变化的文件,比如日志文件。–
4.特殊字符用于相对文件路径中
单点符(.),表示当前目录
双点符(..),表示当前目录的父目录
5.ls显示当前目录下的文件和目录;按字母列排序
-F:用于区分文件与目录
隐藏文件在ls下不显示;以点开头;ls -a可以将全部文件包括隐藏的都显示出来
-R:递归,列出来当前目录下包括的子目录文件
Ls -l 显示更多信息
文件类型:目录d 文件- 字符型文件c 块设备b
文件权限
文件的硬连接总数
文件属主的用户名
文件大小:字节为单位
文件的上次修改时间
文件名或目录名
6.过滤器与通配符
问号(?)代表一个字符
星号(*)代表0个或多个字符
2.more bash
监测程序
1.进程(process):运行在系统上的程序;ps 命令能输出运行在系统上的所有程序的许多信息
2.默认情况下,ps只显示当前控制台当前用户的进程;ps:shell命令也是系统上的一个程序
进程的进程ID
运行在哪个终端
已用的CPU时间
Ps :Linux系统中使用的GUN ps命令支持3种不同类型的命令行参数:
Unix风格的参数:前面加(-)破折号
ps -ef 查看所有进程
-e 显示所有进程
-f 显示完整格式的输出
UID:启动这些进程的用户
PID:进程ID
PPID:父进程的进程号
C:进程生命周期中的CPU利用率
STIME:进程启动时的系统时间
TTY:进程启动时的终端设备
TIME:运行进程需要的累计CPU时间
CMD:启动的程序名称
ps -l会显示一个长格式
F:内核分配给进程的系统标记
S:进程状态:O代表正在运行、S代表正在休眠、R代表可运行,正在等待、Z代表僵化,进程结束但父进程已不在、T代表停止
PRI:进程的优先级(越大的数字代表越低的优先级)
NI:谦让度值用来参与决定优先级
ADDR:进程的内存地址
SZ:假如进程被唤出,所需交换空间的大致大小
WCHAN:进程休眠的内核函数的地址
BSD风格参数:前面不加破折号
ps l长模式输出;BSD与UNIX风格输出有些许不一样
VSZ:进程在内存中的大小,KB为单位
RSS:进程在为唤出时占用的物理内存大小
STAT:代表当前进程状态的双字符状态码
<:该进程运行在高优先级上
N:该进程运行在低优先级上
L:该进程有页面锁定在内存中
s:该进程时控制进程
l:该进程时多线程
+:该进程运行在后台
GUN分割参数:前面加双破折号
--forest:能够轻松的显示进程的层级信息
3.ps命令的局限:只能显示某个特定时间点的信息;如果想要观察那些频繁换进换出的内存的进程趋势,ps做不到
4.top命令:
第一行:当前时间、系统的运行时间、登录的用户数、系统的平均负载
平均负载:1分钟、5分钟、15分钟;平均负载高于2算系统比较繁忙
下一行显示的CPU概要:top根据进程的属主、进程的状态将CPU分钟几类输出;
下下一行:说明了内存状态;第一行是物理内存:总共有多少内存、当前用了多少、还空闲了多少、最后一行说的和上一行相同,只是针对系统的交换空间
5.结束进程:kill命令
Kill命令通过进程id给进程发信号。Kill命令会向命令行中列出的全部PID发送一个TERM信号。只能通过进程号而不能用进程名结束进程
要发送进程信号,必须是进程的属主或登录为root用户
-s支持其他信号;kill发送TERM信号告诉进程停止,但是也有进程不会停止。
6.killall命令
支持进程名结束进程;支持通配符结束进程,在系统负载过大时很有用
成功kill掉
监测磁盘空间
1.mount命令
默认情况下会输出当前系统挂载的设备列表
有4部分信息
媒体的设备文件名、媒体挂载到虚拟目录的挂载点、文件系统类型、已挂载媒体的访问状态
2.手动挂载媒体设备的基本命令
Mount -t type device directory
type:指定了磁盘被格式化的文件系统类型;U盘一般时vfat文件系统
例如:手动将u盘挂载到/media/disk1下
Mount -t vfat /dev/sbd1 /media/disk1
3.umount:从系统上移除一个可移动设备:不是直接移除,而是先卸载
umount [directory | device]:卸载命令;有设备或者程序在使用设备上的文件时,不允许卸载
4.df命令
df命令会显示每个有数据的已挂载文件系统
设备的文件位置
能容纳多少个1024字节大小的块
已用了多少个1024字节大小的块
还剩多少
已用空间所占比例
设备挂载到哪个挂载点上
df -h常用
Ps:df命令显示Linux系统认为的当前值,有可能系统上运行的进程已经创建或者删除了某个文件,但是尚未释放文件,这个值不会算进闲置空间的
5.lsof命令
可以获取使用文件的进程信息
6.du命令
du可以显示某个特定目录的磁盘使用情况
默认会显示当前目录下所有的文件、目录和子目录的磁盘使用情况;会以磁盘块为单位来表明某个文件或目录占用了多大的存储空间
-c:显示所有已列出文件的总大小
-h:
处理数据文件
1.sort命令:对数据进行排序
Sort按字符进行标准的字符排序
Sort -n不会向数字进行标准的字符排序
-M:按月进行排序,日志文件有用;只能识别3字符的月份
2.grep搜索数据
-v:输出不匹配该模式的行
-n:显示匹配的所有行
-c:知道多少行含有改匹配
-e:指定多个匹配模式
3.Linux压缩工具
bzip2:扩展名.bz2;采用Burrows-Wheeler块排序文件压缩算法和霍夫曼编码
compress:扩展名.Z;最初的unix文件压缩工具
gzip:扩展名.gz;GUN压缩工具,用的Lempel-Ziv编码
gzip:用来压缩文件
gzcat:用来查看压缩过的文本文件的内容
gunzip:用来解压文件
ps:可以一次压缩多个文件,或者采用通配符压缩
zip:扩展名.zip;windows上PKZIP工具的unix实现
4.归档数据;tar命令
tar function [options] object1 object2
-A :将一个tar追加到另一个tar中
-c:创建一个新的tar归档文件
-d:检查归档文件与文件系统的不同之处
-r:追加文件到已有的归档文件末尾
-x:从已有的tar归档文件中提取文件
-c:切换到指定目录
-f:输出结果到文件或设备file
-v:在处理文件时显示文件
组合使用
创建一个归档文件:tar -cvf test.tar test/ test2/
创建名为test.tar的归档文件,含有test和test2目录内容tar -tf
列出test.tar内容:tar -xvf test.tar
tar -zxvf filename.tgz来解压
3理解shell
Shell类型
1./etc/password下标记了shell程序
Root使用的时GUN bash shell
/bin/bash是一个可执行程序
Centos包括其他shell 包括tcsh
C shell的软连接
/bin/sh 作为默认的系统shell,用于那些要在启动时使用的系统shell脚本
不一定只使用默认的交互shell可以使用所有发行版本的shell
Shell的父子关系
1. 登录某个虚拟控制器终端时启动的默认的交互shell,是一个父shell
2.输入/bin/bash生成子shell
在生成子shell进程时,只有部分父进程的环境会被复制到子shell环境中
子shell可以从父shell中创建,也可以从子shell中创建
Exit逐层退出
除了能够推出子shell,也能够退出当前虚拟控制台终端,输入exit就能推出CLI
运行shell脚本也能够创建子shell
在shell之间加入分号”;”就可以运行多条命令
添加括号生成进程列表
echo $BASH_SUBSHELL返回0则没有子shell,返回1则有子shell
Shell的内建命令
4Linux环境变量
环境变量
Bash shell用一个叫做环境变量的特性来存储有关shell会话和工作环境信息。这项特性允许你在内存中存储数据,以便程序或shell中运行的脚本能够轻松访问到他们这也是存储持久数据的一种渐变方法
在bash shell中,环境变量分为两类;
全局变量:
对shell和子shell都是可见的,局部则只对创建他们的shell可见。这让全局环境变脸对那些所创建的子shell需要获取父shell信息的程序来说非常有用。
Env查看全局变量
Printenv显示个别环境变量
子shell也用全局变量
局部变量
基本和全局变量一样,可以自己定义局部变量,这个和全局变量不一致
Linux没有一个显示局部变量的命令
Set命令会显示一个特定进程的所有环境变量包括局部与全局
用户定义变量
在子shell中创建用户变量
1.通过等号赋值
echo $test_var
Bash shell所有的环境变量名均使用大写字母的标准管理。在自己创建的局部变量或者shell脚本时使用小写字母,这样能够避免重定义环境变量可能带来的灾难。
变量名、等号和值之间没有空格。如果有空格会把值当成当都命令
子shell的自定义环境变量在子shell的子shell中不可用;在子shell的父shell也不可用
2.设置全局变量
创建局部变量,再将局部变量导入到全局变量
修改子shell的全局变量并不会影响父shell的值。且子shell无法使用export设置全局变量
删除环境变量
3.删除环境变量
Unset命令;在使用该命令时,不要使用$
变量使用说明:如果要用到变量,使用$;如果要操作变量,不使用$
如果在子进程中删除一个全局变量,这只对子进程有效,对父进程无效
Shell环境变量
Bash shell源于当初的unix Bourne shell环境变量与其兼容,并有些自有的变量
P110-111
Ps:不是所有的默认环境变量都会在运行set命令时列出,尽管这些都是默认环境变量,但不是每个都必须有一个值。
PATH环境变量
PATH环境变量定义了用于进行命令和程序查找的目录。
如果命令或者程序没有包括在PATH中,那么如果不使用绝对路径,shell无法找到
应用程序不在PATH目录中,保证PATH环境变量包含了所有存放应用程序的目录
PATH=$PATH:/home/test(程序路径)
这种方式并不是永久的
定位系统环境变量
系统启动一个bash shell时,默认情况下bash会在几个文件中查找命令,这些文件叫做启动文件或者环境文件。Bash检查启动的检查文件取决于启动bash shell的方式。启动bash shell有3钟方式
登陆时作为默认登录shell
会从5个不同的启动文件里读取
/etc/profile
$HOME/.bash_profile
$HOME/.bashrc
$HOME/.bash_login
$HOME/.profile
/etc/profile文件是系统默认的bash shell的主启动文件。系统的每个用户登陆时都会执行启动文件
作为非登录shell的交互式shell
作为运行脚本的非交互shell
数组变量
关键词:
Linux实验文档
Python装饰器
全球热点评!国产GPU公司景嘉微募资42亿:研发高性能显卡 可用于大型游戏
积极拥抱生僻字!阿里普惠体推出3.0版本:免费商用-当前讯息
今日关注:为何坚持使用高压油箱?吉利研究院副院长:常压油箱不可能达标
音视频会议神器!阿里云通义听悟正式发布:轻松记录总结、实时翻译
2K-3K价位段无敌!Redmi K60斩获618首销双冠军|每日讯息
天天新消息丨淘宝开店多少钱能开直通车_淘宝开店多少钱
全球滚动:攻防世界_PWN_stack2
世界热头条丨MySQL表列数和行大小限制
天天观热点:为什么JS中0.1+0.2不等于0.3
美国会众议院通过债务上限法案 全球热点评
低到13.48万元起步 江西五十铃现款D-MAX年中大促_全球热点评
被人类幼崽萌化的瞬间:画面实在太可爱!祝愿大家六一快乐
访华后特斯拉股价大涨 马斯克重返世界首富宝座
播报:老外试驾法拉第未来FF 91被震撼:从未见过副驾驶有屏幕的车子
旧机福音 极限精简版Win10系统Tiny10更新:64位支持来了|全球百事通
坐飞机也要称体重 新西兰航空登机前将给国际旅客称重-天天热推荐
仙佑膏药逐步实现标准化 公司规范化生产管理水平
在 Ubuntu 上使用 ADB 备份 Android 数据 世界热议
环球热文:南运河南路与金钟桥大街交口车行道调整
全球快报:14代酷睿有望首发 Intel开发Wi-Fi 7芯片:网速狂飙4.8千兆
热点!男孩六一表演化身行走表情包 全情投入阳光自信:网友看笑不愧C位
26次高考落榜大叔继续冲击重本 网友吐槽哗众取宠、炒作:本人回应
【速看料】马斯克到访特斯拉上海超级工厂 陶琳深夜发声:激动人心 收获满满
头条:关于nokia_6270的问题
大数据面试题集锦-Hadoop面试题(二)-HDFS
世界关注:人民币汇率跌破7.1,原因是什么?专家解读
被苹果抛弃了!初代iPad Air被列为过时产品 观天下
超越苹果M2 AMD锐龙7000全新AI性能实战:等14代酷睿来战-世界关注
售价超2万元!苹果首款头显Reality Pro高清渲染图出炉:下周发布
环球关注:马娘翻译:被白兴大人附身的福来
2023年4月和5月随笔
儿童节的梦想!妈妈 我想要一本“黑客攻防指南”
热议:CPU时代又回来了?英伟达股价大跌5% 英特尔逆势上涨
SD协议-状态机-天天观速讯
世界微动态丨哪种商业医疗保险好呢_比较好的商业医疗保险
环球关注:杀6000万头差点灭绝 奉为国兽还杀:为何美国跟野牛过不去?
四辆车狭路相逢挤一起 网友:两车道整出四车道|天天通讯
世界热议:一个时代落幕!《英联联盟》今日13.11版重磅更新:正式放弃32位系统
美女云集!网飞韩剧《绝世网红》中字预告首曝:宋雨琦客串 世界观速讯
儿童节快乐!今天6月1日 微信上线卖萌、带娃限时状态
天天新资讯:禾的组词一年级云组词_禾的组词一年级
大戏看北京 6月文艺资讯-每日资讯
发现增加了预防链球菌感染的希望 环球快讯
车贷担保人会影响征信吗
今日热闻!小迪网安笔记一:基础入门
世界微头条丨Doris(六) -- 查询语法和内置函数
重装系统之后发现网卡驱动丢了,怎么办?一招解决_世界简讯
云从科技:目前基础部分的算力需求能够被基本满足_全球热资讯
暴雪对《暗黑破坏神4》服务器感觉良好:我们准备好了!
【独家焦点】电影《诛仙1》CCTV6今晚开播收视登顶!肖战、李沁主演
天天滚动:注意!江苏苏州将发放1亿元购车补贴 一次性可补五千
日版实体版《死亡细胞:重返恶魔城》将9月14日发售 为特别好评作品
真人电影《勿言推理》追加演员阵容公布 永山瑛太将出演影片
《原神》七圣召唤国际大赛将于今年举办 为上线以来首次官方国际赛事
玩家打造全球最小GC主机 方正小巧造型吸引众人的喜爱
BOSS直聘-W:耗资约400万美元回购近58.76万股-环球快看点
动画声优大西沙织因健康状况恶化将减少工作活动 曾配音《路人女主》
广东汕尾台风天刮来众多生蚝 两人一小时收获两百多斤
《斗罗大陆2》被曝最新路透照 张予曦饰演的小舞白裙绝美可人
2023新一线城市名单公布 北方仅有四座城市上榜
“高考钉子户”梁实马上迎来其第27次高考 称准备相对充分
15)触发器
天天微动态丨小程序容器助力航空企业数字化转型
全球新动态:2.单向链表
Quartz任务调度框架 世界报资讯
视点!掌握嵌入式Linux编程0简介
月度回望|“资产荒”逻辑未破 5月债市现券收益率曲线陡峭下移
当前头条:日本最大啤酒商要重返中国:你爱日啤、德啤还是国啤?
3999元起 华为Vision智慧屏3开售:720P秒变4K
刀塔循环圈单机地图 刀塔循环圈-天天即时看
React Native+小程序容器=更高的开发效率_焦点热门
全球热议:uniapp uni-number-box组件 步长为1,还能输入小数思路分享
Linux工作原理3设备 天天简讯
2023-05-31:给定一个整数数组 A,你可以从某一起始索引出发,跳跃一定次数 在你跳跃的过程中,第 1、3、5... 次跳跃称为奇数跳跃 而第 2、4、6
世界微动态丨货币市场日报:5月31日
“暖蜂驿站”温暖“两新”群体 相城区太平街道打造“15分钟暖蜂服务圈”-每日关注
首发2999元 联想百应新款迷你主机上架:13代i5、机身仅0.5L 全球快消息
满油满电续航1370公里 加速7秒内!吉利银河L7上市:13.87万起|世界观焦点
NVIDIA发布535.98驱动更新:大幅提升《暗黑破坏神4》帧数 每日快讯
当前观察:4799元开售!一图看懂努比亚Z50 Ultra摄影师版:玻璃“皮革”独一家
c#使用内存映射像处理内存一样去快速处理文件_全球热头条
重学c#系列——DiagnosticListener [三十五]|每日热门
市场监管总局:CCC认证制度实施以来,儿童玩具合格率显著提升 每日关注
从蔚小理到理小蔚 蔚来汽车做高端砸换电能否逆袭?|今日报
华为凌霄子母路由Q6E正式开售:电线变网线 全屋Wi-Fi满格
《小美人鱼》内地票房突破2000万!累计观影人次达54.7万 全球报道
摩尔线程显卡支持DX11游戏!国产第一家
针刺只是小儿科!吉利银河L7电池遭“蹂躏”:跌落水泡火烧撞击均无碍
天天热头条丨记录--Js基础练习题目
Apache DolphinScheduler 3.0.6 发布,或将是最后一个 3.0.X 版本|当前播报
债市日报:5月31日
航天宏图: 公司无人机业务:业务领域覆盖国土测绘、环保监测、河道监测、电力巡检、管道巡线、灾情监测等
或有剧毒!印度学生午餐中现20厘米死蛇:多人进餐后呕吐昏迷 环球要闻
风头盖过马斯克访华 贾跃亭新车220万开卖!FF 91最全解析 世界速递
全球今日讯!新型太阳能电池问世:柔韧性极高 弯曲角度可超360度
中兴晴天墙面路由器上手:新一代WiFi 6穿墙神器
明星餐饮为何逃不出短命魔咒?专家解释原因 全球速读
深圳电网用电负荷连续第三年突破2000万千瓦 当前热点