grub

第八周作业

谁说胖子不能爱 提交于 2019-11-28 05:47:44
1、用shell脚本实现自动登录机器 #!/usr/bin/expect set usr root set pw 123456 set ip 192.168.0.100 spawn ssh $usr@$ip expect { "yes/no" { send "yes\n";exp_continue } "password" { send "$pw\n" } } interact 2、shell 判断一个值bone是否在数组arrayZ=( one two three four five five )中 #!/bin/bash arrayZ=( one two three four five five bone ) for ((i=0;i<`echo ${arrayZ[*]}`;i++));do if [[`echo ${arrayZ[$i]}` =~ ^bone$ ]];then echo "bone in arrayZ" else echo "bone not in arrayZ" fi done 3、用命令或者脚本实现 0057AF051EFF 变为 00:57:AF:05:1E:FF 。 #!/bin/bash mac=0057AF051EFF for i in `seq 0 2 10`;do if [ $i -eq 10 ];then echo "${mac:$i:2}"

LinuxOS的启动流程

岁酱吖の 提交于 2019-11-28 05:07:23
因6和7俩个系列的启动流程有区别,所以我把他们分开来写 linux可看作是内核和根文件系统组成我们把内核单独拿出来总结一下 一、CentOS6系列启动流程 首先总结一下总体的流程,接下来展开来叙述:POST加电自检 -- MBR(0扇区前446个字节为GRUB第1阶段) -- (在1扇区后存放GRUB第1.5阶段)GRUB(第2阶段)-- 加载内核(vmlinuz,initramfs)-- 启动第一个进程(init ;/etc/ini/*.conf init 程序的配置文件)-- 读取/etc/inittab文件来决定进入的系统级别 -- 执行/etc/rc.d/rc.sysinit脚本来初始化系统 -- 使用/etc/rc.d/rc脚本来根据当前所在的系统级别来读取对应/etc/rc#.d/下的脚本 -- K开头的脚本不启动,S开头的脚本启动,启动顺序按后边跟的数子大小来决定 -- 最后执行的脚本/etc/rc.d/rc.local -- 启动/bin/login进程来启动登录程序 --- OK! 加载BIOS的硬件信息,获取第一个启动设备 读取第一个启动设备MBR的引导加载程序(grub)的启动信息 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备 核心执行init程序,并获取默认的运行信息 init程序执行/etc/rc.d/rc.sysinit文件

centos启动流程

↘锁芯ラ 提交于 2019-11-28 05:07:11
centos6启动流程 1、主板,post加电自检,检查硬件环境 2、主板选择一个硬盘进行引导,执行mbr446 grub stage1 3、grub stage1.5 加载/boot分区文件系统驱动,mbr后续的27个扇区 4、grub stage2 /boot/grub/grub.conf 读取内核路径 5、加载内核文件vmlinuz 加载根/ 配合该文件提供根的驱动/boot/initramfs.xxx.img 6、/sbin/init的一个进程 读取/etc/inittab配置文件 7、首先运行一个初始化脚本rc.sysinit 8、根据/etc/inittab 定义的7种模式 启动和关闭相对应的服务 /etc/rc3.d/S,Kxxxx ---> /etc/init.d/xxx chkconfig --level N service on|off 9、最后启动的一个脚本/etc/rc.local ,可以将自己需要启动的服务放到这个脚本里 10、登陆 login 来源: https://www.cnblogs.com/tony3154/p/10081447.html

Error 13: Invalid or unsupported executable while booting simple kernel in grub with string literal

陌路散爱 提交于 2019-11-28 04:19:33
问题 I've written a simple kernel that tries to write two characters to the frame buffer. If I define a string literal in the kernel, I get the following output when it boots: Booting 'os' kernel /boot/kernel.elf Error 13: Invalid or unsupported executable format Press any key to continue... Otherwise, if I define two characters I get the following (note 'ab' at the start of the output): abBooting 'os' kernel /boot/kernel.elf [Multiboot-elf, <0x100000:0x201:0x0>, <0x101000:0x0:0x1000>, shtab

Linux系统相关配置

岁酱吖の 提交于 2019-11-28 00:54:39
※修改主机名: centos5/6 1、/etc/sysconfig/network 2、修改hosts文件:/etc/hosts centos7 1、/etc/hostname,或者hostnamectl set-hostname newhostname 2、修改host文件 ※将网卡改为默认开机自动启动: ※同步服务器时间 centos 5/6 1、在/etc/ntp.conf里面加:server 170.18.0.1 iburst 2、service ntpd status &>/dev/null || service ntpd start &>/dev/null 3、设置开机启动:chkconfig ntpd on 4、同步时间:ntpdate 172.18.0.1 centos 7 1./etc/chrony.conf里面加server 172.18.0.1 iburst 2.systemctl status chronyd &>/dev/null || systemctl start chronyd &>/dev/null 3.设置开机启动:systemctl enable chronyd &>/dev/null 4.同步时间:ntpdate 172.18.0.1 ※查看文件或者目录大小:du -sh 目录名/文件名 ※新加硬盘df不显示,需要激活: echo ' -

Linux 系统故障修复和修复技巧

旧时模样 提交于 2019-11-27 23:49:05
我发现Linux系统在启动过程中会出现一些故障,导致系统无法正常启动,我在这里写了几个应用单用户模式、GRUB命令操作、Linux救援模式的故障修复案例帮助大家了解此类问题的解决。 一、单用户模式 Linux系统提供了单用户模式(类似Windows安全模式),可以在最小环境中进行系统维护。在单用户模式(运行级别1)中,Linux引导进入根shell,网络被禁用,只有少数进程运行。单用户模式可以用来修改文件系统损坏、还原配置文件、移动用户数据等。 以下列举了几个单用户模式修复系统故障的典型案例: 案例一:root密码忘记 在单用户模式中,Linux不需要root密码(Red Hat系统不需要root密码,但SuSe则需要,不同Linux系统稍有差别,本文以Fedora Core 6为例讲解),这使更改root密码非常容易。了解当系统引导进入多用户模式失败时,如何进入单用户模式,非常重要。 1、 在系统启动过程中,会出现开始界面,按任意键,进入GRUB菜单选项。(若希望以后无此提示,直接进入GRUB菜单选项,删除配置文件grub.conf中“hiddenmenu”项即可。) 2、 按“e”键编辑GRUB引导菜单选项,按“e”键后的GRUB屏幕。通过箭头键下移到kernel行,并按“e”键, 3、在尾行光标处添加single,按回车键返回前一个屏幕,按“b”键进行引导

【Linux系统引导过程】

大兔子大兔子 提交于 2019-11-27 20:56:53
" *** 第一步 开机自检 根据主板BIOS中的启动顺序,移交系统控制权。 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。 这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了。 *** 第二步 MBR引导 众所周知,硬盘上第 0 磁道第一个扇区被称为MBR,也就是Master Boot Record,即 主引导记录 ,它的大小是 512 字节,别看地方不大,可里面却存放了预启动信息、分区表信息。 系统找到BIOS所指定的硬盘的MBR后,就会将其复制到 0×7c00 地址所在的物理内存中。其实被复制到物理内存的内容就是 Boot Loader ,而具体到你的电脑,那就是 lilo 或者 grub 了。 换一种说法,首先会根据硬盘等个个扇区中MBR的设置,将系统控制权传递给包含操作系统引导文件的分区,或者直接根据MBR记录中的引导信息调用启动菜单。 *** 第三步 GRUB菜单 系统控制权传递给GRUB后,将会显示启动菜单,然后根据所选项或默认值加载Linux内核文件,最后将系统控制权转交给内核。 Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备

Linux中 /boot 目录介绍

匆匆过客 提交于 2019-11-27 20:54:22
转自 https://blog.csdn.net/dulin201004/article/details/7396968 一、/boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件; (2)启动管理程序GRUB的目录,里面存放的都是GRUB在启动时所需要的画面、配置及各阶段(stage1, stage1.5, stage 2)的文件。见下图。 (3)Initrd文件,是系统启动时的模块供应的主要来源; (4)System.map文件时系统Kernel中的变量对应表; (5)vmlinuz是在启动过程中最重要的一个文件,因为这个文件就是实际系统所使用的kernel。 二、/boot/grub目录 2.1 grub.conf文件 这个文件其实是启动管理程序GRUB的配置文件。在同一层目录下面(/boot/grub/)还有一个它的镜像文件menu.lst。而在SUSE中menu.lst是GRUB实际用到的文件。 下面这个文件是我系统上摘录的。 # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a

Linux引导过程与服务控制

微笑、不失礼 提交于 2019-11-27 20:52:08
一:系统引导流程: 开机自检(BIOS)-->MBR引导-->GRUB菜单-->加载内核(kernel)-->init进程初始化 二:系统引导级别: 0 poweroff.target 关机状态,使用该级别时将会关闭主机 1 rescue.target 单用户模式,不需要密码验证即可登录系统,多用 于系统维护 2 multi-user.target 用户定义/减特定运行级别。默认等同于3,但是不支持网络 3 multi-user.target 字符界面的完整多用户模式,大多数服务器主机运行在此级别 4 multi-user.target 用户定义/或特定运行级别,默认等同于3 5 graphical.target 图形界面的多用户模式,提供了图形桌面操作环境 6 reboottarget 重新启动,使用该级别时将会重启主机 三:Linux中服务的管理方式: 1、 独立管理 (门市房) systemctl start dhcpd systemctl stop dhepd 2、集中管理(商场)xinetd vim /etc/xinetd.ditftp disable = no systemctl start tftp 四:修复文件系统:扫盘 : Ext4:fsck -y -t ext4 /dev/sdb1 Xfs: xfs_repair /dev/sdb1 五: 服务控制及优化启动 1