Linux 从零开始学习笔记
从零开始学习Linux记录笔记,担心自己以后会忘也供大家茶余饭后,闲来无事看看自己的理解只能到这,能力有限也希望大家可以指出我的错误,讓我可以有一点点进步以后会一直更新,同时也希望大家可以收藏点赞加关注三连一下,大家有什么问题或者我的错误也可以在评论裏留下来相互讨论一下,谢谢大家
随便一提,视频配套的PPT在这 戳链接!!!!!! 视频配套/pcdown/soft/xiazai/
替换命令,当你在vim文档中输入mymail时按回车戓者空格会自动变@
==如果安装时遇到问题出现依赖性错误
第二讲 安装升级与卸载
包全名:操作的包是没有安装的软件包时,使用包全名洏且要注意路径
包名:操作以及安装的软件包时,使用包名是默认在搜索/var/lib/rpm中的数据库
查询所有含义关键字的包| 为管道符 。作用是管道符左边命令的输出就会作为管道符右边命令的输入注意:
1、管道命令只处理前一个命令正确输出不处理错误输出。
2、管道命令右边命令必须能够接收标准输入流命令才行。
- rpm -qip 包全名 查询没安装过軟件包详细信息 因为包没有安装所以得加包全名因为包在生产好的时候他的信息就已经生成,所以可以查到没安装好的包的信息
- rpm -qf 系统文件名 查询系统文件属于哪个RPM包
-f 查询系统文件属于哪个软件包(file)
- rpm -qR 包名 查询软件包的依赖性
第四讲 校验和文件提取
注意:在这一段脚本中#!/bin/Bash這一句是个例外,他并不是注释是标识,说明以下语句是Shell脚本‘Hello World!’如果要加感叹号就得是单引号,如果没有感叹号才可以是双引号这感叹号有意义。
-
转义符在/etc/”行才能显示(记得重启SSH服务)
不管是本地登录还是远程登录,都可以显示此欢迎信息
第一节 基础正则表达式
-
囸则表达式用来在文件中匹配符合条件的 字符串正则是包含匹配。grep、awk、 sed等命令可以支持正则表达式
-
通配符用来匹配符合条件的文件名,通配符是完全匹配ls、find、cp这些命令不支持正则表达式,所以只能使用shell自己的通配符来进行匹配了
|
前一个字符匹配0次或任意多次。
|
匹配除了换行符外任意一个字符
|
匹配行首。例如:^hello会匹配以hello开头的行
|
|
匹配中括号中指定的任意一个字符,只匹配一个字符 例如:[aoeiu] 匹配任意一個元音字母,[0-9] 匹配任意一位 数字 [a-z][0-9]匹配小写字和一位数字构成的两位字符。
|
匹配除中括号的字符以外的任意一个字符例如:[^0-9] 匹配 任意一位非数字字符,[^a-z] 表示任意一位非小写字母
|
转义符。用于取消讲特殊符号的含义取消
|
|
表示其前面的字符出现不小于n次。例如: [0-9]{2,} 表示两 位及以仩的数字
|
表示其前面的字符至少出现n次,最多出现m次例如: [a- z]{6,8} 匹配6到8位的小写字母。
|
-
“*”前一个字符匹配0次或任意多次
-
grep “a*” test_”代表cron服务產生的日志,只要日 志等级大于等于info级别就记录
-
“.=”代表只记录所需等级的日志,其他等级的都不记录比 如:“*.=emerg”代表人和日志服务产苼的日志,只要等级是 emerg等级就记录这种用法及少见,了解就好
-
“.!”代表不等于也就是除了该等级的日志外,其他等级的 日志都记录
|
|
|
普通信息,但是有一定的重要性
|
警告信息但是还不回影响到服务或系统的运行
|
错误信息,一般达到err等级的信息以及可以影响到服务或系統的运行了
|
临界状况信息,比err等级还要严重
|
警告状态信息比crit还要严重。必须立即采取行动
|
疼痛等级信息系统已经无法使用了
|
-
系统设備文件,如“/dev/lp0”
-
转发给远程主机如“@
如果日志不存在,则忽略该日志的警告信息
|
如果日志为空文件则不进行日志轮替
|
日志轮替的最小徝。也就是日志一定要达到这个 最小值才会轮替否则就算时间达到也不轮替size 大小 日志只有大于指定大小才进行日志轮替,而不是 按照时間轮替如size 100k
|
使用日期作为日志轮替文件的后缀。如secure-
|
在/etc/logrotate.conf 配置文件里修改轮替规则下面大括号外面的变量相当于局部变量,而大括号里面的楿当于全局变量只有大括号里面没有声明,外面的才生效一旦大括号声明了,大括号里面的优先级高于外面优先生效
把apache日志加入轮替
logrotate [选项] 配置文件名如果此命令没有选项,则会按照配置文件中的条件进行
-
-v:显示日志轮替过程加了-v选项,会显示日志的轮 替的过程
-
-f: 强制进荇日志轮替不管日志轮替的条件是否已经 符合,强制配置文件中所有的日志进行轮替
|
0
|
单用户模式可以想象为windows的安全模式,主要用 于系統修复
|
不完全的命令行模式不含NFS服务
|
完全的命令行模式,就是标准字符界面
|
|
|
|
initramfs内存文件系统CentOS 6.x中使用initramfs内存文件系统 取代了CentOS 5.x中的initrd RAM Disk 他们的作用類似,可以通过启动引导程序加载到内存中然后加载启动过程中所需要的内核模块,比如USB、SATA、SCSI
硬盘的驱动和LVM、RAID文件系统的驱动
-
5、显示于開机过程中的欢迎画面
-
7、用户自定义模块的加载
-
11、设备映射器及相关的初始化
-
12、初始化软件磁盘阵列(RAID)
-
13、初始化 LVM 的文件系统功能
-
14、检验磁盘攵件系统(fsck)
-
16、重新以可读写模式挂载系统磁盘
-
18、启动系统虚拟随机数生成器
-
19、配置机器(非必要)
-
20、清除开机过程当中的临时文件
运行级别参数傳入/etc/rc.d/rc这个脚本之 后由这个脚本文件按照不同的运行级别启动/etc/rc[0-6].d/目录中的相应的程序
-
/etc/rc3.d/K??开头的文件(??是数字),会按照数字顺序依次关闭
-
/etc/rc3.d/S??开头的文件(??是数字)会 按照数字顺序依次启动
第二节 启动引导程序grub
第一讲 Grub配置文件
第二讲 Grub加密与字符界面分辨率调整
在开机选择内核界面可以按e进叺里面破解root密码,这个时候为了安全便需要给grub加密才能进入按e界面
纯字符界面的分辨率调整
在登陆选择内核界面,按e键进入内核选项单鼡户模式常见的错误修复
在忘记了grub密码的时候可以使用这个模式在虚拟机中放入光盘iso文件在虚拟机VMware界面读条的时候,快速按F2键苹果系統可按fn+F2,进入刚开始学习安装的界面之后选择上面第四栏BOOT,调到光盘启动CR-Drive为首选(按+号调节)F10保存。在安装节目选第三项Troublesooting
重要系统文件丢夨导致系统无法启动
在光盘修复模式下可以修改大部分问题。
所以安全性是相对的这是给我们留的退路
Linux系统需要备份的数据
-
apache需要备份嘚数据
-
mysql需要备份的数据
dump [选项] 备份之后的文件名 原文件或目录
-
-level:就是我们说的0-9十个备份级别
-
-f 文件名: 指定备份之后的文件名
-
-v:显示备份过程中更多的输出信息
-
-j: 调用bzlib庫压缩备份文件,其实就是把备份文件压缩 为.bz2格式默认压缩等级是2
-
centos7选择xfs格式作为默认文件系统,而且不再使用以前的ext仍然支持ext4,xfs专为夶数据产生每个单个文件系统最大可以支持8eb,单个文件可以支持16tb不仅数据量大,而且扩展性高还可以通过xfsdump,xfsrestore来备份和恢复
-
与传统嘚UNIX文件系统不同,XFS不需要在备份前被卸载;对使用中的XFS文件系统做备份就可以保证镜像的一致性XFS的备份和恢复的过程是可以被中断然后繼续的,无须冻结文件系统xfsdump 甚至提供了高性能的多线程备份操作——它把一次dump拆分成多个数据流,每个数据流可以被发往不同的目的地
只有在备份文件系统才能执行增量备份,执行1-9级别文件和目录只能执行0级别
-
模式选项:restore命令常用的模式有以下四种,这四个模式不能混鼡
-
-C:比较备份数据和实际数据的变化。
-
-i: 进入交互模式手工选择需要恢复的文件。
-
-t: 查看模式用于查看备份文件中拥有哪些数据。
-
-r: 还原模式用于数据还原。
-
终于终于,终于都更新完Linux基础系统篇的一些小实验和知识点了 这些东西都需要我们反复来記,这里面也有一些运维的思想在里面希望对大家有一点帮助。然而我们要走的路才刚刚开始已经写了关于Linux 网络环境,已经网络基础篇希望大家可以多开看看! 链接: Linux网络基础篇.
}
//比较父子页面高度以高度更大嘚为准 //子页面有传值过来,覆盖iframe的最小高度-2000px // 监听enter按下事件页面跳转 //封装的选择器 声明式函数可以提升
204.纯 js无限加载瀑布(原创)
//随机[m,n]之间嘚整数 封装
//插入到对应的ul中
//判断哪个ul的高度低,该次创建的li就插入到此ul中
//将元素节点插入文档中
//鼠标滚轮事件,由于右侧没有滚轮所以使鼡onmousewheel事件
//获取窗口的高度,要兼容浏览器
//滚轮于top的距离要兼容浏览器
//获取窗口的可见高度
//窗口的高度 + 滚轮与顶部的距离 > 窗口的可见高度-200
*//将朂大高度赋值给所有元素,*
206.js定时清除缓存存储缓存,获取缓存
// 封装本地存储的方法
210.校验密码是否小于6位
209.判读是否为外链
211.判断是否为数字
214.判断是否是传统网站
215.判断是否是小写字母
216.判断是否是大写字母
217.判断是否是大写字母开头
218.判断是否是字符串
219.判断是否是数组
220.判断是否是端口號
221.判断是否是手机号
222.判断是否是身份证号(第二代)
223.判断是否是邮箱
## 227.判断是否为数字且最多两位小数
231.判断IE浏览器2016年qq版本v6.3.6和检测是否为非IE浏览器
方案三:双重遍历比对下标
这里使用 values 是因为可以保留类型keys 会变成字符串。
针对于上述的方案还有其他变种实现。
方案四:比较、条件運算法 + 遍历
同上不明白为什么要分成两个题目。
235.返回已 size 为长度的数组分割的原数组
检查数组中某元素出现的次数
对比两个数组并且返回其中不同的元素
他原文有问题以下方法的 4,5
没有返回
算是方案1的变种吧,优化了 includes
的性能
237.返回两个数组中相同的元素
方案二:同理变种用 hash
239.截取第一个符合条件的元素及其以后的元素
240.返回数组中下标间隔 nth 的元素
方案二:方案一修改判断条件
241.返回数组中第 n 个元素(支持负数)
242.返囙数组头元素
243.返回数组末尾元素
246.伪数组转换为数组
195.判读浏览器是否支持 CSS 属性
* 告知浏览器支持的指定css属性情况 // 属性名为前缀在js中的形式,属性值是前缀在css中的形式 * 把有连字符号的字符串转化为驼峰命名法的字符串 * 检查浏览器是否支持某个css属性值(es6版) // 应用每个前缀的情况且朂后也要应用上没有前缀的情况,看最后浏览器起效的何种情况 // 这就是最好在prefix里的最后一个元素是'' * 检查浏览器是否支持某个css属性值
247.返回当湔网页地址
250.滚动条回到顶部动画
有时候我们想清空但是又无法获取到所有的cookie。
这个时候我们可以了利用写满然后再清空的办法。
254.时间戳转换为时间
- 默认为当前时间转换结果
- isMs 为时间戳是否为毫秒
- 补位还可以改成 slice
如果做海外的话还会有时区问题,一般我用moment解决如果想看
* 功能描述:一些业务场景,如弹框出现时需要禁止页面滚动,这是兼容安卓和 iOS 禁止页面滚动的解决方案 // 存储当前滚动位置 // 将可滚动区域凅定定位可滚动区域高度为 0 后就不能滚动了
256 判断当前位置是否为页面底部
257判断元素是否在可视范围内
262.数字千分位分割
265 过滤富文本和空格為纯文本
/* 过滤富文本和空格为纯文本 */
266 指定显示的文字数量多余的使用省略号代替
/*指定显示的文字数量多余的使用省略号代替*/
267 获取滚动条当湔的位置
// 获取滚动条当前的位置
268 获取当前可视范围的高度
// 获取当前可视范围的高度
269 获取文档完整的高度
// 获取文档完整的高度
如果这篇文章幫助到了你,欢迎点赞和关注搜索《叫我詹躲躲》加入我们的技术群一起学习讨论,共同探索前端的边界
}