一、正文处理命令及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基础(三)的更多相关文章

  1. Linux基础三(软件安装管理)

    目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...

  2. Linux基础三:用户和组

    三.用户和组 1.概念 (1).用户概念: 用户是用来运行某一些进程.拥有某一些文件或目录. 在Linux里面,用户分成三大类:root用户.系统用户.普通用户. 用户是用UID来唯一标识身份的,且r ...

  3. Linux基础三

    cat:查看全部(缺点:内容较多时不方便查看) 格式:cat [选项] 文件名 常用命令选项 -n:在每一行前加上行号 [root@localhost 桌面]# cat -n /etc/passwd ...

  4. Linux基础三:linux目录结构和目录文件的浏览、管理及维护

    目录文件的浏览.管理及维护(一) 1.Linux文件系统的层次结构 1)Linux文件系统的树状结构:在Linux或UNIX操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置的树状结构. 2 ...

  5. Linux基础(三)Shell test 命令

    Shell test 命令 Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 数值测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt ...

  6. Linux基础三(正则表达式)

    语法(部分) 字符 描述 \ 将下一个字符标记为一个特殊字符.或一个原义字符.例如,“n”匹配字符“n”.“\n”匹配一个换行符.序列“\\”匹配“\”而“\(”则匹配“(”. ^ 匹配输入字符串的开 ...

  7. linux基础三---网络基础&软件包管理

    一 ifconfig:显示所有正在启动的网卡的详细信息或设定系统中网卡的IP地址. ifconfig eno16777736 down/up   关闭/开启 eno16777736 网卡 ifconf ...

  8. Linux基础三---打包压缩&vim&系统的初始化和服务

    一,常用命令——tar&vim 1. tar [参数]  文件名  [路径] 参数: -c :建立一个压缩文件的参数指令(create 的意思):     -x :解开一个压缩文件的参数指令! ...

  9. 运维之Linux基础知识(三)

    运维之Linux基础知识(三) 1. 查看文本 cat tac more less head tail 1.1 cat 连接并显示文件 cat -n:在显示的时候,将每一行编号 -E:显示结束符$ - ...

  10. Linux(三)——Unix&Linux 的基础命令

    Linux(三)--Unix&Linux 的基础命令 快捷键 Ctl-A 光标移动到行首 Ctl-C 终止命令 Ctl-D 注销登录 Ctl-E 光标移动到行尾 Ctl-U 删除光标到行首的所 ...

随机推荐

  1. C++进阶引导

    1.C++的用途和意义 t0185b047e29feffc26.jpg 总体来说,C++作为一门软件开发语言,它的流行度是在减少的.主要原因在于语言的复杂和灵活导致软件开发成本提高,这体现在开发周期和 ...

  2. Python初探

    Q:DBA是运维数据库,为什么还要懂开发? A: 维护:维护的机器太多了,很多重复的操作,需要开发出工具来实现 监控:所有机器的运行情况和健康状况都需要了解,全盘掌握cup.内存.磁盘.网络流量.数据 ...

  3. Cordova各个插件使用介绍系列(五)—$cordovaGeolocation获取当前位置

    详情请看:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/cordova-5-cordovageolocation/ $cordov ...

  4. RabbitMQ~开篇与环境部署

    想写这篇文章很久了,今天终于有时间总结一下,一个大型的系统里,消息中间件是必不可少的,它将并发环境处理的数据异步进行处理,有效的提高了系统的并发能力,有很多系统的瓶颈点都在于此,而消息中间件在这个时候 ...

  5. 关于MATLAB处理大数据坐标文件2017620

    暑假已至,接下来组内成员将会各回各家,各找各妈,这肯定是对本次大数据比赛是很不利的. 接下来我会把任务分配给组员,当然任务会比起初的时候轻一点,因为我认为本次比赛的目的并不是我要求组员做什么,而是我的 ...

  6. request.getParameter()及解决数据库中文乱码问题——实习第七天

    今天老师让我们自己做一个小项目,我开始着手于实现这个小项目.途中遇到过几个小问题,在此做个小记录, 相信后期还是会借鉴的. 1,从前台传入数据给后台传入数据,并没有传入成功: 输出的为Null. 当然 ...

  7. SQL手动注入解析

    作者:震灵 注入环境:DVWA 探测步骤: 1.首先探测是否可以注入以及注入方式 原SQL语句为 SELECT * FROM xxx WHERE a=''; 注入后为 SELECT * FROM xx ...

  8. 【LeetCode】190. Reverse Bits

    题目: Reverse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented ...

  9. 关闭chrome浏览器的developer tools

    背景 Chrome使用过程中,很容易启动Chrome developer tools,一些误触如按到F12.CTRL+Shift+C等都会启动developer tools.对于不开发Web的人来说, ...

  10. JavaScript 定义 类

    JavaScript 定义 类 一 构建类的原则 构造函数 等于 原型的constructor //构造函数 function Hero(name,skill){ this.name = name; ...