概述
Linux问题总结
- 一、常见命令
- 1.查看系统版本
- 2.查看主机当前磁盘使用情况
- 3.查看并关闭selinux
- 4.rhel7.6版本进入单用户修改密码
- 二、常规知识点
- 1. C/S与B/S架构基础知识
- 5.修改网络接口为eth0
- 5.查看桥接
- 2.CDN基础知识
- 3.LVM
- 4.VNC
- 5.写时复制技术
- 6.双向解析会加速ssh连接的原因
- 7.selinux防火墙需要关闭的情况
- 8.查看桥接
- 9.centos7安装kvm,并创建虚拟机
- 10.虚拟化技术之kvm镜像模板制作工具virt-sysprep
- 11. NAT介绍
- 12.network与NetworkManger的区别
- 13.网络配置全局文件
- 14.linux命令补全参数提示程序bash-completion
- 15.查看服务是否开机自启
- 16.curl命令
- 17.URL介绍
- 18.evince命令
- 19.后台运行相关命令
- 20.ps -ef 指令详解
一、常见命令
1.查看系统版本
当前主机系统为rhel发行版时,查看系统版本命令
[root@wlb Desktop]# cat /proc/version
[root@westos_student73 rc.d]# cat /etc/redhat-release #查看红帽当前操作系统版本
#进入企业后,会遇到各种操作系统类型,但云端一般以centos为主,centos来源于rhel企业版,centos7可以正常用到2024年
#rhel被IBM(International Business Machines Corporation) 收购后,centos8改版成CentOS Stream,CentOS Stream 作为beta版本会先于RHEL先行,稳定之后再发布 RHEL。之前都是rhel企业版发布后,由 Red Hat企业版源码重新编译而成的CentOS才会接着发布,两个发行版具有 100% 的二进制兼容性。
#oel是Oracle 企业Linux,该版本是向红帽要了license,专门为匹配oracle数据库定制的
#中国互联网从08年开始去IOE,I指的是IBM的小型机(AIX(Advanced Interactive eXecutive)是IBM基于AT&T Unix System V开发的一套类UNIX操作系统,运行在IBM专有的Power系列芯片设计的小型机硬件系统之上),O是指oracle的顶尖企业级数据库,E是指emc的企业存储,并非性能不好,而是太贵了。现在的证券银行还在用这些系统,主要优势就是稳定。
#互联网公司用x86_64架构的居多,因为互联网公司用云计算,云计算业务可以在互联网中进行无缝自动迁移,所以对底层硬件没有太大的依赖,但是像金融银行证券这些传统行以或者移动、电信这些甲方公司,用商用的比较多,因为他们必须要责任落实于个人,出了问题要有人负责。开源软件的好处免费,但是出了问题没有人负责,开源社区也不会负责。互联网公司选择开源软件,主要是经济和技术能力都强,可以自己解决。
#操作系统性能比较 rhel>oel>centos,虽然centos是又rhel百分百编译的,但是调参不同,性能也有差异,centos比rhel性能至少差5%。但是可以忽略,因为当前环境下硬件比较强,而且又是云计算平台,可以迁移。
Cloud Native Computing Foundation(云原生计算基金会)介绍:https://blog.csdn.net/qq_35745940/article/details/121187610
2.查看主机当前磁盘使用情况
[root@wlb Desktop]# df -h /
用于列出所有可用块设备的信息
还能显示块设备之间的依赖关系,但是它不会列出RAM盘的信息
[root@wlb Desktop]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 7.9G 0 loop /var/www/html/source
loop1 7:1 0 4.2G 0 loop /var/www/html/rhel
nvme0n1 259:0 0 465.8G 0 disk
├─nvme0n1p1 259:1 0 16M 0 part
├─nvme0n1p2 259:2 0 195.3G 0 part
└─nvme0n1p3 259:3 0 270.4G 0 part
nvme1n1 259:4 0 477G 0 disk
├─nvme1n1p1 259:5 0 260M 0 part /boot/efi
├─nvme1n1p2 259:6 0 16M 0 part
├─nvme1n1p3 259:7 0 100G 0 part
├─nvme1n1p4 259:8 0 150G 0 part
├─nvme1n1p5 259:9 0 125.7G 0 part
├─nvme1n1p6 259:10 0 1000M 0 part
├─nvme1n1p7 259:11 0 1G 0 part /boot
├─nvme1n1p8 259:12 0 7.6G 0 part [SWAP]
└─nvme1n1p9 259:13 0 91.4G 0 part /
3.查看并关闭selinux
4.rhel7.6版本进入单用户修改密码
chroot,即change root directory(更改root目录),在Linux系统中默认的目录结构都是以/(即根目录)开始的,在使用chroot后,系统的目录结构将以指定的位置作为/位置
chroot命令详解: http://www.yinxi.net/doc/show_10325.html
由于当前的环境中 SELinux 关闭,所以我们对文件的修改可能造成文件的 context 不正确。为了确保开机时重新设定 SELinux context,必須在根目录下添加隐藏文件 .autorelabel。
二、常规知识点
1. C/S与B/S架构基础知识
数据库管理员(Database Administrator,简称DBA),专门负责数据库的
详细的架构流程
运维知识体系参考网站
https://www.unixhot.com/page/ops
接入层包括负载均衡高可用、反向代理缓存,其中负载均衡有四层负载均衡和7层负载均衡,阿里云的负载均衡SLB是四层加七层,Tengine是将Nginx改写而来的七层负载。
缓存层不止一个,缓存层用来不断加速,在任何一个阶段都加速。
5.修改网络接口为eth0
当网络接口为ens,而不是eth0时,想修改为eth0
5.查看桥接
[westos@wlb yum.repos.d]$ brctl show
bridge name bridge id STP enabled interfaces
br0 8000.fe54004f501a no vnet0
virbr0 8000.525400c7b1b7 yes virbr0-nic
2.CDN基础知识
1) CDN产生背景:
随着互联网用户规模的膨胀,用户服务访问效率低下的情况越来越明显。造成这种现象的主要原因在于网站出口带宽有限,以及跨网访问时不同网络间的互联互通带宽受到限制,因此容易造成网络拥堵。同时服务端到用户的物理距离非常遥远,不可避免地带来较长的传输时延。这些问题随着请求访问量的增加,严重影响了用户体验。在这种情况下,产生了一项互联网基础服务——CDN,即内容分发网络。
2) 什么是CDN?
CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。
- CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。
- CDN(Content Delivery Network)是指内容分发网络,也称为内容传送网络,这个概念始于1996年,是美国麻省理工学院的一个研究小组为改善互联网的服务质量而提出的。为了能在传统IP网上发布丰富的宽带媒体内容,他们提出在现有互联网基础上建立一个内容分发平台专门为网站提供服务,并于1999年成立了专门的CDN服务公司,为Yahoo提供专业服务。由于CDN是为加快网络访问速度而被优化的网络覆盖层,因此被形象地称为“网络加速器”。
3)CDN的组成
- CDN系统架构由分发服务系统、负载均衡系统和运营管理系统三部分组成。其中分发服务系统和负载均衡系统的构建,都需要部署具有相应功能的软件。
- CDN网络中包含的功能实体包括内容缓存设备、内容交换机、内容路由器、CDN内容管理系统等组成。
- 内容缓存为CDN网络节点,位于用户接入点,是面向最终用户的内容提供设备,可缓存静态Web内容和流媒体内容,实现内容的边缘传播和存储,以便用户的就近访问。
- 内容交换机处于用户接入集中点,可以均衡单点多个内容缓存设备的负载,并对内容进行缓存负载平衡及访问控制。
- 内容路由器负责将用户的请求调度到适当的设备上。内容路由通常通过负载均衡系统来实现,动态均衡各个内容缓存站点的载荷分配,为用户的请求选择最佳的访问站点,同时提高网站的可用性。内容路由器可根据多种因素制定路由,包括站点与用户的临近度、内容的可用性、网络负载、设备状况等。负载均衡系统是整个CDN的核心。负载均衡的准确性和效率直接决定了整个CDN的效率和性能。
- 内容管理系统负责整个CDN的管理,是可选部件,作用是进行内容管理,如内容的注入和发布、内容的分发、内容的审核、内容的服务等。
互联网业界喜欢用nginx搭建,阿里云使用的是Tengine,完全兼容nginx。
[root@westos_student73 rc.d]# curl -I www.taobao.com
HTTP/1.1 301 Moved Permanently#301表示重定向
Server: Tengine
Date: Fri, 01 Jul 2022 09:36:54 GMT
Content-Type: text/html
Content-Length: 262
Connection: keep-alive
Location: https://www.taobao.com/
Via: cache4.cn2264[,0]#缓存
Timing-Allow-Origin: *
EagleId: 1b13f91816566682146092605e
curl命令:
在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具。
(URL:路径=链接=网址)
3.LVM
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。
LVM产生背景:
每个Linux使用者在安装Linux时都会遇到这样的困境:在为系统分区时,如何精确评估和分配各个硬盘分区的容量,因为系统管理员不但要考虑到当前某个分区需要的容量,还要预见该分区以后可能需要的容量的最大值。因为如果估 计不准确,当遇到某个分区不够用时管理员可能甚至要备份整个系统、清除硬盘、重新对硬盘分区,然后恢复数据到新分区。
虽然有很多动态调整磁盘的工具可以使用,例如PartitionMagic等等,但是它并不能完全解决问题,因为某个分区可能会再次被耗尽;另外一个方面这需要 重新引导系统才能实现,对于很多关键的服务器,停机是不可接受的,而且对于添加新硬盘,希望一个能跨越多个硬盘驱动器的文件系统时,分区调整程序就不能解 决问题。
LVM介绍:
https://www.cnblogs.com/large-show/p/16203274.html
4.VNC
VNC [1] (Virtual Network Console)是虚拟网络控制台的缩写。它 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的。
介绍简介
https://www.csdn.net/tags/NtzakgxsNzYzNjYtYmxvZwO0O0OO0O0O.html
5.写时复制技术
写时复制(Copy On Write)
https://blog.csdn.net/qq_32131499/article/details/94561780
6.双向解析会加速ssh连接的原因
在连接apache,ssh,mysql等服务器时,如果出现连接过慢,可能的原因是dns 的反向查询。
反向解析是防止假冒的IP连接服务器,把IP解析成域名,来提高安全性,看这个IP是否是伪造,这是dns反向查询的功能之一。
7.selinux防火墙需要关闭的情况
当所用开源软件是系统之外的时,需要将selinux关闭,因为selinux有个特点,只要没有相应的安全上下文时,就会被禁用。
8.查看桥接
[root@wlb images]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.fe5400d51f5e no vnet0
virbr0 8000.525400c7b1b7 yes virbr0-ni
9.centos7安装kvm,并创建虚拟机
参考过程
10.虚拟化技术之kvm镜像模板制作工具virt-sysprep
virt-sysprep这个工具来自libguest-tools这个工具包,它能够把kvm虚拟机对应的磁盘文件做成一个模板,后续我们启动虚拟机就可以基于这个镜像模板启动
什么是镜像模板?
所谓模板就是去除了一个虚拟机自身的私有信息的一个镜像磁盘文件;我们知道把一个镜像文件启动为虚拟机以后,它会生成许多私有信息,比如网卡的mac地址,ip地址,磁盘的uuid,ssh密钥等等;对于模板我们是不需要把这些私有信息的,而virt-sysprep这个工具就能很好的帮助我们去制作一个模板文件,它能够让我们在模板中打入自己想要新装的软件包,想要加入到模板里的文件等等操作
virt-sysprep简介
11. NAT介绍
NAT(Network Address Translator,网络地址转换)是用于在本地网络中使用私有地址,在连接互联网时转而使用全局 IP 地址的技术。NAT实际上是为解决IPv4地址短缺而开发的技术。
NAT技术有三种类型分别是:静态NAT、动态NAT、端口复用NAT
NAT技术详解
12.network与NetworkManger的区别
network: 对网卡的配置
NetworkManager: 这个服务由几个部分组成;一个是管理系统网络连接;一个是允许用户管理网络连接的客户端程序,使用它可以更好的管理网络。
当关闭NetworkManager服务后,右上角的网络连接标志会消失,但是ifconfig查看网卡配置是正常的。
区别详解
13.网络配置全局文件
/etc/sysconfig/network
原rhel7中该文件下的内容,NETWORKING=yes,表示激活网络的意思
当ifup eth0(网卡时)网络配置全局文件需要存在
14.linux命令补全参数提示程序bash-completion
最小化安装系统的时候默认不安装,由于软件在epel库中,安装时先安装epel-release.
注意,安装完成后在新shell里生效,所以需要重连或创建新bash
CentOS/RHEL安装EPEL源教程
yum install epel-release -y
yum install bash-completion -y
三种网络连接方式(桥接、NAT、仅主机模式)
三种网络连接及特点
Bridged(桥接) | 可联外网,虚拟机ip与主机同网段,可与主机本局域网中的其他真实或虚拟主机进行通讯 |
---|---|
Host-Only(仅主机 | 不可联外网,仅可与主机进行通信 |
NAT(网络地址转换) | 可联外网,通过nat转换实现连接外网,虚拟机ip与主机不在同一网段,不可以与主机本局域网中的其他真实或虚拟主机进行通讯 |
15.查看服务是否开机自启
查看apache是否开机自启
[root@server3 ~]# systemctl is-enabled httpd.service
enabled
16.curl命令
curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。
它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。
17.URL介绍
Internet上的每一个网页都具有一个唯一的名称标识,通常称之为URL(Uniform Resource Locator, 统一资源定位器)。它是www的统一资源定位标志,简单地说URL就是web地址,俗称“网址”。
URL是对互联网上得到的资源的位置和访问方法的一种简洁表示,是互联网上标准资源的地址。URL它具有全球唯一性,正确的URL应该是可以通过浏览器打开此网页的,但如果您访问外网,会提示网页无法打开,这并不能说明这个URL是错误的。只不过在国内不能访问而已。
URL由三部分组成:资源类型、存放资源的主机域名、资源文件名
URL语法格式
protocol :// hostname[:port] / path / [;parameters][?query]#fragment
18.evince命令
evince 是一个支持多种格式的文件浏览器,如的PostScript , PDF格式,单页和多页TIFF , DVI接口, DjVu ,等等。它具有网页的缩略图,通过Gnome或基于GTK +印刷框架和范围内搜索文件。它支持显示的PDF索引和浏览PDF文件的加密。
Evince 文档查看器(又叫Document Viewer), 虽然也不是非常强大(没有调背景色的功能),但最基本的阅读体验是愉快的.
相关命令
yum install evince #安装evince
evince *.pdf #打开pdf文件
19.后台运行相关命令
后台运行命令的两种方式
- cmd & : 后台运行,关掉终端会停止运行
- nohup cmd & : 后台运行,关掉终端不会停止运行
方式一:cmd &
- cmd & 实现让命令在后台运行。但不要将有用户交互的命令放到后台,这样命令会在后台等待用户输入。后台运行的命令也会将结果输出到控制台上,如果不需要的话,可以将其重定向到某个文件中。使用下面的命令可以将标准输出和错误输出都将被重定向到一个叫做cmd.out的文件中:
cmd > cmd.out 2>&1 &
- 执行命令成功后,会显示一个进程号,可以用它来监控(ps -ef | grep 进程号)或者杀死(kill -9 进程号)进程。
方式二:nohup cmd &
- 使用方法一的时候,当我们关闭终端,命令就会停止运行。加上nohup可以在关闭终端后不停止命令。该命令的一般形式为:
nohup command &
默认情况下,该命令的所有输出都被重定向到nohup.out文件中。也可以使用下面的命令来指定输出文件为nohupcmd.out:
nohup command > nohupcmd.out 2>&1 &
- nohup只有在使用exit命令正常退出终端,才能保证命令一直在后台运行。终端异常退出后台命令也会停止运行。
其他相关命令: - ctrl + z:将正在前台执行的命令放到后台,且让命令处于暂停状态。
- jobs:查看当前有多少在后台运行的命令,-l选项可显示所有任务的PID。
- fg:将后台命令放回前台运行,将一个在后台暂停的命令,变成在后台继续执行。如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出
- bg:将嵌套命令放到后台运行。
- ps -ef | grep command 或者 ps aux | grep command #查看进程
- kill -9 进程id #杀掉对应的进程,
- ps aux | grep command | grep -v grep | awk ‘{print $1}’ | xargs kill -9 #这个表示直接通过command获取进程id并直接kill掉
20.ps -ef 指令详解
基础概念
指令: ps
作用: 主要是查看服务器的进程信息
选项含义:
-e:等价于 ‘-A’ ,表示列出全部的进程
-f:显示全部的列(显示全字段)
命令执行结果
列的含义说明:
UID: 该进程执行的用户id
PID: 进程id
PPID: 该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程被称为僵尸进程
C: cpu的占用率,形式是百分数(%)
STIME: 进程的启动时间
TTY: 终端设备,发起该进程的设备识别符号,如果显示‘ ?’表示该进程并不是由终端发起
TIME: 进程的执行时间
CMD: 该进程的名称或对应的路
最后
以上就是善良铅笔为你收集整理的Linux常规问题总结一、常见命令二、常规知识点的全部内容,希望文章能够帮你解决Linux常规问题总结一、常见命令二、常规知识点所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复