![](https://img-blog.csdnimg.cn/f14411aece9b4bc78ab8b292c0e0829c.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Linux系统遨游
文章平均质量分 66
Linux系统遨游
嵌入式逍遥
一直在嵌入式Linux软件领域深耕,目前芯片平台主要是RK,主要从事Linux系统搭建与移植,对U-Boot有一定积累,同时接触过Ubuntu、Openwrt、Manjaro等操作系统移植与开发。喜欢发掘与折腾不同Linux发行版的玩法,逍遥玩转嵌入式,浪!
展开
-
彻底弄懂free命令的使用
`free` 命令在Linux和UNIX系统中用于显示当前系统的内存使用情况。它提供了关于物理内存、交换空间以及内核缓冲区的详细信息。原创 2024-03-27 21:34:54 · 1044 阅读 · 0 评论 -
彻底弄懂mktemp命令的使用
mktemp 是一个在 Unix 和类 Unix 系统中用于创建临时文件或目录的命令行工具。它属于 GNU coreutils 套件的一部分。mktemp 的主要优点是它能够生成一个唯一的文件名,这有助于避免文件名冲突,并且可以安全地创建临时文件,因为这些文件通常只有创建它们的用户可以访问。原创 2024-02-07 19:58:41 · 593 阅读 · 0 评论 -
彻底弄懂netcat命令的使用
netcat 是一个使用 TCP 或 UDP 协议的网络工具,它被称为网络界的“瑞士军刀”,它可以在两台计算机之间建立连接,进行数据传输。原创 2024-02-06 23:41:10 · 3519 阅读 · 0 评论 -
使用CMakeLists.txt创建一个动态库工程Demo给main程序使用
主要需求是把 hello 程序编译动态库,再 main 程序或者第三方程序执行的时候动态加载。include 目录是头文件目录,src 是源文件目录。main 程序中调用 hello 动态库中的。原创 2023-12-26 20:08:33 · 433 阅读 · 0 评论 -
使用 Crontab 自动化任务调度
Crontab 是一个在 Linux 和类 Unix 系统上广泛使用的工具,它允许用户按照预定的时间表触发指定的命令和脚本。它通过读取并解析 crontab 文件来确定要执行的任务及其执行时间。每个用户都有自己的 crontab 文件,记录了其个人定制的任务。Crontab 文件包含了一系列的任务条目,每个条目都定义了一个要运行的命令和执行时间。这将打开一个文本编辑器,并显示当前用户的 crontab 文件。你可以按照上述语法添加自己的任务条目。保存并关闭文件后,crontab 将自动加载新的任务列表。原创 2023-09-04 22:14:32 · 1145 阅读 · 0 评论 -
保护 Shell 脚本的安全性:shc 和 unshc 命令详解
shc 是 Shell 编译器(Shell Compiler)的缩写,它能够将 Shell 脚本编译为二进制可执行文件,其中包含了脚本的功能和逻辑,而不暴露源代码。相应地,unshc 命令用于解密和还原被加密的 Shell 脚本。这两个命令提供了一种简单有效的方式来保护 Shell 脚本的源代码和逻辑。原创 2023-08-25 21:34:01 · 2210 阅读 · 0 评论 -
Ubuntu20.04工具篇 | 搜狗输入法安装
Ubuntu20.04工具篇 | 搜狗输入法安装原创 2022-07-11 22:04:46 · 4872 阅读 · 0 评论 -
Ubuntu配置篇 | apt切换为国内源
Ubuntu配置篇 | apt切换为国内源原创 2022-07-05 19:47:27 · 6461 阅读 · 0 评论 -
Linux工具篇 | Ubuntu安装balenaEtcher镜像刻录工具
一、添加Etcher仓库echo "deb https://deb.etcher.io stable etcher" | sudo tee /etc/apt/sources.list.d/balena-etcher.list二、添加网站GPG密钥sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com:443 --recv-keys 379CE192D401AB61三、安装balenaEtchersudo apt-get up原创 2020-09-10 21:18:42 · 8887 阅读 · 0 评论 -
Linux工具篇 | Ubuntu安装vim编辑器并配置支持中文
一、安装vim编辑器$ sudo apt-get install vim-gtk二、配置vim支持中文$ sudo vim /etc/vim/vimrc在 vimrc 配置文件内容末尾添加以下内容:set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936set termencoding=utf-8set encoding=utf-8...原创 2020-08-30 20:18:15 · 1448 阅读 · 0 评论 -
Linux工具篇 | Ubuntu搭建TFTP服务器
一、执行以下命令安装TFTP服务器$ sudo apt-get install tftp-hpa tftpd-hpa二、建立TFTP传输目录$ sudo mkdir /tftpDir$ sudo chmod 0777 /tftpDir在目录内新建一个测试文件:$ cd /tftpDir$ touch test.txt在 test.txt 文件输入内容以便区分:$ echo test >test.txt三、配置TFTP$ sudo vi /etc..原创 2020-08-29 20:31:25 · 540 阅读 · 0 评论 -
Linux工具篇 | Ubuntu利用deepin-wine安装企业微信
一、下面讲讲在ubuntu 环境下如何安装企业版微信:(1)打开terminal:第一步:新建一个目录并克隆deepin-wine git clone https://gitee.com/wszqkzqk/deepin-wine-for-ubuntu.git第二步:cd 到 deepin-wine-for-ubuntu 文件夹下面,执行下列命令./install.sh第三步:在 home 目录下新建一个文件夹,我命名的是 deepin,然后 cd 进入 deepin,执行如下命令原创 2020-08-17 21:18:52 · 3449 阅读 · 1 评论 -
Linux工具篇 | Ubuntu安装Python包管理工具pip3
一、执行以下命令安装pip3$ sudo apt install python3-pip二、升级pip3$ pip3 install --upgrade pip注意:不升级 pip3 直接安装 Python 包会报错!三、更换pip3为国内镜像$ mkdir ~/.pip$ vim ~/.pip/pip.conf此处使用清华大学镜像源:[global]timeout = 6000index-url = https://pypi.tuna.tsinghua.edu原创 2020-08-30 20:06:43 · 562 阅读 · 0 评论 -
Linux配置篇 | Ubuntu安装Qt Creator后UI套件无法输入中文
文章目录一、安装fcitx的Qt支持库二、把库文件拷贝到QT目录三、重新Qt Creator一、安装fcitx的Qt支持库在终端输入:$sudo apt-get install fcitx-frontend-qt5二、把库文件拷贝到QT目录$sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /opt/Qt5.9.0/5.9/gcc_6原创 2020-07-16 19:12:35 · 234 阅读 · 0 评论 -
Linux开发篇 | Ubuntu利用dpkg制作deb包
一、deb包的文件结构:deb包结构分为:DEBIAN目录 和 软件具体安装目录(如etc, usr, opt, tmp等,之后 deb 的安装会根据这个目录把文件放到到对应的目录,如 etc/file 会放到你 linux 中的 /etc 下)。在 DEBIAN 目录中至少有 control 文件,还可能有 postinst(postinstallation)、postrm(postremove)、preinst(preinstallation)、prerm(preremove)、copyrig.原创 2020-08-17 21:52:42 · 1069 阅读 · 0 评论 -
Linux配置篇 | Ubuntu配置git远程连接GitHub仓库
一、安装gitsudo apt-get install git二、设置git用户名与邮箱根据GitHub仓库注册的用户名与邮箱进行设置:git config --global user.name "Your Name"git config --global user.email "email@example.com"查看设置结果:$ git config -luser.name=Your Nameuser.email=email@example.com三、生成SSH.原创 2020-09-26 14:58:11 · 1182 阅读 · 0 评论 -
Linux工具篇 | Ubuntu搭建Docker容器引擎
一、设置Docker仓库(1)更新 apt 包索引:$ sudo apt-get update(2)安装 apt 依赖包,用于通过HTTPS来获取仓库:$sudoapt-get install\ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common(3)添加 Docker 的官方 GPG 密钥:$ curl -f...原创 2020-09-22 22:20:10 · 899 阅读 · 0 评论 -
Linux工具篇 | Manjaro20.0.3安装vim编辑器(缺少libperl.so问题)
一、打开终端执行以下命令:sudo pacman -S vim二、执行vim发生错误:$ vim avim: error while loading shared libraries: libperl.so: cannot open shared object file: No such file or directory三、安装libperl.so库sudo pacman -S perl...原创 2020-09-09 20:52:06 · 1167 阅读 · 0 评论 -
Linux配置篇 | Manjaro20.0.3解决“终端字体间隔过宽”问题
(1)在桌面处鼠标右键打开“终端”,发现“终端字体间隔过宽”;(2)首先连接网络,在终端输入以下命令测试国内的镜像源,测试完之后会弹出国内镜像列表;$ sudo pacman-mirrors -i -c China -m rank(3)弹出窗口后,勾上清华大学与中科大manjaro镜像源,点击“OK”;(4)配置archlinuxcn源;$ sudo nano /etc/pacman.conf在文件末尾追加以下内容(直接复制黏贴即可):[archlinuxcn].原创 2021-06-01 19:34:01 · 1996 阅读 · 0 评论 -
Linux工具篇 | Manjaro20.0.3软件包管理器Pacman的常见用法
一、Pacman软件包管理器Pacman软件包管理器是 Arch Linux 的一大亮点。它将一个简单的二进制包格式和易用的构建系统结合了起来。不管软件包是来自官方的 Arch 库还是用户自己创建,pacman 都能方便地管理。pacman 通过和主服务器同步软件包列表来进行系统更新。这种服务器/客户端模式可以使用一条命令就下载或安装软件包,同时安装必需的依赖包。pacman 用 C 语言编写,使用 tar 打包格式。二、Pacman常见用法(1)-S 指令安装sudo pa.原创 2020-09-07 22:02:40 · 2430 阅读 · 0 评论 -
Linux工具篇 | Manjaro20.0.3安装中文输入法(以谷歌拼音为例)
一、安装谷歌拼音输入法(1)打开终端执行以下命令:sudo pacman -S fcitx-imsudo pacman -S fcitx-configtoolsudo pacman -S fcitx-googlepinyin(2)创建.xprofile文件并添加以下内容:sudo nano ~/.xprofileexport GTK_IM_MODULE=fcitxexport QT_IM_MODULE=fcitxexport XMODIFIERS="@im=fcitx"原创 2020-09-09 20:11:18 · 12392 阅读 · 2 评论 -
Linux配置篇 | Manjaro20.0.3配置准确时间(时间快8个小时)
一、执行以下命令安装openNTPDsudo pacman -S openntpdsudo systemctl restart openntpdsudo systemctl enable openntpd二、关于openNTPDOpenNTPD是一个Unix系统网络时间协议(NTP)实现的守护进程,可以使计算机系统的本地时钟与远程NTP服务器同步。它也可以作为一个NTP兼容客户端的NTP服务器。...原创 2020-09-13 12:40:40 · 2303 阅读 · 0 评论 -
Linux配置篇 | Manjaro20.0.3配置Python3包管理工具pip3
一、更换国内镜像$ mkdir ~/.pip$ vim ~/.pip/pip.conf在 pip.conf 文件中添加以下内容:[global]timeout = 6000index-url = https://pypi.tuna.tsinghua.edu.cn/simpletrusted-host = pypi.tuna.tsinghua.edu.cn二、升级pip3$ pip3 install --upgrade pip三、使用pip3安装Python包以安装原创 2020-09-12 00:02:23 · 497 阅读 · 0 评论 -
Linux配置篇 | “Manjaro20.0.3虚拟机系统分辨率过小 ”解决方案
window版本:win10专业版、x64 虚拟机版本:VMware Workstation Pro 15.5 manjaro发行版:manjaro-xfce-20.0.3-200606-linux56一、下载Manjaro-xfce镜像文件清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/osdn/storage/g/m/ma/manjaro/xfce/20.0.3/ 下载系统文件:manjaro-xfce-20.0.3-200606-linux56...原创 2021-06-01 19:38:42 · 1548 阅读 · 0 评论 -
Linux固件开发 | 几分钟看透GPT分区
保护MBR保护MBR包含一个DOS分区表(LBA0),只包含一个类型值为0xEE的分区项,在小于2TB的磁盘上,大小为整个磁盘;在更大的磁盘上,它的大小固定为2TB。它的作用是阻止不能识别GPT分区的磁盘工具试图对其进行分区或格式化等操作,所以该扇区被称为“保护MBR”。实际上,EFI根本不使用这个分区表。EFI部分EFI部分又可以分为4个区域:EFI信息区(GPT头)、分区表、GPT分区、备份区域。EFI信息区(GPT头)起始于磁盘的LBA1,通常也只占用这个单一扇区。其作用是定义分区表的位置和原创 2022-03-08 20:18:19 · 1896 阅读 · 3 评论 -
Linux固件开发 | 工欲善其事必先利其器之Linux dd命令
dd命令man手册描述:Copy a file, converting and formatting according to the operands.一、dd命令参数dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。参数注释:if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >ibs=bytes:一次读入bytes个原创 2022-03-03 22:21:28 · 413 阅读 · 0 评论 -
我的Go+语言初体验——在Docker建立一个可以用Go+语言开发的容器环境(以Ubuntu容器为例)
前言“我的Go+语言初体验” | 征文活动进行中......作为一名嵌入式软件工程师的我,在工作中使用高级语言开发的场景不多,但技术的迭代大部分偏向于应用层开发,身为程序员的一员是由必要去了解崭新的技术,恰逢CSDN官方推出Go+语言征文,借此机会我也初步体验了一下这门新语言的魅力!了解一门新技术,肯定最好的途径是到达它的官方主页啦!Go+官方主页:https://goplus.org进入主页后,有一句高度概括Go+语言的描述:The Go+ language for engineeri原创 2021-12-17 19:23:37 · 8608 阅读 · 0 评论 -
并发、竞态、互斥锁、自旋锁、信号量都是什么鬼?
1. 锁的由来?学习linux的时候,肯定会遇到各种和锁相关的知识,有时候自己学好了一点,感觉半桶水的自己已经可以华山论剑了,又突然冒出一个新的知识点,我看到新知识点的时候,有时间也是一脸的懵逼,在大学开始写单片机的跑裸机代码,完全不懂这个锁在操作系统里面是什么鬼,从单片机到嵌入式Linux,还有一个多任务系统,不懂的同学建议百度看看。 2. 什么是并发和竞态?在早期的Linux内核中,并发源相对较少。内核不支持对称多处理器(SMP)系统,唯一导致并发问题的原因是中断。随着处理器的CP转载 2021-08-19 21:54:57 · 609 阅读 · 1 评论 -
Linux工具篇 | Linux下安装repo工具
一、创建.bin文件夹mkdir ~/.bin二、把.bin文件夹加入环境变量vim ~/.profilePATH更改一下内容:# set PATH so it includes user's private bin directoriesPATH="$HOME/bin:$HOME/.local/bin:$HOME/.bin:$PATH"三、下载repo工具git clone https://github.com/NeutionWei/repo.git四、修...原创 2020-10-03 16:06:38 · 4060 阅读 · 0 评论 -
Linux开发篇 | Linux下制作EXT4文件系统镜像
一、创建文件系统镜像挂载目录$ sudo mkdir fs二、创建初始大小的镜像文件此处以创建4G大小为例,其中4G=bs×count:$ sudo dd if=/dev/zero of=fs.img bs=1M count=4096三、格式化镜像文件为EXT4文件系统$ sudo mkfs.ext4 fs.img四、挂载镜像文件到fs目录$ sudo mount fs.img fs/五、拷贝文件系统内容到fs目录$ sudo cp -rfp src-.原创 2020-09-06 22:33:05 · 2789 阅读 · 0 评论 -
Linux系统安装 | Docker安装最新版本Ubuntu并启动容器
一、拉取最新ubuntu镜像$ docker pull ubuntu:latestlatest: Pulling from library/ubuntud72e567cc804: Pull complete 0f3630e5ff08: Pull complete b6a83d81d1f4: Pull complete Digest: sha256:bc2f7250f69267c9c6b66d7b6a81a54d3878bb85f1ebb5f951c896d13e6ba537Status:原创 2020-10-08 21:23:05 · 2349 阅读 · 0 评论 -
Linux工具篇 | Linux diff与git补丁文件的生成与使用
一、diff 命令生成的补丁(1)补丁文件的生成在某一目录下新建目录patch-test-new与patch-test-old:~/Study/patch$ lspatch-test-new patch-test-old分别在目录patch-test-new与patch-test-old创建test.c内容如下:~/Study/patch/patch-test-new$ cat test.c #include <stdio.h>int main(){原创 2020-10-11 12:06:55 · 599 阅读 · 0 评论 -
Linux系统安装 | VMware虚拟机下Manjaro-xfce-20.0.3系统安装教程
window版本:win10专业版、x64 虚拟机版本:VMware Workstation Pro 15.5 manjaro发行版:manjaro-xfce-20.0.3-200606-linux56一、下载Manjaro-xfce镜像文件清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/osdn/storage/g/m/ma/manjaro/xfce/20.0.3/ 下载系统文件:manjaro-xfce-20.0.3-200606-linux56.io原创 2020-09-06 11:40:17 · 5137 阅读 · 0 评论