浏览须知
网址介绍勇气被剥夺之后,我的心陷入沉寂,灵魂也无处安放,曾试图用笔记录那些光怪陆离的想法,却又无法容忍那潦草的字迹,也只有如此了,创造这个虚拟的空间。
进站须知合理合法,合乎自然的都行,你开心就好~
标签介绍Android : Android技术相关笔记
Git : Git使用相关笔记
Linux: Linux技术相关笔记,因作者主要从事相关工作,文章记录较多,还单独细分以下标签
Linux : Linux下软件通用配置或者安装
Linux 内核:主要与kernel相关内容
Linux 系统:发行版系统配置如ubuntu、centos、debian等
Linux 驱动:驱动编写、模块适配与测试相关
Linux 命令:常用命令和技巧
shell :它是一种脚本语言,大多数Linux 系统默认的 Shell
Markdown :它是一种文本格式,分享一些基本技巧
数据库 :数据库相关笔记
通讯协议 :通讯协议相关笔记
OpenHarmony : 鸿蒙相关笔记
单片机 :8位单片机、STM32或者各类芯片相关笔记
Linux系统--开机启动问题解决思路
Ubuntu 开机启动问题解决思路在使用 Linux 系统时,开机启动卡在 Logo 界面或无法进入桌面,是常见也最令人头疼的问题。本文结合实践经验,总结了几类常见原因及对应的解决思路,希望能够帮助定位问题。
显卡驱动问题显卡驱动是最常见的启动问题来源,显卡驱动一般分独立显卡驱动和集成显卡驱动两种,独立显卡一般都会需要从官网下载,集成显卡一般会在发行系统内核自带。显卡驱动问题通常表现为系统能正常启动,但在进入桌面时黑屏或卡住。
内核版本过低,不支持新硬件
例如在之前文章 ubuntu20.04更新内核 中提到的,ubuntu20.04发布时间是2020年,但在intel i9-13900KF的芯片发布时间是2022年,这种场景只能通过更新最新内核才可以解决。
独立显卡驱动不兼容或缺失
例如在之前文章 安装英伟达驱动 ,该文章介绍了如何在CentOS安装新驱动和禁用nouveau驱动。NVIDIA 显卡常见问题:nouveau 与官方驱动冲突。AMD新型号则需要较新内核与 Mesa 版本。
处理方式:由于显卡驱动问题,无法进入系统,都不会影响内核正常启动,只是无法进入桌面环 ...
Linux系统--网络配置的演化与调试思路
网络配置的演化与调试思路在调试linux网络时,经常会因为配置错误导致无法上网,而随着linux的发行版本迭代,配置的方法也发生了很多改变。本文将介绍 Linux 网络配置的演变过程,并总结常见的调试思路和排坑技巧。以下多以Ubuntu为例。
时间线1、ifupdown早期linux系统发行版,如(Debian/Ubuntu 旧版)都用的是 ifupdown,配置文件是” /etc/network/interfaces”。这个路径你在查资料的时候,经常看到,但是在新版的linux系统是找不到。
它需要配合 ifup/ifdown 命令,配置方式较底层,灵活但复杂。目录 /etc/network/ 下的钩子脚本可以在接口状态切换时执行:
/etc/network/if-pre-up.d:接口启用前执行
/etc/network/if-up.d:接口启用后执行
/etc/network/if-down.d:接口关闭后执行
/etc/network/if-post-down.d:接口关闭前执行
缺点: ...
Linux--Nginx 基本配置语法与防护
Nginx 基本配置语法与防护Nginx 是一款高性能的 Web 服务器和反向代理服务器,配置文件层次分明,灵活度高。本文将简要介绍 Nginx 的配置结构。
基本结构Nginx 的配置文件一般位于 /etc/nginx/nginx.conf,其层次关系可概括为一棵「配置语法树」:
1234567main # 全局区,影响所有 worker├─ events { } # 事件驱动模型配置└─ http { } # HTTP 层公共配置 ├─ upstream { } # 后端服务器池(反向代理/负载均衡) ├─ server { } # 虚拟主机(按域名/端口区分站点) │ └─ location { } # URI/路径匹配规则 └─ include /etc/nginx/conf.d/*.conf;
main 区(全局区)
定义用户、worker 数量、pid ...
Linux系统--hdmi问题处理
HDMI问题处理最近遇到一个问题,在使用多屏拓展时,在拔插HDMI屏,报错 invalid ELD data byte 13,后发现linux低版本都存在类似问题,做此记录。该问题表示内核在解析 ELD 数据时发现异常(常见于 DP 转 HDMI 的转接头或显示器 EDID 不规范)
EDID介绍EDID(Extended Display Identification Data,扩展显示标识数据)是由 VESA 协会制定的一套标准数据格式,用来告知主机一些信号源
EDID 数据结构
字段
示例
说明
制造商 & 产品名
DELL U2723QE
品牌与型号
序列号 & 生产日期
CN12345678
追溯与质保
支持的分辨率
1920×1080@60Hz, 3840×2160@30Hz
决定了能否点亮 4K
刷新率范围
24-75 Hz
变频/游戏模式依据
色彩空间 & 位深
RGB444 8bit, YCbCr422 12bit
HDR必需
音频能力
LPCM 2-8ch, AC3, DTS
决定能否出声
首选时序
...
Linux系统--raid硬盘中安装系统
在raid硬盘中安装系统服务器在安装Linux系统如(ubuntu、Centos或麒麟V10)时,经常组了raid硬盘后,在安装过程中会找不到硬盘,这时需要手动添加驱动,做此记录。
BIOS设置首先在BIOS组好raid,并且保证 raid 硬盘正常。有控制卡的需要确保格式属性正常
1、进入磁盘管理2、查看磁盘状态
驱动安装驱动未安装时,在选择磁盘安装,老版本的系统可能找不到磁盘,这时候需要把raid驱动放入新U盘,进入安装界面后,使用”ctrl+alt+f2”进入命令行模式安装。1、安装前进入命令行模式
2、挂载驱动
3、安装驱动如果是deb 包安装,使用dpkg -i 安装,如果是rpm 包安装,使用rpm -ivh 安装.如果是ko文件或者源码安装。参考驱动安装脚本4、退出命令行模式,重新进入图形界面键盘使用”ctrl+alt+f6”
5、选择磁盘安装
这时候可以看到raid磁盘正常显示
6、安装完成
问题记录1、选择磁盘后报错
该原因是磁盘格式属性错误,需要重新格式化磁盘。
Linux--nginx中geo信息分析
nginx geo信息分析使用场景在 Nginx 中启用 GeoIP2 模块,记录用户访问日志,并通过 Python 脚本进行二次分析。
模块安装在 Ubuntu 20+ / 22+ 系统中,GeoIP2 模块可以直接通过 apt 安装:
12345678910111213# 装模块(Ubuntu 20+/22+ 自带)sudo apt install libnginx-mod-http-geoip2# 下载免费的城市库sudo mkdir -p /usr/share/GeoIPsudo wget -O /usr/share/GeoIP/GeoLite2-City.mmdb \ https://git.io/GeoLite2-City.mmdb# 自动补缺失依赖sudo apt install -f sudo dpkg --configure -a
文件配置
在 nginx.conf 中启用 geo 变量
在 http {} 段中加入如下配置:
123456789101112131415161718http { ... geoip2 /u ...
Linux--docker使用
Linux下 Docker 工具使用Docker 基本介绍Docker 是一个开源的应用容器引擎,可以让开发者将应用及其依赖打包到一个轻量级、可移植的容器中,然后在任何支持 Docker 的 Linux 主机上快速运行。它的最大优势在于环境隔离和可移植性,尤其适用于开发、测试和部署的全流程。
Docker 与虚拟机的区别
对比项
虚拟机
Docker
启动速度
分钟级
秒级
占用资源
较高(需要完整OS)
较低(共享宿主机内核)
隔离性
完全隔离
进程级隔离
可移植性
一般
极高
部署复杂度
较复杂
简单
Docker 的核心概念镜像(Image):应用及运行环境的只读模板。
容器(Container):镜像运行时的实例,可读可写。
仓库(Registry):存放镜像的地方(如 Docker Hub、阿里云镜像仓库)。
Linux 下安装 Docker以 Ubuntu 为例:
更新软件包1sudo apt update
安装必要依赖1sudo apt install apt-transport-https ca-certificates curl sof ...