2021.10.09 入坑linux 第二天
天气 大雨 冷 感冒严重 一把鼻涕一把泪的
还是想坚持写完
我觉得有句话说的好:理论是实践的基础,实践才能出真理。所以为了得道,我先来理论一阵阵吧。
今天开始学习 VM 安装,并安装rhel8
VM 注意事项 1.内存最大设置2GB
2.CPU,硬盘
安装VM遇到的问题 度娘解决了 赞!
类似缺少依赖库 还缺少了一个 .dll文件和win10权限问题,忘记截图了,度娘都可以办到。s
首先学习linux安装软件的方法
RPM (红帽软件包管理器)
RPM 我的理解是linux软件源代码安装规则。听说缺点很多,一个软件安装需要的依赖程序,需要一个一个寻找和解决。类似windows的软件依赖程序,运行一个软件会提示需要安装 .net或者C++运行库一样。 ![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=102f7206e14444c5b7d7b316d43186c8.jpg#pic_center
RPM 安装命令
RPM -ivh f.rpm 安装软件 (install)
RPM -Uvh f.rpm 升级软件 (update)
RPM -e f.rpm 卸载软件 (uninstall)
RPM -qpi f.rpm 查询软件的描述信息
RPM -qpl f.rpm 列出软件文件的信息
RPM -qf f.rpm 查询文件属于哪个RPM
命令有些不好记,我想用的多了就自然了吧。
为了方便使用和安装linux软件后来推出Yum软件仓库,个人理解类似手机和win10 以上的应用商店吧。
Yum软件仓库可以自行定制 后续在更新如何配置Yum软件仓库
Yum的安装命令
yum repolist all 列出所有仓库
yum list all 列出仓库中所有的软件包
yum info 软件名 查看软件包信息
yum install 软件名 安装软件包
yum reinstall 软件名 重新安装软件包
yum update 软件名 升级软件包
yum remove 软件名 移除软件包
yun clean all 清除所有仓库缓存 (???)
yum check-update 检查可更行的软件包
yum grouplist 查看系统中已经安装的软件包
yum groupinstall 软件包组 安装指定的软件包组
yum groupremove 软件包组 移除指定的软件包组
yum gropinfo 软件包组 查询指定的软件包组信息
Yum虽然解决了软件的依赖关系,有时候也不准备,占用系统内存大,不能多人同时在线安装软件,2015年Fedora 22系统发布,推出了全新的Yum V4版本 —DNF DNF的用法和yum使用上基本相同,后续做实验的时候贴图比较吧。
linux系统初始化进程
了解系统是如何运作,对于以后排错和解决问题很有帮助
开机——BIOS——Boot Loaer(引导加载程序; 引导程序; 引导加载器; 引导装入程序; 启动加载器)——加载linux内核(kernel)——内核初始化——启动初始化进程(init)(7.8为systemd)进入桌面系统。
systemd是所有进程的根/ 进程,可以这样理解,进入桌面后的任何操作都是基于systemd来运行,另外每个进程都有唯一的ID,实际工作中可以观察进程来了解和判断自己的系统是否健康,用pstree 可以看出:
RHEL7以前的版本初始化进程服务叫 System V init RHEL7.8用systemd来初始化进程服务。这个我觉得可以这样理解,原来叫运行级别,现在直截了当,你想干什么,要达到什么目的。下面是个比较,虽然没有必要,我想写一写增加点记忆吧。
System V init systemd 目标名称 作用
0 poweroff.target 关机
1 rescue.target 单用户模式 (turbolinux 下可以可以修改root密码)
2 multi-user.target 多用户的文本界面
3 multi-user.target 多用户的文本界面
4 multi-user.target 多用户的文本界面
5 graphical.target 多用户的图形界面
在桌面系统无法启动的时候 可以用init 5 来强行启动,现在是否可以用 graphical.target 来启动呢,有机会试一下。
6 reboot.target 重启
emergency emergency.target 救援模式
运行目标随时可以更改
#ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
修改单用户模式,先找找存放目录
ln -sf /lib/systemd/system/rescue.target /etc/systemd/system/default.garget
看看执行结果
ctrl+D 后 提示starting rescue.target 最后的结果是挂了 哈哈,有时间部署一台服务器试吧。
下面是服务的启动、重启、停止、重载、查看状态命令,新旧对比一下加强记忆。
service sshd start systemctl start sshd 启动服务
service sshd restart systemctl restart sshd 重启服务
service sshd stop systemctl stop sshd 停止服务
service sshd reload systemctl reload sshd 重新加载配置文件不终止服务 (日常操作中会用的多点)
service sshd status systemctl status sshd 查看服务状态 (日常排错也挺有用)
常用到的启动项管理,就是linux各种服务检查状态,httpd、tomcat、apache、sshd等等吧,也作个对比,加深命令记忆。
chkconfig foo on systemctl enable httpd 开机自动运行
chkconfig foo of systemctl disable httpd 开机不自动启动
chkconfig foo systemctl is-enabled httpd 查看特定服务是否为开机自启动
chdconfig --list systemctl list-unit(单元)-files–type=httpd 查看各个级别下服务的启动和禁用情况。
今天先到这里,明天继续~~
新手出门,难免会有错的地方,还望大佬们指点和教诲,吾当虚心学习和改错·抱拳了