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
原文地址:https://www.cnblogs.com/linuxws/p/10466529.html