那篇文章不涉及操作系统,只与主板的板载程序有关。今天,分享一篇Linux系统启动的文,主要探讨操作系统接管硬件以后发生的事情,也就是操作系统的启动流程。 ? 这个部分比较有意思。...它们在Windows叫做"服务"(service),在Linux就叫做守护进程(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。Linux允许为不同的场合,分配不同的开机启动程序,这就叫做运行级别(runlevel)。...rc",表示run command(运行程序),最后的d表示directory(目录)。...Linux的解决办法,就是七个 /etc/rcN.d 目录里列出的程序,都设为链接文件,指向另外一个目录 /etc/init.d ,真正的启动脚本都统一放在这个目录中。
linux命令: cp -rf 源文件 目标文件 cp的各选项含义: a 常在拷贝目录时使用。并保留链接、文件的属性,递归地拷贝目录。 d 保留链接的拷贝。 f 删除目标文件而不提示。...p 不但复制源文件的内容,而且还将修改时间和访问权限也复制到新文件中。 r 若源文件是目录文件,cp命令将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。...表示run command(运行程序),最后的d表示directory(目录)。...Linux的解决办法,就是七个 /etc/rcN.d 目录里列出的程序,都设为链接文件,指向另外一个目录 /etc/init.d ,真正的启动脚本都统一放在这个目录中。...第七步,打开 non-login shell 老实说,上一步完成以后,Linux的启动过程就算结束了,用户已经可以看到命令行提示符或者图形界面了。但是,为了内容的完整,必须再介绍一下这一步。
本篇的重点是讲解设备和驱动的启动流程,设备和驱动的流程是整个内核启动的核心,也是工作中最常面对的问题。出于知识点的系统性考虑,在进入主题之前我们先看下整个 Linux 在 ARM 中的启动流程如何。...Uboot 的启动流程 ARM Linux 的启动流程大致为:Uboot → Kernel → Root filesystem。Uboot 在上电的时候就拿到 CPU 的控制权,实现了硬件的初始化。...Uboot 拿到 CPU 使用权就开始做初始化工作,比如关闭看门狗、设置 CPU 运行模式、设置堆栈、初始化内存、网卡、nand flash 等,最后把 Linux 内核加载到内存中。...Linux 内核的启动流程(设备和驱动的加载) 关于 Uboot 的启动本课程不做详细介绍,因为本课程的主要内容是内核。在讲述内核启动之前让我们先了解下内核的组成结构: ?...(5)最后 piggy.o 文件和 Bootstrap Loader 组成一个 Bootable Kernel Image 文件(可启动文件)。
所以还差最后半步:把笔记放进一个你能随时翻、能互相连、该出现时自己冒出来的地方。这种地方有个现成的名字,叫"个人知识库"。...这篇文章就讲怎么把上篇那一份Markdown塞进去,主角是两个最省事的工具:ima和Obsidian。为什么不能直接扔进一个文件夹有人觉得,建个notes文件夹不就完了?...文件夹靠你记得"文件叫啥、放哪了"。知识库靠意思找,你问"上次那本讲决策偏差的书,怎么说的锚定效应",它把那段话直接拎出来。第二,连得起来。文件夹里每篇都是孤岛。...笔记进了知识库,才真正从"作者的书"变成"你的东西"。先选一个:ima还是Obsidian两个都能装你的笔记,但脾气不一样。先想清楚用哪个,别两个都试,最后两个都荒废。...用Obsidian:把笔记变成会互相指的网Obsidian最值钱的是一个功能:笔记之间能互相链接。你读过的书、写过的复盘、做过的项目,全能在里面串起来。装好软件,新建一个资料库,本质就是个普通文件夹。
统计某文件夹下文件的个数 ls -l |grep "^-"|wc -l 统计某文件夹下目录的个数 ls -l |grep "^d"|wc -l 统计文件夹下文件的个数,包括子文件夹里的 ls -lR...grep "js"|wc -l 统计文件夹下目录的个数,包括子文件夹里的 ls -lR|grep "^d"|wc -l 说明: ls -lR 长列表输出该目录下文件信息(R代表子目录注意这里的文件,不同于一般的文件...,又由于一行信息对应一个文件,所以也就是文件的个数。...====================================== 如果只查看文件夹 ls -d 只能显示一个. find -type d 可以看到子文件夹 ls -lF |grep .../ 或 ls -l |grep '^d' 只看当前目录下的文件夹,不包括往下的文件夹
linux查看文件夹下的文件个数(当前目录的文件数)//包含子目录 ls -l |grep "^-"|wc -l //验证了redhat好用 或 find ..../company -type f | wc -l 查看某文件夹下文件的个数,包括子文件夹里的。 ls -lR|grep "^-"|wc -l 查看某文件夹下文件夹的个数,包括子文件夹里的。...ls -lR|grep "^d"|wc -l 说明: ls -l 长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等) grep "^-" 这里将长列表输出信息过滤一部分...,只保留一般文件,如果只保留目录就是 ^d wc -l 统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于 一行信息对应一个文件,所以也就是文件的个数。...Linux查看文件夹大小 du -sh 查看当前文件夹大小 du -sh * | sort -n 统计当前文件夹(目录)大小,并按文件大小排序 du -sk filename 查看指定文件大小 来源:https
[ $zhu -lt 2 ] || ( [ $zhu -eq 2 ] && [ $ci -lt 4 ] ) then echo "版本太低" else echo `uname -r` fi 最后执行.../bin/bash read -p "请输入一个小于100的数" num sum1=0; i=1; while [ $i -le $num ] do sum1=`expr $sum1 + $.../bin/bash read -p "请输入文件的绝对路径和名称" path type=`echo $path | awk -F'.' '{ print $NF }'` #echo $type case...in gz) tar -xzvf $path #echo gz ;; bz2) tar -xjvf $path #echo bz2 ;; *) echo "没有对应的解压方式
开机信息亦保存在 /var/log 目录中,名称为 dmesg 的文件里。...运行时的日志: /var/log/messages Red Hat Centos /var/log/syslog Ubuntu Debian 02 — 关闭或者重启系统 立即重启 reboot或者init
chmod -R 777 dist/ chown windseek:staff dist/ 改变dist的权限到staff组里的windseek用户下 alias ll=`ls -al` ll对应是 ls-al
linux查看文件夹大小 1.命令如下 du -sh * | sort -n 如图:
Linux下各文件夹的说明: /bin:二进制可执行命令。 /dev:设备特殊文件。 /etc:系统管理和配置文件。 /etc/rc.d:启动的配 置文件和脚本。.../usr/src:源代码,linux内核的源代码就放在/usr/src/linux 里。 /usr/local/bin:本地增加的命令。 /usr/local/lib:本地增加的库根文件系统。.../bin目录 /bin目录包含了引导启动所需的命令或普通用户可能用的命令(可能在引导启动后)。这些命 令都是二进制文件的可执行程序(bin是binary的简称),多是系统中重要的系统文件。 2....linux正是靠这些文件才得以正常地运行。 4. /root目录 /root目录是超级用户的目录。 5..../proc/stat:系统的不同状态,例如,系统启动后页面发生错误的次数。 17. /proc/uptime:系统启动的时间长度。 18. /proc/version:核心版本。
Linux操作系统的启动过程是一个复杂而精密的流程,涉及到多个阶段和组件。本文将对Linux启动流程进行深入探讨,并对比不同发行版之间的一些差异。...传递控制权: 最后,Grub将控制权传递给Linux内核。 Syslinux的启动流程 Syslinux是另一个轻量级的引导加载程序,适用于一些嵌入式系统和Live CD。...传递控制权: 最后,Syslinux将控制权传递给Linux内核。 2. 内核启动过程 无论使用哪种引导加载程序,一旦内核被加载到内存,就会开始执行内核启动过程。...不同发行版的差异 尽管Linux启动流程有很多共通之处,但不同的发行版可能有一些细微的差异。...通过对比不同发行版的启动流程,我们能更好地理解Linux系统的运作机制,为故障排查和系统优化提供更深入的了解。希望本文能够帮助读者更好地理解Linux启动流程,并在实际应用中发挥作用。
主机加电自检,加载BIOS硬件信息 读取MBR的引导文件(GRUB、LILO) 引导Linux内核 运行第一个进程init(进程号永远为1), 进入相应的运行级别 运行终端,输入用户名和密码 开机自检,...MBR引导,加载grub菜单,在grub菜单里面加载kernel,启动init进程,init是Linux系统启动时第一个启动的进程,init读取inittab文件,先执行/etc/rc.d/rc.sysinit...初始化脚本(设置主机名,加载inittab,设置网卡和一些PCI设备),根据inittab设置的级别指向相对应的脚本,如果是3模式则指向/etc/rc3.d下面的脚本以及程序,执行rc.local,最后启动
linux启动顺序: 1)开机BIOS自检 2) MBR引导 3)grub引导菜单 4)加载内核kernel 5) 启动 init 进程 6) 读取...inittab文件,执行rc.sysinit rc 等脚本; 7)启动login登录界面 login 8)在用户登录的时候执行sh脚本的顺序:每次登录的时候都会完全执行的
每次打开 Linux PC 时,它都会经历一系列阶段,然后最终显示提示输入用户名或密码的登录屏幕。每个 Linux 发行版在典型的启动过程中都会经历 4 个不同的阶段。...每次打开 Linux PC 时,它都会经历一系列阶段,然后最终显示提示输入用户名或密码的登录屏幕。每个 Linux 发行版在典型的启动过程中都会经历 4 个不同的阶段。...当 Linux 系统启动时,BIOS(基本输入输出系统)启动并执行开机自检(POST)。这是执行大量诊断检查的完整性检查。...GRUB 的主要目标是将 Linux 内核加载到主内存中。 3. 内核初始化 内核是任何 Linux 系统的核心。它将 PC 的硬件与底层进程连接起来。内核控制 Linux 系统上的所有进程。...启动 Systemd 内核最终加载了Systemd,它是旧SysVinit的替代品。Systemd是所有 Linux 进程的母体,并管理文件系统的挂载、启动和停止服务等等。
启动第四步--加载内核 根据grub设定的内核映像所在路径,系统读取内存映像,并进行解压缩操作。此时,屏幕一般会输出“Uncompressing Linux”的提示。...系统将解压后的内核放置在内存之中,并调用start_kernel()函数来启动一系列的初始化函数并初始化各种设备,完成Linux核心环境的建立。...Linux 内核在完成系统的初始化之后需要挂载某个文件系统作为根文件系统(Root Filesystem),然后加载必要的内核模块,启动应用程序。...这就是嵌入式Linux系统启动过程 Linux 引导的整个过程。...从以上分析可以看出 Bootloader在运行过程中虽然具有初始化系统和执行用户输入的命令等作用,但它最根本的功能就是为了启动 Linux 内核,让我们进一步分析 Bootloader 和 Linux
-r 就是向下递归,不管有多少级目录,一并删除 -f 就是直接强行删除,不作任何提示的意思 删除文件夹实例: rm -rf /var/log/httpd/access 将会删除.../var/log/httpd/access目录以及其下所有文件、文件夹 删除文件使用实例: rm -f /var/log/httpd/access.log 将会强制删除/var/log
Linux下有三个命令:ls、grep、wc。通过这三个命令的组合可以统计目录下文件及文件夹的个数。...1、统计当前目录下文件的个数(不包括目录) $ ls -l | grep "^-" | wc -l 2、统计当前目录下文件的个数(包括子目录) $ ls -lR| grep "^-" | wc -l 3...、查看某目录下文件夹(目录)的个数(包括子目录) $ ls -lR | grep "^d" | wc -l image.png 命令解析: ls -l 长列表输出该目录下文件信息(注意这里的文件是指目录...grep "^-" 过滤ls的输出信息,只保留一般文件,只保留目录是grep "^d"。 wc -l 统计输出信息的行数,统计结果就是输出信息的行数,一行信息对应一个文件,所以就是文件的个数。
Linux Linux启动流程(了解) 加载BIOS(Basic Input Output System):BIOS是系统启动时加载的第一个软件。...读取主引导分区(MBR):拷贝启动引导代码BootLoader 启动引导代码(bootloader):当我们的硬盘上有多个操作系统时,可以用来选择进入到哪个操作系统。...这些文件夹下的init脚本都有一些特别的名字,命名都以S(start)、K(kill)或D(disable)开头,后面跟一个数字。...当init进入一个运行等级的时候,它会按照数字顺序运行所有以K开头的脚本并传入stop参数,除非对应的init脚本在前一个运行等级中没有启动。...解析用户自定义的启动脚本:/etc/rc.local(如果存在的话) 进入用户界面。