第1章部署虚拟环境安装Linux系统
唉!写博客不保存真的是坏习惯!
安装虚拟机
--安装VMworkstation Pro 12(so easy)
注意:
--安装客户机操作系统时选择“稍后安装操作系统”
--虚拟机内存设置:
--物理机内存≤2G时 虚拟机内存设置为1G
--物理机内存≥4G时 虚拟机内存设置为2G
=============================================我·是·分·割·线=============================================
安装Linux系统
--安装红帽RHEL Linux系统 7.0版本
注意:
--推荐选择英文安装语言,不推荐选择中文(容易出现乱码问题)
--实验机器可以是弱密码(如果使用弱密码需要按两次done键确认),实际生产过程中不要使用弱密码,因为这样很危险
--实验机器关闭kdump
=============================================我·是·分·割·线=============================================
重置root管理员密码
--RHCSA考前辅导时讲解(这个不着急)o(╯□╰)o主要是老师没讲
RPM(红帽软件包管理器,Redhat Package Manager)
--如何编写RPM的软件包(RHCA-RH401-RHN里学习o(╯□╰)o,这太遥远了)
--RPM=源代码+安装规则
RPM的作用:
--是降低软件安装难度,原理是将安装规则与源代码打包在一起,让系统自动根据安装规则来安装源代码
常用的RPM软件包命令
安装软件 rpm -ivh filename.rpm
升级软件 rpm -Uvh filename.rpm
卸载软件 rpm -e filename.rpm
查询软件描述信息 rpm -qpi filename.rpm
列出软件文件信息 rpm -qpl filename.rpm
查询文件属于哪个RPM rpm -qf filename.rpm
Yum软件仓库
--Yum源就是Yum的软件仓库地址
Yum软件仓库的作用
--Yum软件仓库的作用是为了降低软件安装难度,通过去解决软件包的依赖关系来自动安装来实现降低软件安装难度的技术
列出所有仓库 yum repolist all
列出仓库中所有软件包 yum list all
查看软件包信息 yum info 软件包名称
安装软件包 yum install 软件包名称
重新安装软件包 yum reinstall 软件包名称
升级软件包 yum update 软件包名称
移除软件包 yum remove 软件包名称
清除所有仓库缓存 yum clean all
检查可更新的软件包 yum check-update
查看系统中已经安装的软件包组 yum grouplist
安装指定的软件包组 yum groupinstall 软件包组
移除指定的软件包组 yum groupremove 软件包组
查询指定的软件包组信息 yum groupinfo 软件包组
systemd初始化进程
Linux系统的开机过程,即从BIOS开始,然后进入Boot Loader,在加载系统内核,然后内核进行初始化,最后启动初始化进程。初始化进程作为Linux系统的第一个进程,它需要完成Linux系统中的相关初始化工作。红帽RHEL7系统替换掉旧版的初始化进程服务system V init,改用全新的systemd初始化进程服务。
daemom守护进程
--随系统开机而开机,随系统关闭而关闭
--RHEL5/6 init(串行)
--RHEL7 systemd(并发)
systemctl管理服务命令
--RHEL6使用service、chkconfig等命令来管理系统服务
--RHEL7使用systemctl来管理命令服务
运行服务 systemctl start 服务名称
重启服务 systemctl restart 服务名称
停止服务 systemctl stop 服务名称
加入到启动项 systemctl enable 服务名称
开机不自动启动 systemctl disable 服务名称
查看服务状态 systemctl status 服务名称
重新加载配置文件 systemctl reload 服务名称
查看特定服务是否为开机自动启动 systemctl is-enabled 服务名称
查看各级别下服务的启动与禁用情况 systemctl list-unit-files --type=service
注意:
--systemctl 配置工具
--systemd 服务名称
--系统启动后systemd无法再次重启
=============================================我·是·分·割·线=============================================
第2章新手必须掌握的命令
shell(称为终端或壳)
--充当人与内核(硬件)之间的翻译官,用户把命令“告诉”终端,它就会调用相应的程序服务去完成某些工作
Bash(Bourne-Again SHell)
--主流Linux系统选择Bash解释器作为命令行终端
Bash的特点:
--通过上下键来调取过往执行过的Linux命令
--命令或参数仅需输入前几位就可以用Tab键补全
--具有强大的批处理脚本
--具有使用的环境变量功能
执行查看帮助命令
--Linux命令格式
命令名称 [命令参数] [命令对象]
--参数的目的是让命令更好的贴合工作
--对象是命令的承受方
命令分为长格式和短格式
长格式 man --help
短格式 man -h
注意:
--长格式与长格式之间不能合并
--list--all X
--长格式与短格式之间不能合并
--list-a X
--短格式与短格式之间可以合并,保留一个“-”号
-la/-al √
=============================================我·是·分·割·线=============================================
man帮助文件查看命令
查看man命令自身帮助信息 man man
常用系统工作命令
Linux严格区分命令的大小写
echo命令
--echo命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | $变量]"
date命令
--date命令用于显示及设置系统的时间或日期,格式为”date [选项] [+指定的格式]“
date命令参数及作用
跳格[Tab键] %t
小时(00~23) %H
小时(00~12) %I
分钟(00~59) %M
秒(00~59) %S
今年中的第几天 %j
--例:date ”+%H:%M:%S“ 20:15:40
reboot命令
--reboot命令用于重启系统,格式为reboot
poweroff命令
--poweroff命令用于关闭系统,格式为poweroff
--相同用途命令
init0
halt
shutdown -s -t 3600
ps命令
--ps命令用于查看系统中的进程状态,格式为”ps [参数]“
--ps命令可以允许参数不加减号(-),因此可直接写成ps aux
显示所有进程(包括其他用户进程) -a
用户以及其他详细信息 -u
显示没有控制终端的进程 -x
Linux中5种常见的进程状态,分别为运行、中断、不可中断、僵死、停止,各自含义如下
R(运行):进程正在运行或在运行队列中等待
S(中断):进程处于休眠中,当某个条件形成后或者接收信号时,则脱离该状态
D(不可中断):进程不影响系统异步信号,即便用kill命令也不能将其中断
Z(僵死):进程已经终止,但进程描述符依然存在,直到父进程调用wait4()系统函数后将进程释放
T(停止):进程收到停止信号后停止运行
top命令
--top命令用于动态地监视进程活动与系统负载等信息,格式为top
--第1行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
--第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
--第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“97.1 id”意味着有97.1%的CPU处理器资源处于空闲。
--第4行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
--第5行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。
pidof命令
--pidof命令用于查询某个指定服务进程的PID值,格式为”pidof [参数] [服务名称]“
--每个进程的进程号码值(PID)是唯一的,可以通过PID来区分不同的进程
kill命令
--kill命令用于终止某个指定PID的服务进程,格式为”kill [参数] [进程PID]“
kill sshd
systemctl stop sshd
--这两个命令的作用是一样的
killall命令
--killall命令用于终止某个指定名称的服务所对应的全部进程,格式为”killall [参数] [进程名称]“