Linux
文章平均质量分 73
翔底
普通的码农,简单的职业生涯
展开
-
基于CentOS更新 glibc - 解决 `GLIBC_2.29‘ not found
前面使用源代码安装参考了 GNU C 的官方文档,文档的描述很详细,但是没有说明更新后不能使用的情况。使用 rpm 包很考验耐心,最后还是会因为包之间相互依赖而导致问题,真的很烦。原创 2022-11-06 19:37:43 · 22305 阅读 · 6 评论 -
Ubuntu:编译升级Linux内核
基于Ubuntu20.04系统更新内核原创 2022-07-01 08:42:10 · 2643 阅读 · 0 评论 -
Ubuntu:与Windows共享文件夹
1. 说明我个人更喜欢在windows下编辑代码或文档,而运行环境又经常在Linux环境下进行,那么Windows和Linux之间的协作就显得很有必要了。通常有两种方式来实现两个系统之间的文件共享:在Linux下访问运行Windows系统的代码和在Windows环境下编辑Linux系统内的代码。下面以Ubuntu16.04/18.04/20.04系统和Win7/8/10为例说明这如何进行操作。2. Ubuntu访问Windows共享文件夹2.1 Windows 下设置共享文件夹对需要共享文原创 2022-04-17 10:46:30 · 42316 阅读 · 6 评论 -
Ubuntu:添加串口输出信息
1. 说明好久没有更新博客了,最近实在太忙且人太懒,先拿一个简单的笔记糊弄一下下~~~通过串口输出系统启动信息。验证系统:Ubuntu20.042. 操作添加启动参数到引导配置文件sudo vim /etc/default/grubGRUB_DEFAULT=0GRUB_TIMEOUT_STYLE=hiddenGRUB_TIMEOUT=0GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`# GRUB_C原创 2022-03-16 10:02:10 · 1937 阅读 · 0 评论 -
进程管理(2):内核启动之前的引导流程
1. 说明切确地说,Linux内核启动之前的过程并不属于Linux进程管理的部分,但是了解这部分内容对于从全局上学习操作系统也是很有帮助的,所以我把这部分内容也放在了Linux进程管理的分类里面,作为整个故事的起源,可以更好地帮助我梳理整个Linux进程启动到消亡的过程。本篇笔记涉及到grub,BIOS等内容本身也是十分复杂和庞大的软件,但是不属于我准备研究的重点,所以对这些内容只是作个宽泛地说明,了解个大概就好,后续如果有机会再专门研究看看吧。注:文中的启动流程基于Linux v5.12版本和x8原创 2021-05-22 23:02:06 · 554 阅读 · 1 评论 -
Ubuntu16.04安装armadillo库
1. armadillo说明armadillo是目前使用比较广的C++矩阵运算库之一,相当于Matlab的C++替代库。许多Matlab的矩阵操作函数都可以找到对应,这对习惯了Matlab的人来说实在是非常方便,另外如果要将Matlab下做研究的代码改写成C++,使用Armadillo也会很方便。armadillo特性如下:Armadillo是一种用于C ++语言的高质量线性代数库(矩阵数学),旨在在速度和易用性之间取得良好的平衡提供类似于Matlab的高级语法和功能可用于直接在C +原创 2020-11-06 11:23:35 · 2310 阅读 · 13 评论 -
Ubuntu18.04基于gcc7.3.0安装Nvidia显卡驱动
1. 说明由于项目要求,现在需要将原有的Ubuntu16.04升级到Ubuntu18.04,并重新搭建开发环境。大部分内容都可以直接按照原有的方式去操作,但是由于我使用时Ubuntu18.04已经更新源,默认的gcc版本由7.3升级到了7.5,而安装Nvidia显卡驱动时,要求编译器版本需与编译操作系统内核的版本一致(即gcc-7.3.0),费了半天劲才搞好这个问题,所以在这里特地记录一下。1.1 错误记录主要报错内容如下:The CC version check failed:The kern原创 2020-11-12 12:18:47 · 3206 阅读 · 1 评论 -
Ubuntu(3):上电后进入initramfs界面
1. 系统环境系统版本:Ubuntu16.04内核版本:3.102. 现象开机上电后,进入到字符界面,显示 “fsck exited with status code 4”fsck exited with status code 4(initramfs)3. 原因Ubuntu开机的时候会check磁盘,如果check fail,会提示sdax check fail(sdax为sda0 、sda1等等)。这是因为关机不当导致磁盘内的数据损坏。4. 解决方法fsck -y /dev/sd原创 2020-12-23 09:46:08 · 856 阅读 · 0 评论 -
Ubuntu:添加及删除用户
适配系统基于Ubuntu18.04添加用户以用户jack为例1. 创建用户帐号sudo useradd -r -m -s /bin/bash jack-r:建立系统账号-m:自动建立用户的登入目录-s:指定用户登入后所使用的shell如果只用useradd命令而不加参数,在18.04下默认不会自动添加用户目录。如果没有虽然创建的用户能通过shell切换,但会有许多问题。2. 设置新用户密码sudo passwd jack3. 添加用户的sudoer权限sudo chmod原创 2021-01-19 18:08:16 · 642 阅读 · 0 评论 -
进程管理(1):task_struct结构体说明
本篇笔记详细讲述task_struct结构体的基本内容,涉及的代码基于Linux5.9.8版本。1. 进程和线程关于进程和线程的概念,这里不赘述。需要了解的是在Linux内核中,进程通常被叫做任务,所以进程控制块(PCB)也被命名为struct task_struct。而Linux中是没有明确的线程的概念的,被称为轻量级进程,和进程使用相同的PCB结构,内核使用clone()来创建线程。进程和线程的区别在于进程拥有独立的资源空间,而线程则共享进程的资源空间,通常一个进程可以拥有多个线程。2. tas原创 2021-04-19 09:31:19 · 4916 阅读 · 0 评论