如何解决Linux磁盘乱序的问题

背景

最近看腾讯云云硬盘一篇文档(https://cloud.tencent.com/document/product/362/32403) 以下这段通过软链接挂载磁盘方式,开始没太明白为什么要做这样复杂 ??

此云硬盘文档分为两段来介绍挂载磁盘:

1) 购买云硬盘后,直接格式化,通过设备方式挂载,如以下红色部分。

2)然后是将磁盘放到fstab中,就出现第一个截图的挂载方式。

Linux工作原理

将软链接的方式写入fstab中其实是为解决Linux磁盘挂载乱序的问题 。 当Linux磁盘较多的情况,如/vda、/vdb、/vdc等,假如某块盘坏掉换盘后,前面盘符就会出现顺序错乱的情况,这是Linux工作机制导致的问题,当前Linux磁盘映射会通过以下依次三种顺序:

  • 磁盘驱动程序加载;
  • 主机PCI插槽检测;
  • 磁盘本身监测。

所以这里出现热插拔、异常重启、磁盘异常换盘就会导致磁盘乱序,所以我们可以采用软连接的方式来解决此问题。

如何解决乱序问题

解决方法还是通过软链接的方式来挂载,接下来说一下操作步骤,首先查找磁盘映射关系。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# tree /dev/disk/*
/dev/disk/by-id
|-- ata-QEMU_DVD-ROM_QM00002 -> ../../sr0
`-- virtio-disk-91mkfy6l -> ../../vdb
/dev/disk/by-label
`-- config-2 -> ../../sr0
/dev/disk/by-partuuid
`-- 4c5be527-01 -> ../../vda1
/dev/disk/by-path
|-- pci-0000:00:01.1-ata-1 -> ../../sr0
|-- pci-0000:00:06.0 -> ../../vda
|-- pci-0000:00:06.0-part1 -> ../../vda1
|-- pci-0000:00:07.0 -> ../../vdb
|-- virtio-pci-0000:00:06.0 -> ../../vda
|-- virtio-pci-0000:00:06.0-part1 -> ../../vda1
`-- virtio-pci-0000:00:07.0 -> ../../vdb
/dev/disk/by-uuid
|-- 2023-02-28-09-55-50-00 -> ../../sr0
|-- 7ce2278a-742e-4a79-8385-116636fe842c -> ../../vdb
`-- c21f153f-c0a8-42db-9ba5-8299e3c3d5b9 -> ../../vda1

通过软链接的方式来挂载磁盘(还可以用标签,操作方式见参考)。

1
# mount -t ext4 /dev/disk/by-uuid/7ce2278a-742e-4a79-8385-116636fe842c /mnt

成功挂载后,再将挂载盘动作写入/etc/fstab,修改此文件时建议先备份。写入fstab主要还是重启服务器时init会加载此文件,并将此文件中的设备进行挂载。

1
/dev/disk/by-uuid/7ce2278a-742e-4a79-8385-116636fe842c      /data1  ext4 defaults 0 0

执行以下命令,无报错为加载成功。

1
# mount -a

腾讯云直播,快速搭建直播平台

本文整理了通过腾讯云快速搭建直播平台的实践案例,整个搭建过程包含推流,腾讯云直播平台配置和拉流直播三个过程,每一步中如推流有很多方式可以实现,本实践案例会用最简单的方式能够快速搭建起直播平台,让每一位同学能快速了解腾讯云直播平台的使用用法为目的整理。

本文目录结构

腾讯云直播架构

首先,来看一下腾讯云直播的整体架构(见图)

从架构图可以看到,我们要准备两个域名:

  • push.djangowang.club (用于推流域名)
  • live.djangowwang.club 直播域名(用于从腾讯云拉直播流)

接着推流,推流的工具与方式有多种(如下),工具会将数据推到腾讯云直播平台。

  • 第三方(OBS、XSplit)推流的方式 (本文推荐方式)
  • 通过PC端(WEB推流SDK)推流
  • 移动平台推流(安卓/苹果)

我们再用工具从腾讯云直播平台拉流,实现在线直播的功能。腾讯云直播平台除直播功能外,同时还支持水印、转码、录制、鉴黄和直播自适应等多种延展功能。

快速搭建直播平台

快速搭建直播平台共分为五步:

步骤一,添加两个自有域名,分别用于"推流"与"播放"

添加两个自有域名,再分别对两个域名配置CNAME。 以下我的两个自有域名作为案例演示(我的域名注册与解析托管在腾讯云):

  • push.djangowang.club (用于推流域名)
  • live.djangowwang.club 直播域名(用于从腾讯云拉直播流)

Read More

分享汽车上牌过程(深圳)

分享一下汽车上牌过程,坐标深圳。如果让4S店帮忙上牌大概有500元(根据不同车品牌)的费用,可以结合自己的情况,如果想简单就找销售代上牌,而我自己是想体验一下整个上牌流程,所以自己上牌。上牌前也在网上看了很多文章攻略,个人体验下来自己上牌也是很简单方便的,当前已经上牌快一个月的时间,这里整理分享一下上牌整个过程供大家参考,这里为了故事完成性把整个买车过程付钱、交车、验车的过程都整理了一下,重点还是要介绍上牌的过程。

本文目录结构

付钱 & 上保险 & 交车

2022.10.24交首付,12.6日销售通知可以提车,提车前先交尾款,交尾款后销售会通知提车时间和地点(买车时就会确认,希望在哪提车,深圳应该有两个提车点),在交尾款后提车前,销售会提供你发票的信息和车辆登记证书(后续上牌都会用到)等资料,提车前最重要一点是要上保险,这里销售会推荐你可以上保险的几家保险公司费用截图供参考,为避免广告嫌疑这里就不细说了,总之销售都会给你搞的明明白白,我个人用的是销售推荐的保险,首年可能会贵一些,交保险后第二天就可以过去提车拉(记得带好身份证、驾驶证)。

验车

到达交付中心后,先验车,我在网上检索了一下验车步骤供参考:

检车
1.车辆出厂日期
2.汽车生成日期
3.玻璃标识
4.车辆公里数
5.后备箱
6.雨刷是否正常
7.中控闪屏(根据自己车型,看一下网上经常容易出问题的位置进行专项检测)
8.HUD闪屏(根据自己车型,看一下网上经常容易出问题的位置进行专项检测)
9.电吸门故障(根据自己车型,看一下网上经常容易出问题的位置进行专项检测)
10.增程器、电机异响(根据自己车型,看一下网上经常容易出问题的位置进行专项检测)

交付中心带走的东西
1.车钥匙 (两把电子,一把机械)
2.车辆登记证书
3.发票(上牌、年审)
4.车辆合格证
5.三包凭证
6.首次免费保养凭证
7.其他随着赠送,(如企业大客户积分等)

验车没问题,销售会帮你申请一个临时牌(有效期大概一个月) 并签署一些文件就可以愉快地将车开走了。

Read More

代码审查审查个啥?

Code review(代码审查)是一种软件工程技术,通过检查和评估源代码来提高软件质量和可维护性。
Code review 主要检查以下内容:
代码质量:检查代码是否符合软件工程规范,包括代码风格、命名规范、代码结构、注释等。
代码安全:检查代码是否存在安全隐患,包括 SQL 注入、XSS 攻击、逻辑漏洞等。
代码性能:检查代码是否存在性能问题,包括循环次数多、内存占用大、网络请求过多等。
代码可维护性:检查代码是否易于维护和扩展,包括代码的可读性、可拓展性、可重用性等。
Code review 帮助开发人员更好地了解代码,发现问题并解决问题,保证软件质量。通常,Code review 由专业的代码审查人员或团队来进行,也可以由其他开发人员进行。

域名注册流程

域名注册时有很多专业术语,如注册商注册局都是什么关系,最近也整理了一下,如以下截图。

  • ICNANN(互联网名称与数字地址分配机构): 互联网名称与数字地址分配机构是一个非营利性的国际组织,成立于1998年10月,是一个集合了全球网络界商业、技术及学术各领域专家的非营利性国际组织,负责在全球范围内对互联网唯一标识符系统及其安全稳定的运营进行协调,包括互联网协议(IP)地址的空间分配、协议标识符的指派、通用顶级域名(gTLD)以及国家和地区顶级域名(ccTLD)系统的管理、以及根服务器系统的管理。这些服务最初是在美国政府合同下由互联网号码分配当局(Internet Assigned Numbers Authority,IANA)以及其它一些组织提供。ICANN行使IANA的职能。
  • CNNIC(中国互联网络信息中心)工信部旗下:中国互联网络信息中心(China Internet Network Information Center,简称CNNIC)是经国家主管部门批准,于1997年6月3日组建的管理和服务机构,行使国家互联网络信息中心的职责。
  • 注册局: 如.com/.cn/.vip/.me均为注册局,域名注册局保存了域名的数据,并生成区域文件,以转换域名到IP地址。注册局不直接面向用户,由注册商代理售卖。
  • 注册商:如腾讯云、阿里云等有资质的注册商。

一个域名注册流程分为以下几个环节(以腾讯云域名注册为例)。

如何做一场分享

本文目录结构

背景

国庆前接到公司的同事的邀请要做一个分享,分享对于我来说已经工作多年并不是什么挑战的事儿,但这次的难点是不知道受众群体是谁,所以是分享与工作相关更多一些的内容还是分享其他什么内容!这让我思考了很久。
国庆因为疫情的原因,也没有去太多的地方更多是在家看一些资料,最终的分享的思路还是结合自己的工作和一些方式方法来分享,这样贴近公司邀请分享的主题,也能让更多人了解我从事的工作内容,方便后续沟通与交流,以下来说一下做一个分享我大概的思考过程。

策划

在确认“目的”与“受众人群”后,接着就要策划一下分享的内容,以下通过5W1H方法来分别介绍:

  • 为什么要做 (why)
  • 讲什么 (what)
  • 时间 (when)
  • 谁来听 (who)
  • 在哪 (where)
  • 怎么分享 (how)

为什么要做

首先,我了解被邀请的原因这是公司组织文化层面的一些要求,希望定期邀请公司内部一些同事来分享各自工作情况,提升分享的员工影响力,也让更多其他员工能有一些收获。对于我个人来说也是一个阶段性的总结比较不错的机会,平时工作更多在做一些碎片的事,有这样一个机会能定期的回顾总结是一件非常好的事儿。回到为什么要做,这里就包含两点:

  • 按公司的要求,能结合自己的工作的产出,分享一些思路让更多人有收获;
  • 帮助自己里程碑的回顾与总结,能去胜任更多有挑战的项目。

讲什么

目的明确,讲什么也要看用户是谁,我当前职位是技术咨询,所以我结合工作内容也提前假设了一下,来的人应该是属于什么职位。我是结合我的工作,按技术咨询职位和产品经理的职位来整理资料的,或者说资料的内容更多会照顾到这两个职位的人群。这也能让我们整理内容时更加的聚焦。

时间

  • 在接到任务到最终分享大概有两周的时间,也相对较充裕;
  • 分享的时间大概有一小时。

在哪

因为疫情的原因,最终选择腾讯会议线上分享的方式。

Read More