Linux基础(三)
一、正文处理命令及tar命令
1.文件合并
cat a.txt b.txt > c.txt
2.打包
归档命令tar可以把多个文件打包成一个文件
如tar cvf test.tar a.txt b.txt 可以将a.txt和b.txt打包成test.tar 文件
可以在打包的过程中指定tar包的存放位置,如tar cvf /home/test.tar *
可以用命令tar -tf test.tar 来查看test.tar 文件的内容
硬盘里可以存放的文件数是固定的,企业里常用tar命令来做文件备份,而不是cp命令
3.解tar包
把打包的文件解开用命令 tar xvf test.tar
也可以指定解压到指定位置,默认为当前位置,如tar xvf /home/test.tar -C /test2
4.用gzip工具压缩文件
可以gzip test.tar压缩,用gunzip test.tar.gz解压,但一般不这样用
可以在打包的同时压缩,tar cvzf test.tar.gz * 这样
解压的时候还是用tar xvf test.tar.gz
5.用bzip2工具压缩文件
还有一种压缩工具是bzip2,压缩后的文件格式是.tar.bz2
打包并压缩:tar cvjf test.tar.bz2
解压缩:tar xvf test.tar.bz2
二、利用vi编辑器创建和编辑正文文件
vim 文件名 就进入了vi编辑器,此刻是命令行模式
键盘上按a,i,o,A,I,O都可以进入编辑模式
编辑完成后按esc键返回命令行模式,命令行模式中的常用命令有:
G:跳到文件末尾
gg:跳回文件开头
$:跳到行末尾
数字0:跳到行首
yy:复制一行
yy命令前可以加数字指定复制几行,如3yy 表示复制三行
p:粘贴
p命令前也可以加数字指定粘贴几次,如3p表示粘贴三次
dd:删除一行,10dd表示删除10行
dd和p连用,代表剪切操作
u:撤销一步
ctrl+r:前进一步
L:跳到当前屏幕的最后一行
M:跳到当前屏幕的中间一行
H:跳到当前屏幕的第一行
/:查找内容,n选择下一个
在命令行模式中按shift+:进入扩展模式
w:保存
q:退出
s:修改
s/要修改的内容/要改成的内容/ :只更改当前行的内容
%s/要修改的内容/要改成的内容/g :更改文件的全部内容
命令行模式,编辑模式和扩展模式的切换关系如下:

三、系统的初始化和服务
Linux系统启动流程
通电-->BIOS-->MBR-->boot loader-->kernel-->init process-->login
首先,计算机通电后会从BIOS中读取程序,选择存储设备后,计算机从会从你选择的存储设备中读取起始的512Bytes,这512Bytes就是主引导记录(MBR),MBR会告诉电脑从该设备的某一个分区来装载引导加载程序(boot loader),这里面存储着操作系统的相关信息,包括操作系统内核(kernel)的所在位置等,常用的boot loader 有GRUB,LILO等。实际上,我们可以在多个分区安装boot loader,读取MBR的时候选择我们想要启动的boot loader,这就是多操作系统的原理。kernel的主要任务是操作计算机硬件资源,相当于软件和硬件的接口。我们加载Linux kernel 后,kernel 会通过驱动程序检测硬件,然后kernel会启动一个init process,它是Linux系统的1号程序,接下来就是init的操作了,init会运行一系列初始脚本,然后会给出登录选项,输入用户名和密码后登录就可以了。
知道了Linux的启动流程,那我们可以解决一些问题了,如果我们忘记了root密码,是否可以在Linux系统启动过程中修改密码呢,下面介绍两种方法修改root密码
1. 救援模式破解root密码
首先,重启系统,进BIOS选择光盘启动

f10保存退出

选择Troubleshooting,回车



输入chroot /mnt/sysimage
然后修改密码


再重启,进BIOS中把硬盘改成第一启动,f10保存退出,启动系统,会发现root用户密码已经修改成功了
2.单用户模式破解root密码
重启,按e进入kernel
定位到ro ,把ro 改成 rw init=/sysroot/bin/sh


chrl+x 保存,就进入了单用户模式
依次输入以下命令
chroot /sysroot/
passwd root
touch /.autorelabel

重启就修改成功了
Linux基础(三)的更多相关文章
- Linux基础三(软件安装管理)
目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...
- Linux基础三:用户和组
三.用户和组 1.概念 (1).用户概念: 用户是用来运行某一些进程.拥有某一些文件或目录. 在Linux里面,用户分成三大类:root用户.系统用户.普通用户. 用户是用UID来唯一标识身份的,且r ...
- Linux基础三
cat:查看全部(缺点:内容较多时不方便查看) 格式:cat [选项] 文件名 常用命令选项 -n:在每一行前加上行号 [root@localhost 桌面]# cat -n /etc/passwd ...
- Linux基础三:linux目录结构和目录文件的浏览、管理及维护
目录文件的浏览.管理及维护(一) 1.Linux文件系统的层次结构 1)Linux文件系统的树状结构:在Linux或UNIX操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置的树状结构. 2 ...
- Linux基础(三)Shell test 命令
Shell test 命令 Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 数值测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt ...
- Linux基础三(正则表达式)
语法(部分) 字符 描述 \ 将下一个字符标记为一个特殊字符.或一个原义字符.例如,“n”匹配字符“n”.“\n”匹配一个换行符.序列“\\”匹配“\”而“\(”则匹配“(”. ^ 匹配输入字符串的开 ...
- linux基础三---网络基础&软件包管理
一 ifconfig:显示所有正在启动的网卡的详细信息或设定系统中网卡的IP地址. ifconfig eno16777736 down/up 关闭/开启 eno16777736 网卡 ifconf ...
- Linux基础三---打包压缩&vim&系统的初始化和服务
一,常用命令——tar&vim 1. tar [参数] 文件名 [路径] 参数: -c :建立一个压缩文件的参数指令(create 的意思): -x :解开一个压缩文件的参数指令! ...
- 运维之Linux基础知识(三)
运维之Linux基础知识(三) 1. 查看文本 cat tac more less head tail 1.1 cat 连接并显示文件 cat -n:在显示的时候,将每一行编号 -E:显示结束符$ - ...
- Linux(三)——Unix&Linux 的基础命令
Linux(三)--Unix&Linux 的基础命令 快捷键 Ctl-A 光标移动到行首 Ctl-C 终止命令 Ctl-D 注销登录 Ctl-E 光标移动到行尾 Ctl-U 删除光标到行首的所 ...
随机推荐
- WPF中使用USERCONTROL
继续这两篇文章写: http://daniex.info/wpf-using-usercontrol.html http://www.codeproject.com/Articles/32825/Ho ...
- 扔掉log4j、log4j2,自己动手实现一个多功能日志记录框架,包含文件,数据库日志写入,实测5W+/秒日志文件写入,2W+/秒数据库日志写入,虽然它现在还没有logback那么强大
讲到log4j,现在国外基本是没有开发者用这个框架了,原因大致有几点,1.功能太少:2.效率低下:3.线程锁bug等等等各种莫名其妙的bug一直都没解决. 其实最重要的是log4j的作者自己也放弃了l ...
- discuz用户登录不响应,提示nginx gateway timeout解决方法
在使用nginx+php-cgi搭建discuz论坛过程中,出现论坛登录不响应,一直提示nginx gateway timeout504网关超时,单单采用php方式登录无问题.但因需要使用nginx把 ...
- 创建单页web app, 如何在chrome中隐藏工具栏 地址栏 标签栏?
问题描述: 为使用更大的屏幕空间,在访问web应用的使用,如何隐藏地址栏.工具栏? 解决办法: 1. chrome的application mode 选项--->更多工具---->添加到桌 ...
- 常用DOM API
Node Node是一个接口,中文叫节点,很多类型的DOM元素都是继承于它,都共享着相同的基本属性和方法.常见的Node有 element,text,attribute,comment,documen ...
- CSS3学习系列之盒样式(一)
盒的基本类型 在css中,使用display属性来定义盒的类型,总体上来说,css中的盒分为block类型与inline类型 inline-block类型 inline-block类型是在css2.1 ...
- 《HelloGitHub》第 15 期
公告 这段时间没怎么写文章,跑去写 https://hellogithub.com 这个网站了,现在已经顺利上线,功能后面会持续迭代. 最后,这个 https://hellogithub.com 网站 ...
- 9天C#转Java学习过程,自己记录一下
其实没有完整的9天,就是连续每天花点时间,过程so frustrated,踩坑无数...下面是学习过程的记录 第1天 开始正式学习JavaEE,已完成: 1. Tomcat安装: 2. Tomcat配 ...
- 本地jar上传到本地仓库
转自:http://www.blogjava.net/fancydeepin/archive/2012/06/12/380605.html thanks!! Maven 确确实实是个好东西,用来管 ...
- JavaScript学习笔记(散)——addLoadEvent函数
先贴源码 function addLoadEvent(func) { var oldonload = window.onload; //存入当前onload事件 if(typeof window.on ...