• linux笔记之基础 1


    内核命名规则:

    R.X.Y-Z   2.6.32-642

    R: 内核有重大改变时才会更改,目前为止有四个大版本更新。
    X:基数为开发版,偶数为稳定版。
    Y、Z:修复bug,实现新功能,新特性的时候更改。

    mainline : 表示主线开发版

    stable:稳定版

    longterm:表示长期支持版,如果标记为EOL,则表示不再提供更新

    目前主流的内核版本是2.6,3.X,4.X属于开发调试阶段。

    硬盘分区:

    常见的硬盘接口类型有:

    IDE,SATA,SCSI,SAS
    
    IDE:多用于家庭,传统服务器上 / hda  
    
    SATA:应用于家庭和低端服务器。/ sda      主分区:sda1-4   逻辑分区从sda5开始。
    
    SCSI,SAS:主要应用于服务器市场
    
    光纤通道:主要应用于高端服务器上

    文件系统有: MBR 和  G P T     MBR最多支持4个主分区,GPT可以支持更多主分区。

    UEFI取代BIOS,GPT取代MBR。使用GUID分区表的磁盘称为GPT磁盘

    GRUB:多操作系统启动程序,用来引导不同系统。

     Linux系统启动流程:

    1、加载BIOS,BIOS中包含,硬件信息,启动顺序信息,时钟信息等。

    2、读取MBR,将MBR引导扇区中的内容复制到0x7c00地址所在的物理内存中。被复制到物理内存中的内容叫作BootLoader。

    3、GRUB引导,根据GRUB配置信息,启动硬盘中不同的操作系统

    4、加载kernel,计算机读取内存映像,并进行解压缩操作,屏幕一般会弹出:“Uncompressing Linux” 的提示;解压缩内核完成后,屏幕输出:“OK booting the kernel” ;系统将解压后的内核放置在内存中,并调用start_kernel() 函数来启动一系列的初始化函数,并初始化各种设备,完成Linux核心环境的建立。

    5、加载inittab运行等级

    内核加载完毕,会启动第一个守护进程init,然后通过该进程读取/etc/inittab

    6、加载rc.sysinit

    执行第一个用户层文件:/etc/rc.d/rc.sysinit。该功能包括:设定path运行变量、设定网络设置、启动swap分区、设定/proc、系统函数、配置SELinux等。

    7、加载内核模块

    读取/etc/modules.conf 文件及/etc/modules.d 目录下的文件来加载系统内核模块。该模块文件,可以后期添加或者修改及删除。

    8、启动运行级别程序

    根据之前读取的运行级别,操作系统会运行 rc0.d 到 rc6.d 中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务。其中以S开头表示系统即将启动的程序,如果以K开头,表示停止该服务。S和K后面的数字为启动顺序编号。

    9、读取rc.local文件

    操作系统启动完相应服务后,会读取执行/etc/rc.d/rc.load 文件,可以将需要开机启动的任务加入到该文件末尾,系统会逐行去执行并启动相应命令。

    10、执行/bin/login程序

    执行login程序,启动到系统登录界面,等待用户输入用户名和密码,即可登录到shell终端。

    CentOS6与CentOS7的区别

    A B C D
    编号 系统功能 CentOS6 CentOS7
    1 init系统 sysvinit systemd
    2 桌面系统 GNOME 2.x GNOME 3.x / GNOME Shell
    3 文件系统 ETX4 XFS
    4 内核系统 2.6.X 3.10.X
    5 启动加载器 GRUB Legacy (+efibootmgr) GRUB2
    6 防火墙 iptables firewalld
    7 数据库 MySQL MariaDB
    8 文件目录 /bin、/sbin、/lib、/lib64 在根下 /bin、/sbin、/lib、/lib64 在 /usr 下
    9 主机名 /etc/sysconfig/network /etc/hostname
    10 时间同步 ntp,ntpq -p chrony, chronyc sources
    11 修改时间 $ vim /etc/sysconfig/clock
       ZONE="Asia/Tokyo"
       UTC=fales
    $ sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
    $ timedatectl set-timezone Asia/Tokyo
    $ timedatectl status
    12 区域及字符设置 $ vim /etc/sysconfig/i18n
       LANG="ja_JP.utf8"
    $ /etc/sysconfig/i18n
    $ locale
    $ localectl set-locale LANG=ja_JP.utf8
    $ localectl status
    13 启动停止服务 $ service service_name start
    $ service service_name stop
    $ service sshd restart/status/reload
    $ systemctl start service_name
    $ systemctl stop service_name
    $ systemctl restart/status/reload sshd
    14 自动启动 $ chkconfig service_name on/off $ systemctl enable service_name
    $ systemctl disable service_name
    15 服务列表 $ chkconfig --list $ systemctl list-unit-files
    $ systemctl --type service
    16 kill服务 $ kill -9 <PID> $ systemctl kill --signal=9 sshd
    17 网络及端口信息 $ netstat
    $ netstat -I
    $ netstat -n
    $ ip n
    $ ip -s l
    $ ss
    18 IP信息 $ ifconfig -a $ ip address show
    19 路由信息 $ route -n
    $ route -A inet6 -n
    $ ip route show
    $ ip -6 route show
    20 关闭停止系统 $ shutdown -h now  $ poweroff
    $ systemctl poweroff
    21 单用户模式 $ init S $ systemctl rescue
    22 运行模式 [GUICUI]
    $ vim /etc/inittab
      id:3:initdefault:
    [CUIGUI]
    $ startx
    [GUICUI]
    $ systemctl isolate multi-user.target
    [CUIGUI]
    $systemctl isolate graphical.target
    默认
    $ systemctl set-default graphical.target
    $ systemctl set-default multi-user.target
    当前
    $ systemctl get-default
  • 相关阅读:
    简单优化:Zipalign
    Using lists in Android (ListView)
    6410移植RT3070无线模块,WPA加密方式,并开机自动加载
    html表格的动态增加删除
    html 中表格长度固定
    跨域 Iframe 通信解决方案(兼容 IE 系列浏览器。)
    Sass 基础和入门
    javascript 模块化编程 1
    Canvas的方法覆盖和实现新的API
    获取鼠标点击相对于Canva位置的2种方法
  • 原文地址:https://www.cnblogs.com/linuxws/p/10466529.html
Copyright © 2020-2023  润新知