随着国家技术的要求和国际形势的发展,为了避免被卡脖子,国产操作系统开始进入大力发展阶段!C++方向有一个很好的优势是可以和Linux相连通,做运维、操作系统,前途无限!!!

废话少说,我们进入本次学习的主题!!对于Linux系统启动的流程了解!!

基本流程

Linux的启动流程

1.开机自检:设备开机时,会有滴一声,自检开始,主要是检查计算机硬件,如:CPU,内存,主板,显卡等设备是否有故障

2.加载BIOS:BIOS自检,首先会在一个Boot Sequence程序中搜索可以让系统启动的引导设备(比如我们有时在BIOS中设置为从硬盘启动,或者从CD-ROM启动等等),如果BIOS找不到可以引导的设备及相关程序后,便会启动失败,如果找到相关硬盘设备,则BIOS将控制权交给启动设备中的MBR主引导记录

3.读取MBR主引导记录:大小为512字节,存放预启动信息、分区表等信息

4.grub引导菜单:系统读取内存中的grub配置信息,并依照此配置信息来启动不同的操作系统

5.加载kernel内核:根据grub设定的内核映像所在路径,系统读取内存映像,并进行解压缩操作(内核文件都是以一种自解压的压缩格式存储以节省空间,存储于/boot目录下),自解压完成,则加载init(systemd)

6.init初始化(systemd所有进程的父进程):初始化系统环境

7.启动内核模块

root@uos:~# ls -l /boot/
root@uos:~# ls -l /boot/ -h

root@uos:~# vim /boot/grub/grub.cfg 

root@uos:~# pstree
root@uos:~# vim /etc/fstab(硬盘挂载)

计划任务

时间

root@uos:~# * * * * *
root@uos:~# 分 时 日 月 周
root@uos:~# 30 2 * * *(表示两点半,顺序是倒着的)
root@uos:~# 30 22 12 12 1(表示12月12日礼拜一22点30分)
root@uos:~# * * * * 1-5(表示周一到周五)
root@uos:~# * * * * 1,3,5(表示周一周三和周五)

*代表所有范围内的时间, 逗号‘,’代表不连续时间,横线‘ - ’表示连续的时间

root@uos:~# 0  8-18/2  *  *  *  (8点到18点之间每隔2小时)
root@uos:~# 0  *  */3  *  * (每隔3天)
root@uos:~# touch /home/tangyimin/Desktop/tang
root@uos:~# rm -f /home/tangyimin/Desktop/tang(最好使用绝对路径,相对路径可能会出错)
root@uos:~# which touch
root@uos:~# at(一次性计划任务)
root@uos:~# apt install at(这需要装一下的,但是生产一线用的不是很多)
root@uos:~# crontab(周期性计划任务)
root@uos:~# crontab -e(表示编辑)
root@uos:~# crontab -e -u root(也可以这么写)

Choose 1-3 [1]: 3
crontab: installing new crontab
root@uos:~# ls -l /home/tangyimin/Desktop(这是root的命令,所以有锁限制)
root@uos:~# crontab -l -u root
root@uos:~# crontab -l -e root

然后就可以在里面编写内容。

root@uos:~# crontab -r -u root(删除)
root@uos:~# vim /tang.sh(可以自己在脚本里编写)
root@uos:~# bash /tang.sh
root@uos:~# rm -f /home/tangyimin/Desktop/tang*
root@uos:~# crontab -e -u root

bash就可以执行任务了。

这个就是限制了用户权限。

touch /tmp/uosfile crontab -e -u root 第一次使用crontab -e时需选择编辑器,vim.basic完整版的vim;vim.tiny是tiny版本的vim,功能比较少。 */1 * * * * echo "UOS SYSTEM" >> /tmp/uosfile

crontab -l -u root 查看某用户的计划任务列表,不指定用户则查看当前用户。

密码破解和密码防破解

破解root密码

1.开机按"e"键,进入grub引导菜单

2.找到linux vmlinuz-* 开头的行在末尾添加rw init=/bin/bash

3.按ctrl+x或F10继续启动

4.passwd root

5.reboot -f 或手动重启

这种修改方式必须要接触到物理设备,远程的操作是不支持的

防止破密码:增加grub口令

1.grub-mkpasswd-pbkdf2 #输入密码,使用伪随机函数生成密钥grub.pbkdf2.sha512.10000.......

2.vim /etc/grub.d/40_custom

3.set superusers="uos"

4.password_pbkdf2 uos grub.pbkdf2.sha512.10000.6D67AA5F717AFE93D368A57804BC21B136DCA9D30CBA6F74D9ABCBA32E76B59758E04A5D0A766734EDE586DEA2EC3E7F786F127FB55C7922826455612B5406F5.30060B65CA1D5736364D109C7CB6459E5E2851EFF460E43D72AAB8A592784B2D5353D9B51EE1EAFBC45AF739417CFC5EC12EE92D546E9BC6A7BB58444BC27455 5.update-grub 重启验证

root@uos:~# grub-mkpasswd-pbkdf2
输入口令:
Reenternpasswd:
root@uos:~# vim /etc/grub.d/40_coustom
root@uos:~# update-grub
root@uos:~# reboot(重启)

救援模式

启动修复

1.rm -rf /boot/* 2.关机BIOS,设置光盘启动,点击install UOS后,按ctrl+alt+f2进入命令行模式 3.sudo mount /dev/sda2 /mnt(随便挂) 挂载根分区

  1. sudo mount /dev/sda1 /mnt/boot 挂载/boot分区

  2. sudo mount --bind /dev /mnt/dev 硬件设备,bind绑定(目录挂载到目录)

  3. sudo mount --bind /proc /mnt/proc

  4. sudo mount --bind /sys /mnt/sys

  5. sudo cp -rf /boot/* /mnt/boot/ 将光盘引导/boot复制到系统/boot

  6. sudo chroot /mnt 把根目录换成指定的目的目录

  7. grub-install /dev/sda 将GRUB安装到指定硬盘或分区上

  8. update-grub 恢复grub.conf

  9. exit

  10. reboot 选择硬盘启动

root@uos:~# rm -rf /boot/*
然后就是关机BIOS,设置光盘驱动,点击install UOS后千万不要正式安装,这样内容会被覆盖掉的,要按Ctrl+Alt+F2进入命令行
root@uos:~# sudo mount/dev/sda2/mnt
root@uos:~# sudo mount/dev/sda1/mnt/boot
root@uos:~# sudo mount/dev/mnt/dev
root@uos:~# sudo mount-bind/dev/mnt/dev
root@uos:~# sudo mount-bind/proc/mnt/proc
root@uos:~# sudo mount-bind/proc/mnt/sys
root@uos:~# sudo cp-rf/boot/*/mnt/boot/
root@uos:~# sudo chroot/mnt
root@uos:~# grub-install /dev/sda
root@uos:~# update-grub

按照UCA-系统工程师课程上来的操作:

root@uos:~# reboot

然后就启动到光盘启动,通过光盘启动就支持救援

千万不要选择直接安装,直接安装的话,原本的磁盘就会被清空。要让它读入,当有图形化页面出现的时候在进行操作Ctrl+Alt+F2,进入命令行模式。

就是在此图处Ctrl+Alt+F2实现命令行模式转换

ssh的免密登录

root@uos:~# useradd -m tang1
root@uos:~# passwd tang1
root@tang1:~Desktop# useradd -m tang2
root@tang1:~Desktop# passwd tang2
root@tang1:~# su - tang1
$ ssh tang2@192.168.163.145
$ ssh-keygen (公钥)

上面的是博主本人的,自己的地址自己看啊!!!

$ ls -l /home/tang1/.ssh/

要把公钥传到tang2下面,需要如下操作

$ ssh-copy-id tang2@192.168.163.145

总而言之ssh免密码登录 server1: ssh-keygen 一直回车 ssh-copy-id root@192.168.200.202 server2验证 cat ~/.ssh/authorized_keys server1的公钥已添加

针对ssh服务,我们深入了解一下

root@uos:~# dpkg -l | grep ssh

openssh-client是客户端,openssh-server是服务器端。

当然还是先看它的服务是怎么样的。

root@uos:~# systemctl status ssh

ssh是客户端连接工龄,sshd是服务端进程。

Linux下ssh和sshd的区别:ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于,前者是针对客户端的配置文件,后者则是针对服务端的配置文件。两个配置文件都允许你通过设置不同的选项来改变客户端程序的运行方式。

root@uos:~# vim /etc/ssh/sshd_config

PermitRootLogin prohibit-password

要理解就需要用到下面的命令:

root@uos:~# ifconfig

root@uos:~# ping 192.168.163.145
root@uos:-/Desktop# ssh tang@192.168.163.145
tang@uos:~$ touch /home/tangyimin/Desktop/tangfile
root@uos:~# passwd root(改密码)

密码永远是不对的,就算是passwd改密码了,也是不可进入的。所以要改就需要下面的步骤来进行。

root@uos:~# vim /etc/ssh/sshd_config
然后在vim里面改文件
#PermitRootLogin prohibit-password(不建议在原来的地方直接改,建议yy复制一下,然后在复制的内容中改)
PermitRootLogin yes
然后就退出
root@uos:~# systemctl restart sshd(然后必须重启一下,生效一下)
root@uos:~# ls -l /home/tangyimin/Desktop

传文件:

root@uos:~# scp /home/tangyimin/Desktop/tangfile1 tang@192.168.163.145 :/tmp(传输命令)

把这个文件/home/tangyimin/Desktop/tangfile1拷贝到 tang@192.168.163.145这台机器下的/tmp文件里。

从远程传到本机:

root@uos:~# scp -r tang@192.168.163.145 :/home /tmp

以上内容均可以在统信镜像下的虚拟机上实现或者可以在Linux操作系统上执行。

选择Linux,是我们程序员进阶的一大特长和发展!!!

希望大家能多多支持!!!!!!!互相关注啊!!!!!蟹蟹蟹蟹!!!!!

Linux国产操作系统,UCA-系统工程师学习必备技能,Linux启动流程、计划任务、密码破解和密码防破解以及ssh服务相关推荐

  1. 系统工程师学习(简单Linux命令应用)(一)

    1. ls 2. pwd 显示当前位置 3.cd 路径  :跳转路径 cd - :返回上级路径 cd ~ :回到home目录 4.绝对路径与相对路经 5.新建文件关键词 touch ,删除文件关键词 ...

  2. 系统工程师加薪必备技能-活动目录 (Active Directory)

    一.活动目录的概述 活动目录是:基于LDAP协议将网络中的资源统一组织.集中地存储到目录数据库中(ntds.dit),可以实现集中.分散式的管理与控制,主要体现在可以查找数据库中的资源,可以对数据库添 ...

  3. 红旗linux镜像文件iso,红旗Linux11下载-红旗Linux国产操作系统11ISO 社区预览版下载...

    超先锋小编为大家提供红旗Linux11下载,这是一款由国内自行研发的电脑桌面操作系统,这款系统采用了非常简洁精美的操作界面并且完美兼容所有电脑硬件设备,这样就能够很好的满足相关用户的使用需求.除此之外 ...

  4. 【重磅来袭】浩辰CAD+Linux国产操作系统,完全国产化CAD设计解决方案!

    2020年,我们承受了太多技术应用的至暗时刻: 当微软宣布停止对Windows 7的技术支持时,全球Windows 7用户面临着进退两难的局面:当美国三大电子设计自动化公司(Synopsy.Caden ...

  5. 3款国产办公软件,不仅好用,还支持linux国产操作系统

    虽然现在市面上大多数电脑都是Windows操作系统,但不少单位出于自主安全性的考虑,正在将单位原有的Windows操作系统电脑逐渐替换成linux国产操作系统,由于linux国产操作系统的生态不如Wi ...

  6. 嵌入式软件工程师面试必备技能

    随着当前信息化网络技术在各行业的快速普及,嵌入式系统在技术领域呈现了前所未有的发展趋势,作为一个正在崛起的热门IT行业,人才的匮乏已经成为了嵌入式开发行业发展过程中呈现出的一种现象.据相关部门统计,我 ...

  7. 【转载】运维职业向!我是怎么入得运维行业?运维工程师入门必备技能以及打怪升级篇...

    前言:转载 陈浩一个从事安全运维向的前辈文章.写的很好.人非常nice,遇到了问题,qq上很快就回复了我. 大道三千 入门最难,凡事入了行,也就什么都好说了,好的自然不断努力奋斗修行,不好的自然很快就 ...

  8. 实施工程师的必备技能

    实施工程师的必备技能 写这篇文章,是为了用来记录过去一年工作的心得以及体会,也为新的工作做一个铺垫吧! 实施测试环境的搭建 环境的搭建主要涉及到的是代码以及数据库的部署,一般的话会包括两个应用服务器( ...

  9. 机器人行业需要什么计算机知识,进入机器人行业需要掌握哪些?盘点机器人工程师五大必备技能...

    原标题:进入机器人行业需要掌握哪些?盘点机器人工程师五大必备技能 工业机器人的应用是一项复杂的系统工程,需要对其进行编程,在生产前,将机器人本体与控制软件.应用软件.外围设备等相结合,形成一条完整的生 ...

最新文章

  1. Poj(1703),种类并查集
  2. tab-pane 怎么家点击事件_想起爆款?怎么样去打造一个人见人点的爆款主图?
  3. CTF python沙箱逃逸进阶题目
  4. SRM 440(1-250pt, 1-500pt)
  5. Linux NTP时间服务器
  6. 登录drupal管理员_天气公司依靠Drupal来管理内容
  7. 对DNN的一些高层架构设想
  8. 阿根廷科尔多瓦省通过加密资产交易征税新法案
  9. LDAP TLS配置
  10. SQL SERVER如何通过SQL语句获服务器硬件和系统信息
  11. idea项目工程里面自动生成的.iml文件无法删除的解决方法
  12. 1月16日英语计算机统考,高考英语听力首次机考16日开考
  13. 2007所做更改会影响共用模板normal
  14. SPSS作业-方差分析-双因素分析
  15. 5G时代下,如何做好个人信息保护?
  16. 计算机屏幕黑屏让程序继续允许,电脑软件让对方黑屏
  17. 根据word模板(书签)创建导出word
  18. u-boot的usb模块初始化
  19. mysql查询sql中日期为当天的记录_SQL 查询当天,本月,本周的记录 sql 查询日期...
  20. omap_prcm_PM

热门文章

  1. 数据恢复软件哪个好用?点开看看你就知道了
  2. 开发视频网站,asp.net视频文件转换.fla格式
  3. 求职信 (application for employment)
  4. “多点”开花,独立走向新零售
  5. 信安、网安保研夏令营分享(同济,华师,东南、复旦、中科大、北航)
  6. 企业为什么需要反垃圾邮件网关
  7. 反垃圾邮件网关MailCleaner安装与配置1
  8. [MIA2018-01]Segmenting Hippocampal Subfields from 3T MRI with Multi-modality Images
  9. AppCan4.0:开发者要做有价值的APP
  10. 盘点Golang测试相关库