当前位置: 首页 > news >正文

滨海新区做网站电话最近七天的新闻重点

滨海新区做网站电话,最近七天的新闻重点,广西建设部网站,重庆网站建设的价格文章目录 一、Linux操作系统引导过程1、开机启动的完整过程1.1 开机自检(BIOS)1.2 MBR引导1.3 GRUB菜单1.4 加载内核(kernel)1.5 init进程初始化 2、系统初始化进程2.1 init进程2.2 systemdinit与systemd区别 3、Systemd单元类型4…

文章目录

    • 一、Linux操作系统引导过程
      • 1、开机启动的完整过程
        • 1.1 开机自检(BIOS)
        • 1.2 MBR引导
        • 1.3 GRUB菜单
        • 1.4 加载内核(kernel)
        • 1.5 init进程初始化
      • 2、系统初始化进程
        • 2.1 init进程
        • 2.2 systemd
          • init与systemd区别
      • 3、Systemd单元类型
      • 4、运行级别所对应的Systemd目标
    • 二、故障处理
      • 1、service unit文件格式
        • 1.1 unit 格式说明
        • 1.2 service unit file文件通常由三部分组成
        • 1.3 Unit段的常用选项
        • 1.4 Service段的常用选项
        • 1.5 Install段的常用选项
        • 1.6 编译安装nginx-systemctl
          • 编译安装nginx,然后用systemctl管理(图文详解)
      • 2、修复MBR扇区故障
        • 2.1 故障原因
        • 2.2 故障现象
        • 2.3 解决思路
        • 2.4 故障模拟及处理过程
          • 修复MBR扇区故障(图文详解)
      • 3、修复GRUB引导故障
        • 3.1 故障原因
        • 3.2 故障现象
        • 3.3 解决思路
        • 3.4 故障模拟及处理过程
          • 修复GRUB引导故障(图文详解)
      • 4、遗忘root用户密码
        • 4.1 故障原因
        • 4.2 故障现象
        • 4.3 解决思路
        • 4.4 故障模拟及处理过程
          • 修改root用户密码(图文详解)
    • 三、Linux系统服务控制
      • 1、系统服务控制
        • 1.1 格式:systemctl 控制类型 服务名称
        • 1.2 控制类型
    • 四、Linux系统运行级别切换
      • 1、查看运行级别
        • 1.1 runlevel命令:runlevel只能查看切换运行级别与当前运行级别
        • 1.2 systemctl工具
      • 2、临时切换运行级别
        • 2.1 init命令
        • 2.2 systemctl工具
        • 2.3 init与systemctl对应表
      • 3、查看系统默认级别
      • 4、设置临时运行级别
        • 格式:chkconfig --list [服务名称]
      • 5、设置永久运行级别
    • 五、优化开机自动加载服务
      • 1、优化启动过程
        • 1.1 ntsysv工具
        • 1.2 systemctl/chkconfig工具
      • 2、系统服务的启动和控制
        • 2.1 ntsysv系统服务管理工具
      • 3、命令补充

一、Linux操作系统引导过程

1、开机启动的完整过程

  • BIOS加电自检 ---- MBR — GRUB — 加载内核文件 — 启动进程

加电后BIOS程序会自检硬件,硬件无故障后,会根据第一启动项去找内核,一般来说第一启动项是硬盘,找到硬盘后,会根据MBR的指引找到完整的GRUB程序,再根据grub的配置文件找到内核文件的具体位置,然后将内核文件加载到内存中运行,内存加载好后会启动第一个程序

BIOS:检测硬件是否正常,然后根据BIOS中的启动项设置,去找内核文件

1.1 开机自检(BIOS)

服务器主机开机以后,将根据主板BIOS中的设置对CPU、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多时候会移交给本机硬盘

总结:检测出第一个能够引导系统的设备,比如硬盘或者光驱

1.2 MBR引导
  • 指引硬件找到内核文件

当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中MBR(主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区,或者直接根据MBR记录中的引导信息调用启动菜单(如GRUB)

总结:运行放在MBR扇区里的启动GRUB引导程序(因为grub程序启动太大,第一个扇区存不下所有的grub程序,所以分为两部分)

1.3 GRUB菜单
  • 根据grub配置文件(grub.cfg)中记录的位置,去找到内核文件

对于Linux操作系统来说,GRUB(统一启动加载器)是使用最为广泛的多系统引导器程序。系统控制权传递给GRUB以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载Linux内核文件,然后将系统控制权移交给内核。

CentOS 7采用的是GRUB2启动引导器。

总结:GRUB引导程序通过读取GRUB配置文件/boot/grub2/grub.cfg,来获取内核和镜像文件系统的设置和路径位置

1.4 加载内核(kernel)

Linux内核是一个预先编译号的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个Linux操作系统的运行过程

CentOS 7系统中,默认的内核文件位于“/boot/vmlinuz-3.10.0-514.e17.x86_64”

总结:把内核和镜像文件系统加载到内存中

1.5 init进程初始化

为了完成进一步的系统引导过程,Linux内核首先将系统中的额“/sbin/init”程序加载到内核中运行(运行中的程序称为进程),init集成负责完成整个系统的初始化,最后等待用户进行登录

总结:加载硬件驱动程序,内核把init进程加载到内存中运行

2、系统初始化进程

2.1 init进程

①、由Linux内核加载运行/sin/init程序

②、init进程是系统中第一个进程,是所有进程的父程序

③、init进程的PID(进程标记)号永远为1

2.2 systemd
  • systemd是系统的级程序,代为管理系统上的程序

①、systemd是Linux操作系统的一种init软件

②、CentOS 7中采用全新的Systemd启动方式,取代传统的SysVinit

③、CentOS 7中运行的第一个init进程是/lib/systemd/systemd

注:传统SysVinit依赖于串行执行Shell脚本启动服务,导致效率低下,系统启动速度较慢,systemd能够将更多的服务进程并行启动,并且具有提供按需启动服务的能力,使得启动更少进程,从而提高系统启动速度。

  • centos6:启动init(串行启动后续程序,一个一个按顺序启动)

  • centos7:启动systemd(并行启动程序,全部一起启动)

    init与systemd区别
    1. init:串行启动后续程序,一个一个按顺序启动
    2. systemd:并行启动程序,全部一起启动

systemd方便管理程序,将程序按照特定的功能分成了很多特定的单元(如:服务单元,文件路径单元,挂载单元等)

  • yum以及rpm安装的软件可以直接使用systemd去启动、关闭、重启、开机自启等功能,
  • 编译安装不可以直接使用systemctl命令去管理程序,需要手写一个配置文件

3、Systemd单元类型

img

4、运行级别所对应的Systemd目标

  • 0—关机
  • 1—单用户(类似于windows的急救模式)
  • 2—字符界面(少一些功能)
  • 3—字符界面(默认)
  • 4—字符界面(没有使用)
  • 5—图形界面
  • 6—重启

img

runlevel    #查看当前运行级别systemctl  get-default    #查看默认的运行级别systemctl  set-default    #设置默认的级别target    #关机rescue.target    #单用户multi-user.target    #字符界面graphical.target    #图形界面reboot.target    #重新启动

二、故障处理

1、service unit文件格式

1.1 unit 格式说明
  • 以 “#” 开头的行后面的内容会被认为是注释
  • 相关布尔值,1、yes、on、true 都是开启,0、no、off、false 都是关闭
  • 时间单位默认是秒,所以要用毫秒(ms)分钟(m)等须显式说明
1.2 service unit file文件通常由三部分组成
  • [Unit]:定义与Unit类型无关的通用选项;用于提供unit的描述信息、unit行为及依赖关系等
  • [Service]:与特定类型相关的专用选项;此处为Service类型
  • [Install]:定义由“systemctl enable”以及"systemctl disable“命令在实现服务启用或禁用时用到的一些选项
1.3 Unit段的常用选项
  • Description:描述信息
  • After:定义unit的启动次序,表示当前unit应该晚于哪些unit启动,其功能与Before相反
  • Requires:依赖到的其它units,强依赖,被依赖的units无法激活时,当前unit也无法激活
  • Wants:依赖到的其它units,弱依赖
  • Conflicts:定义units间的冲突关系
1.4 Service段的常用选项
  • Type:定义影响ExecStart及相关参数的功能的unit进程启动类型

    1. simple:默认值,这个daemon主要由ExecStart接的指令串来启动,启动后常驻于内存中
    2. forking:由ExecStart启动的程序透过spawns延伸出其他子程序来作为此daemon的主要服务。原生父程序在启动结束后就会终止
    3. oneshot:与simple类似,不过这个程序在工作完毕后就结束了,不会常驻在内存中
    4. dbus:与simple类似,但这个daemon必须要在取得一个D-Bus的名称后,才会继续运作.因此通常也要同时设定BusNname= 才行
    5. notify:在启动完成后会发送一个通知消息。还需要配合 NotifyAccess 来让 Systemd 接收消息
    6. idle:与simple类似,要执行这个daemon必须要所有的工作都顺利执行完毕后才会执行。这类的daemon通常是开机到最后才执行即可的服务
  • EnvironmentFile:环境配置文件

  • ExecStart:指明启动unit要运行命令或脚本的绝对路径

  • ExecStartPre: ExecStart前运行

  • ExecStartPost: ExecStart后运行

  • ExecStop:指明停止unit要运行的命令或脚本

  • Restart:当设定Restart=1 时,则当次daemon服务意外终止后,会再次自动启动此服务

  • RestartSec: 设置在重启服务( Restart= )前暂停多长时间。 默认值是100毫秒(100ms)。 如果未指

  • 定时间单位,那么将视为以秒为单位。 例如设为"20"等价于设为"20s"。

  • PrivateTmp:设定为yes时,会在生成/tmp/systemd-private-UUID-NAME.service-XXXXX/tmp/目录

1.5 Install段的常用选项

Alias:别名,可使用systemctl command Alias.service

RequiredBy:被哪些units所依赖,强依赖

WantedBy:被哪些units所依赖,弱依赖

Also:安装本服务的时候还要安装别的相关服务

1.6 编译安装nginx-systemctl
cd  /opt
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar xf   nginx-1.18.0.tar.gz
cd  nginx-1.18.0
yum -y install gcc pcre-devel openssl-devel zlib-devel openssl  openssl-devel mkdir /data/nginx -p    
./configure   --prefix=/data/nginx
make
make  installln -s /data/nginx/sbin/nginx   /usr/sbin/nginx 
#做软链接   可以补全  vim  /usr/lib/systemd/system/nginx.service[Unit]
Description=The nginx HTTP and reverse proxy server    #描述软件的功能[Service]
PIDFile=/data/nginx/logs/nginx.pid    # 方便使用pid号进行操作,指明进程的pid号
ExecStart=/data/nginx/sbin/nginx     #使用绝对路径启动
ExecStop=/usr/bin/kill -s TERM $MAINPID     #杀死进程
ExecReload=/data/nginx/sbin/nginx -s reload     #重新加载[Install]
WantedBy=multi-user.target     #安装字符界面systemctl  daemon-reload     #重新加载服务的配置文件systemctl  start  nginx      #开启systemctl status nginx      #查看状态
编译安装nginx,然后用systemctl管理(图文详解)

image-20240102212859734

image-20240102213209569

image-20240102214058543

image-20240102214616948

2、修复MBR扇区故障

2.1 故障原因
  • 病毒、木马等造成的破坏
  • 不正确的分区操作、磁盘读写误操作
2.2 故障现象
  • 找不到引导程序,启动中断

  • 无法加载操作系统,开机后黑屏

2.3 解决思路
  • 应提前做好备份文件

  • 以安装光盘引导进入急救模式

  • 从备份文件中恢复

2.4 故障模拟及处理过程

MBR位于第一块硬盘(/dev/sda)的第一个物理扇区处,总共512字节

①、备份MBR扇区数据到其他磁盘(/dev/sdb1)

mkdir /backupmount /dev/sdb /backupdd if=/dev/sda  of=/backup/mbr.bak bs=512 count=1

②、模拟破坏MR引导扇区

 dd if=/dev/zero  of=/dev/sda bs=512 count=1

③、应道界面进入急救模式,从备份文件中国灰度MBR扇区数据

先加载好光盘镜像,重启操作系统当出现安装向导界面时,选择“Troubleshooting”选项再选择“Rescue a CentOS system”选项,进入急救模式
1111
选择“1”选择Continue并按Enter键继续在此按Enter键后将进入带“sh-4.2#”提示符的Bash Shell环境sh-4.2# mkdir /backupdirsh-4.2# mount/dev/sdb /backupdir      #挂载带有备份文件的分区sh-4.2# dd if=/backupdir/mbr.bak of=/dev/sda     #恢复备份数据sh-4.2# hexdump -C -n 512 /dev/sda       #查看字节(字节恢复正常后,重新启动系统即可恢复)
修复MBR扇区故障(图文详解)

image-20240102230855980

image-20240102231507104

image-20240102232006534

image-20240102232244263

image-20240102232802383

image-20240102232827067

image-20240102233040065

image-20240102234956584

image-20240102235204261

image-20240102235324229

image-20240102235403314

3、修复GRUB引导故障

3.1 故障原因

①、MBR中的GRUB引导程序遭到破坏

②、grub.conf文件丢失、引导配置有误

3.2 故障现象

系统引导停滞,显示“grub>”提示符

3.3 解决思路

①、尝试手动输入引导命令

②、进入急救模式,重写或者从备份中恢复grub.conf

③、向MBR扇区中重建grub程序

3.4 故障模拟及处理过程

/boot/grub/目录下的包是用于启动菜单的背景图片及样式

/boot/grub2/grub.cfg #GRUB配置文件

方法一:手动输入引导命令(笨拙繁琐,不建议使用)

grub> insmod xfs     #加载指定的模块到内核grub> linux16 /vmlinuz-3.10.0-693.e17.x86_64  root=UUID=8fd74986-ae66-4ffd-b7d8-a19f2eca7b6f ro rhgb quite  LANG=zh_CN.UTF-8       #内核的名字及位置等信息grub> initrd16 /initramfs-3.10.0..693.e17.x86_64.img    #镜像系统文件grub> boot      #引导boot

方法二:进入急救模式,恢复GRUB引导程序

MBR位于第一块硬盘(/dev/sda)的第一个物理扇区处,总共512字节,前446字节是主引导记录,分区保存在MBR扇区中的第447-510字节中

①、备份数据到其他磁盘中

mkdir /bakmonut /dev/sdb1 /bakdd if=/dev/sda of=/bak/grub.bak bs=446 count=1

②、模拟对MBR中的GRUB引导程序的破坏,但并不破坏分区表

  dd if=/dev/zero of=/dev/sda bs=446 count=1

③ 引导界面进入急救模式,从备份文件中恢复GRUB引导程序

sh-4.2# mkdir /backupdirsh-4.2# mount/dev/sdb1 /backupdir    #挂载带有备份文件的分区sh-4.2# dd if=/backupdir/grub.bak of=/dev/sda     #恢复备份数据sh-4.2# exit     #执行exit命令退出临时Shell环境,系统将会自动重启

方法三:引导界面进入急救模式,重建GRUB菜单配置文件

mv /boot/grub2/grub.cfg /opt       #先模拟破坏grub.cfg配置文件重启进入急救模式 321sh-4.2# chroot /mnt/sysimage     #先切换根,从光盘的根切换到系统的根bash-4.2# grub2-install /dev/sda     #重新将GRUB引导程序安装到第一块硬盘(/sev/sda)的MBR扇区,(如果有多个分区可省略)bash-4.2# grub2-mkconfig -o /boot/grub2/grub.cfg     #重新生成GRUB菜单的配置文件bash-4.2# exit     #退出chroot环境sh-4.2# reboot     #重启
修复GRUB引导故障(图文详解)

image-20240103000341453

image-20240103001935576

image-20240103002146008

image-20240103002307311

image-20240103002415789

image-20240103002616843

image-20240103002804901

image-20240103002840851

image-20240103003746535

image-20240103004142432

4、遗忘root用户密码

4.1 故障原因
  • 遗忘root用户的密码
4.2 故障现象
  • 无法进行需要root权限的管理操作

  • 若没有其他可用账号,将无法登陆系统

4.3 解决思路
  • 进入急救模式,重设密码
4.4 故障模拟及处理过程
  • 有光驱
chroot /mnt/sysimage    #切换根目录
passwd    #修改密码
exit     #退出chroot环境
reboot    #重启
  • 无光驱
进入系统,在选择内核界面,选择第一个选项,按e将光标移动到linux开头行的最后(按end键),添加rd.break 然后按ctrl+x 运行
进入单用户mount -o remount,rw /sysroot    #重新挂载,添加读写权限chroot /sysroot    #切换到真正的根passwd    #修改密码touch /.autorelabel    #如果你开启了selinux需要重新打上标记
修改root用户密码(图文详解)

image-20240103005133236

image-20240103005749030

image-20240103010056484

image-20240103010455365

image-20240103010752177

三、Linux系统服务控制

1、系统服务控制

服务程序

  • 一旦运行,一直运行,不会退出;
  • 一般是后台运行,不会影响前台的操作
1.1 格式:systemctl 控制类型 服务名称
1.2 控制类型

①、start—启动

②、stop—停止

③、restart—重新启动

④、reload—重新加载配置文件

⑤、status—查看服务状态

centos6 —— chkconfig

service  服务程序  start     #开启service  服务程序  stop     #关闭service  服务程序  status    #查看状态service  服务程序  reload     #重新加载配置文件service  服务程序  restart      #重启chkconfig --level 35 服务程序 on    #开机自启chkconfig --level 35 服务程序 off    #关闭开机自启

centos7 —— systemd

systemctl  start  服务名       #开启systemctl  stop  服务名       #关闭systemctl  status  服务名       #查看状态systemctl  reload  服务名       #重新加载配置文件systemctl  restart  服务名       #重启systemctl  enable  服务名    #开机自启systemctl  disable  服务名    #开机不自启systemctl  enable --now  服务名     #开机自启,并立即启动systemctl  disable --now  服务名     #开机不自启,并立即关闭

四、Linux系统运行级别切换

1、查看运行级别

1.1 runlevel命令:runlevel只能查看切换运行级别与当前运行级别
1.2 systemctl工具
  • systemctl 时能查看默认的运行级别

2、临时切换运行级别

2.1 init命令
  • init命令参数是运行级别所对应的的数字
2.2 systemctl工具
  • systemctl的命令参数是具体的target
2.3 init与systemctl对应表

img

3、查看系统默认级别

  • systemctl get-default

4、设置临时运行级别

格式:chkconfig --list [服务名称]

​ chkconfig --add 服务名称

​ chkconfig --level 级别列表 服务名 on/off

chkconfig --add httpdchkconfig --level 35 httpd on     #开机自启chkconfig --level 35 httpd off     #关闭开机自启

5、设置永久运行级别

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.targetsystemctl set-default multi-user.target

五、优化开机自动加载服务

1、优化启动过程

1.1 ntsysv工具
  • 提供一个交换式、可视化窗口
  • 可以在字符终端运行
  • 便于集中管理多个服务
  • 用于控制服务是否开机自启动
1.2 systemctl/chkconfig工具
  • 不提供交互式、可视化窗口
  • 管理单个服务效率更高

2、系统服务的启动和控制

2.1 ntsysv系统服务管理工具
  • 输入ntsysv命令进入设置界面
  • 按空格键标志服务选项(*为自启项)
  • 按↑、↓键切换服务选项
  • 按tab切换光标

常用命令

sysemctl is-enabled 服务名称     #查看系统服务的启动状态systemctl enable 服务名称       # 开启开机自启动syatemctl disable 服务名称      # 关闭开机自启动

3、命令补充

hostnamectl set-hostname 新主机名    #永久修改主机名hostnamectl status    #查看主机名的状态localect set-locale LANG=zh_CN.utf8     #设置系统语言为中文localectl [status]     #查看当前系统使用的语言systemd=analyze     #查看系统启动耗时
http://www.hengruixuexiao.com/news/7186.html

相关文章:

  • WordPress微信SVG图标合肥seo代理商
  • 台州公司网站建设自己创建一个网站需要多少钱
  • 网站里面的链接怎么做的aso优化的主要内容
  • 盗取dede系统做的网站模板做网页多少钱一个页面
  • 个人优秀网站新闻平台发布
  • 兰州手机网站制作公司病毒什么时候才能消失
  • 旅行社网站 模板网络营销策划案怎么写
  • 长沙哪里优化网站seo推广小分享
  • 搭建asp虚拟主机网站北京网站排名seo
  • 中山精品网站建设新闻全国十大跨境电商排名
  • div css旅游网站中文模板设计百度用户服务中心客服电话
  • 做网站用asp还是php好网站推广服务外包
  • h5互动网站建设关键词排名查询工具
  • 专业做网站有哪些网站制作的重要性及步骤详解
  • 个人网站要怎么备案有网站模板怎么建站
  • 专业做鞋子网站有哪些网站如何做推广
  • 网站建设用户量分析网站推广网络营销方案
  • 网站报价方案怎么做百度seo排名如何提升
  • 如何在网站上做抽奖系统搜客通
  • 做网站的安全证书免费b站动漫推广网站2023
  • 浦东网站建设公司百度sem竞价托管公司
  • 西宁网站推广百度收录域名
  • 做网站用什么配置的vps百度公司在哪
  • 即墨今天新闻大事网站搜索引擎优化方案的案例
  • 阿里云服务器做美女网站如何制作网页游戏
  • 网站没有web.config百度地图导航2022最新版下载
  • 2021半夜好用的网站最有效的免费推广方法
  • 服装购物网站建设2022最新永久地域网名
  • 专业建设网站的搜索引擎google
  • 网站网站设计公司自己有产品怎么网络销售