一、历史发展
Linux 操作系统的鼻祖Unix
肯.汤姆逊和丹尼斯.里 奇于1969年在贝尔实验室建立了Unix操作系统,一款同时支持多人登录的操作系统。为了开发此系统他们发明了C语言。并于1983年俩人获得了图灵奖。
GNU社区的建立
1983年,Richard M. Stallman创建了GNU计划,并制定了GPL协议。并以角马作为了社区LOGO。该社区的定义了一个非常重要的词“开源”。
MINIX 操作系统悄悄诞生
一款类Unix操作系统,由塔能鲍姆教授为教学使用而创作。1987年发布,该系统的源代码,以磁片的形式出售给院校或学生。该系统启发了Linux操作系统的创作
LINUX内核诞生
1992年Linus Torvalds根据MINIX操作系统建立Linux内核。Linux最初是作为支持英特尔x86架构的个人电脑的一个自由操作系统。由于其开源的特点结合了GNU社区的开源软件最终组成了如今大家所使用的Linux操作系统。
Debian是指一个致力于创建自由操作系统的合作组织及其作品,由于Debian项目众多内核分支中以Linux宏内核为主,而且 Debian开发者 所创建的操作系统中绝大部分基础工具来自于GNU工程 ,因此 “Debian” 常指Debian GNU/Linux。
ubuntu基于linux的免费开源桌面PC操作系统,十分契合英特尔的超极本定位,支持x86、64
工信部软件与集成电路促进中心(CSIP)携手国防科技大学(NUDT)与国际著名开源社区UBUNTU的支持公司CANONICAL在京宣布合作成立开源软件创新联合实验室,发起开源社区操作系统项目UbuntuKylin。
Kali linux操作系统
Kali Linux是基于Debian的Linux发行版, 设计用于数字取证和渗透测试 和 黑客攻防。
Kali Linux预装了许多渗透测试软件,包括nmap (端口扫描器)、Wireshark (数据包分析器)、John the Ripper (密码破解器),以及Aircrack-ng (一套用于对无线局域网进行渗透测试的软件). 用户可通过硬盘、live CD或live USB运行Kali Linux。Metasploit的Metasploit Framework支持Kali Linux,Metasploit一套针对远程主机进行开发和执行Exploit代码的工具。
红帽系列Linux 操作系统
Red Hat 企业版
由红帽公司建立的一款企业级操作系统
最新版本为7.0
Fedora 社区版
由Red Hat资助的社区操作系统,定位为个人版操作系统
最新版可以从官网http://fedoraproject.org下载
CentOS 社区版
Community Enterprise Operating System(社区企业操作系统)
最新版为7.5
三、安装CentOS7.5系统
安装步骤
若出现上面的界面,表示要打开物理机的虚拟化功能。
初始化CentOS7系统
CentOS7系统安装后
对初学者的建议
关闭防火墙 systemctl enable/disable firewalld
查看防火墙的状态:
Systemctl status firewalld
临时关闭防火墙
systemctl stop firewalld
永久停止防火墙开机自启动
systemctl disable firewalld
临时打开防火墙
systemctl start firewalld
防火墙开机启动
systemctl enable firewalld
关闭Selinux vi /etc/selinux/config SELINUX=disabled
查看Selinux状态
Getenforce
enforcing:强制模式,代表 SELinux 运作中,且已经正确的开始限制 domain/type 了;
permissive:宽容模式:代表 SELinux 运作中,不过仅会有警告讯息并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;
临时关闭SELinux
setenforce 0
临时打开SELinux
setenforce 1
开机关闭SELinux
编辑/etc/selinux/config文件,将SELINUX的值设置为disabled
1.vim config -------打开config文件
2.a -------进入编辑模式(下面会提示”插入”)
3.按ESC键 ,
4.输入:wq ------保存退出
引导启动过程
MBR:master boot record
Centos7以前启动Init进程
由 Linux 内核加载运行 /sbin/init 程序
是系统中第一个进程
PID(进程标记)号永远为1
Centos7以后启动systemd进程
Systemed单元类型
单元类型 |
扩展名 |
说明 |
Service |
.service |
描述一个系统服务 |
Socket |
.socket |
描述一个进程间通信的套接字 |
Device |
.device |
描述一个内核识别的设备文件 |
Mount |
.mount |
描述一个文件系统的挂载点 |
Automount |
.automount |
描述一个文件系统的自动挂载点 |
Swap |
.swap |
描述一个内存交换设备或交换文件 |
Path |
.path |
描述一个文件系统中文件或目录 |
Timer |
.timer |
描述一个定时器(用于实现类似cron的调度任务) |
Snapshot |
.snapshot |
用于保存一个systemd的状态 |
Scope |
.scope |
使用systemd的总线接口以编程的方式创建外部进程 |
Slice |
.slice |
描述居于Cgroup的一组通过层次组织的管理系统进程 |
Target |
.target |
描述一组systemd的单元 |
运行级别所对应的Systemd目标
运行级别 |
Systemd的target |
说明 |
0 |
poweroff.target |
关机状态,使用该级别时将会关闭主机 |
1 |
rescue.target |
单用户模式,不需要密码验证即可登录系统,多用于系统维护 |
2 |
multi-user.target |
用户定义/域特定运行级别。默认等同于3 |
3 |
multi-user.target |
字符界面的完整多用户模式,大多数服务器主机运行在此级别 |
4 |
multi-user.target |
用户定义/域特定运行级别。默认等同于3 |
5 |
graphical.target |
图形界面的多用户模式,提供了图形桌面操作环境 |
6 |
reboot.target |
重新启动,使用该级别时将会重启主机 |
改变运行级别
Systemctl get-default ---------查看默认的运行级别
Systemctl set-default multi-user.target ----------更改默认运行级别为字符界面多用户模式
Systemctl get-default -----查看更高后的运行级别
或者
Runlevel
Init 0-6
Init 0 -----关机===systemctl powoff
Init 6 ------重启==systemctl reboot
Centos7系统服务控制
常用方式
systemctl
控制类型
start:启动
stop:停止
restart:重新启动
reload:重新加载
status:查看服务状态
……
systemctl status rsyslog.service
systemctl restart rsyslog
管理服务启动
ntsysv工具
提供一个交互式、可视化窗口
可以在字符终端运行
便于集中管理多个服务
systemctl工具
不提供交互式、可视化窗口
管理单个服务效率更高
Ntsysv 以图形界面设置服务启停
ntsysv --level 级别列表
进入运行级别5图形界面设置服务的随机启动状态
systemctl is-enabled 服务名称 查看指定的服务是否设置为永久启动状态(enable永久启动,disable不永久启动)
Systemct list-units --type=service 查看所有设置为自动启动服务的状态
Systemctl –all查看所有服务状态
systemctl enable 服务名称(永久设置启动)
systemctl disable服务名称(永久设置不启动)
systemctl start 服务名
systemctl stop 服务名
对比老版本(适用于7以前版本)
查看服务chkconfig –list
查看服务状态service 服务名 status
启动服务:service 服务名 start
停止服务:service 服务名stop
服务永久设置
Chkconfig 服务名 on
Chkconfig 服务名 off
学习几个命令:
用户登录,提示符
[ 当前用户名@主机名 当前目录 ] 用户身份符
#代表用户是root;
$代表普通用户;
Cat /etc/centos-release ------查看具体的linux类型和版本
date显示日期
whoami显示登录用户名
hostname显示主机名
ifconfig显示ip
route -n显示路由
alias cls='clear'
alias ipconfig='ifconfig'
ping -c 2 172.18.199.1
reboot重启机器=init 6
halt -p或shutdown -h 0=init 0
单词表
Redhat 红帽子
Free 开源的
Enterprise 企业的
Root 根
Boot 启动
Terminal 终端
Localhost 本地主机
Info 信息
Total 总共