linux
关于linux及其发行版工具软件介绍
进击的铁甲小宝
韶华易逝,莫负流年。
展开
-
ld,GNU 链接器介绍以及命令行参数详解
当我们使用GCC编译源代码生成可执行程序,经过预处理、汇编、编译、链接四个阶段。链接器(Linker)将多个目标文件和库文件链接起来,链接器还解决目标文件之间的符号引用,即函数和变量的外部引用,并确保所有依赖都被正确地包含进来,生成最终的可执行文件或共享库。ld(Linker)是GCC(GNU Compiler Collection)工具链的一个重要组成部分。命令行参数详解输入和输出- o output_file 指定输出文件的名称。原创 2024-07-17 22:32:38 · 438 阅读 · 0 评论 -
虚拟机ubuntu 18.04和主机windows系统无法复制粘贴
Ubuntu18.04 无法和主机进行复制粘贴。原创 2022-09-15 09:08:01 · 202 阅读 · 0 评论 -
ubuntu18.04 安装 腾讯qq
ubuntu18.04安装腾讯qq百度搜索:qq原创 2021-07-22 17:26:13 · 5084 阅读 · 9 评论 -
Ubuntu18.04 pip和pip3 共存并指定python版本
**Ubuntu18.04 pip和pip3 共存并指定python版本**1.安装pip和pip3sudo apt install python-pipsudo apt install python3-pip2.查看各个版本python路径which python2.7which python3.6一般来说文件在 /usr/bin 目录下:/usr/bin/python2.7/usr/bin/python3.63.修改环境变量,解决多版本python共存。3.1 指令ge原创 2021-11-25 15:25:41 · 3540 阅读 · 1 评论 -
Ubuntu18.04 sda1 扩容工具 gparted 和扩容指南
Ubuntu18.04 sda1 扩容工具 gparted具体版本为:gparted-live-1.3.0-1-amd64百度网盘链接: https://pan.baidu.com/s/1kBe_crN7oAotXCx8FK1XLw 提取码: s4z6 具体扩容方法可以参考一下博主的文章https://blog.csdn.net/alone33e/article/details/82433174https://blog.csdn.net/WXXGoodJob/article/detai原创 2021-07-15 15:51:40 · 510 阅读 · 1 评论 -
ubuntu git 克隆失败、拒绝连接、 Error in the pull function
例子: git clone https://github.com/slimm609/checksec.sh git clone git://github.com/slimm609/checksec.sh解决办法: 将 https/http 改为 git参考:https://blog.csdn.net/gbz3300255/article/details/97103621原创 2021-11-24 16:01:33 · 10554 阅读 · 7 评论 -
ubuntu18.04 安装docker以及docker-Engine-Community
docker 的旧版本被称为 docker,docker.io 或 docker-engine。4.测试docker是否安装成功。原创 2022-10-10 14:46:34 · 336 阅读 · 0 评论 -
ubuntu18.04 卸载软件
ubuntu18.04 卸载软件apt-get 方式卸载卸载mysql为例: sudo apt-get remove mysql# 只是卸载,保留配置 sudo apt-get --purge remove mysql# 彻底清除,包括配置 sudo apt-get purge mysql# 彻底清除dpkg 方式卸载卸载mysql为例: sudo dpkg -r mysql # 只是卸载,保留配置 sudo dpkg -r mysql# 彻底清除,包括配置 sudo dpk原创 2022-05-03 12:00:11 · 1606 阅读 · 1 评论 -
ubuntu Unable to locate package ifconfig
ubuntu Unable to locate package ifconfig# 更新软件列表sudo apt-get update# 安装net-toolssudo apt-get net-toolsifconfig 可以正常使用了原创 2022-05-23 10:37:26 · 353 阅读 · 0 评论 -
ubuntu18.04虚拟机 网络配置【未知的域名或服务】
ubuntu18.01虚拟机 网络配置【未知的域名或服务】1.虚拟机的网络适配器采用NAT模式2.查看NAT的网络配置上图所示我的NAT网络配置: 子网ip:192.168.187.0 子网掩码:255.255.255.0 子网网关:182.168.187.23.ubuntu18.04网络配置3.1 使用 ifconfig -a 查看虚拟机网路 ifconfig -a 我的网卡名: ens333.2 配置 ubuntu18.04 的网络: sudo vim /et原创 2022-04-21 14:43:21 · 3337 阅读 · 1 评论 -
ubuntu18.04 设置root密码
ubuntu18.04 设置root密码1.使用su命令进入root,显示认证失败2.使用sudo passwd给root设置密码3.成功进入root原创 2022-04-20 17:00:19 · 937 阅读 · 0 评论 -
ubuntu18.04 换源
ubuntu18.04 换源# 清华源deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiversedeb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiversedeb https://mirrors.tuna.tsinghua.edu.cn/ubuntu原创 2022-05-26 16:33:28 · 228 阅读 · 0 评论 -
ubuntu下aarch64-linux-gnu(交叉编译) gdb/gdbserver(一)
则是GDB的一个辅助工具,主要用于调试嵌入式系统或者没有图形界面的目标系统上的程序。GDBServer在目标设备上运行,将目标程序的状态信息通过网络发送给宿主机上的GDB,使GDB能够像调试本地程序一样调试远程的目标程序。这样,开发人员就可以在宿主机上使用GDB的各种功能,而不需要在目标设备上安装和运行复杂的调试环境。是一款开源的、强大的、跨平台的程序调试工具。主要用于在程序运行时对程序进行控制和检查,如设置断点、单步执行、查看变量值、修改内存数据等,从而帮助开发者定位和修复代码中的错误。原创 2024-07-09 11:25:55 · 573 阅读 · 0 评论 -
ubuntu18.04设置中的无线连接不见了
ubuntu18.04设置中的无线连接不见了如上图所示,无线连接不见了;解决方案:1. sudo vim /etc/network/interfaces sudo vim /etc/network/interfaces 文件存在,并未存在修改;2. sudo vim /etc/NetworkManager/NetworkManager.conf 设置 managed=true3. sudo vim /usr/lib/NetworkManager/conf.d/10-globa原创 2022-04-15 11:11:56 · 1642 阅读 · 1 评论 -
源码和包管理器安装U-Boot tools
除了引导加载程序本身外,U-Boot 还提供了一些辅助工具,即 U-Boot tools。fw_printenv 和 fw_setenv:用于读取和设置 U-Boot 环境变量,这些环境变量存储了引导加载程序的配置信息。U-Boot tools可以帮助开发人员配置、编译、调试和更新 U-Boot 引导加载程序。mkimage:用于创建和处理 U-Boot 支持的映像文件,如生成适用于 U-Boot 的内核映像、设备树文件(DTB)等。tools/patman:用于处理 U-Boot 补丁的工具。原创 2024-02-28 18:00:18 · 758 阅读 · 0 评论 -
linux内核开发入门二(内核KO模块介绍、开发流程以及注意事项)
一、什么是内核模块内核模块:ko模块(Kernel Object Module)是Linux内核中的可加载模块,它可以动态地向内核添加功能。在运行时,可以通过加载或卸载ko模块来扩展或减少内核功能。ko模块通常包含驱动程序、文件系统、网络协议栈、安全模块等内核功能。内核开发人员可以通过编写ko模块来扩展或改进内核功能。我们可以通过编写内核模块扩展内核功能,添加新的驱动程序或文件系统,或者修改内核的行为,而不需要重新编译整个内核。编写模块代码:包括初始化和清除函数,以及其他需要的函数。原创 2023-03-08 08:59:50 · 2886 阅读 · 0 评论 -
linux内核开发入门一(什么是内核开发,以及注意事项)
内核开发:是指在操作系统内核上进行软件开发和调试的过程。内核开发需要了解操作系统的内部工作原理和机制,并能够编写代码以实现或扩展内核功能。内核中只能使用C语言,不支持C++等其他编程语言。由于内核运行在特殊的环境下,开发人员需要了解内核的特性和限制,比如内核空间和用户空间的区别,中断处理等。内核代码需要遵循一定的编码规范,例如函数和变量的命名规则、代码缩进风格、注释等,以提高代码的可读性和可维护性。原创 2023-03-08 08:24:41 · 2207 阅读 · 0 评论 -
Ubuntu 18.04 上安装google浏览器。
在 Ubuntu 中启动谷歌浏览器的方法与其他应用程序相同。安装 GDebi 工具,该工具可以在 Ubuntu 上方便地安装 deb 文件。下载适用于 Ubuntu 的谷歌浏览器 deb 文件。使用 GDebi 安装谷歌浏览器。打开终端并更新软件包列表。原创 2023-03-06 15:07:17 · 26 阅读 · 0 评论 -
ubuntu(ubuntu 18.04)geithub
【代码】ubutnu(ubuntu18.04)gethub。原创 2023-02-27 15:10:00 · 169 阅读 · 0 评论 -
Ubuntu 18.04 上编译和安装内核(内核源码版本)
上述 -j4 参数表示并行编译,可以根据 CPU 核心数和内存大小调整并行编译的数量。linux发行版本为,ubuntu18.04。内核版本为5.15.7。默认配置:save --> load --> exit。在菜单中选择需要的编译选项,然后保存配置文件。原创 2023-02-22 19:03:56 · 4357 阅读 · 4 评论 -
linux 动态链接库(.so)的生成和引用
在使用动态链接库时,需要将库文件的名称和路径添加到程序中,以便程序能够在运行时找到库文件。在Linux系统中,可以使用ldd命令查看程序所依赖的动态链接库,使用ldconfig命令更新动态链接库缓存。在编译程序时,可以使用编译器的-l和-L选项指定需要链接的库文件。与静态链接库不同,动态链接库在程序运行时才会被加载到内存中,并且不会与程序的可执行文件一起打包。使用动态链接库的优势在于,它可以被多个程序共享使用,从而减少了程序的内存使用和磁盘空间占用。解决方式:将动态链接库的目录设置到环境变量中。原创 2023-02-22 15:10:26 · 5906 阅读 · 0 评论 -
linux下常用的文件搜索which、whereis、locate、find。
locate命令是根据本地数据库进行文件搜索,因为数据库每天只会同步一次,有可能会出现新建文件搜索不到的情况,所以在使用locate搜索文件之前使用updatedb命令进行手动数据更新。which命令是根据"PATH"环境变量所规范的路径去搜索“可执行文件”的文件名,重点是只会搜索可执行程序。find命令相当于对硬盘进行检索,通常来说耗费的时间是比较多的,不太建议使用,除非在特定情况下。原创 2022-09-25 23:15:18 · 460 阅读 · 0 评论 -
linux下文件隐藏属性 chattr
通常来说,我们在linux系统下对文件经常使用到的一般是拥有者、用户组、其他人的权限设置,但是在linux系统确确实实却在一类隐藏权限设置,并且该隐藏权限在系统安全(Security)上起到至关重要的地位。如下图所示,对test文件添加隐藏权限i后,即使在root权限下也是不能对文件进行删除操作的。使用命令:chattr 【±=】 【ASacdistu】文件或目录名。如下图所示,对test文件删除隐藏权限i后,能够对文件进行删除操作。使用命令:lsattr。原创 2022-09-25 22:30:17 · 1469 阅读 · 0 评论 -
ubutu18.04 使用update-alternatives 对python和python3进行版本管理
因为在 /usr/bin 目录下的python软链接上Python2.7、python3软链接上python3.6,何为软链接?3.1 update-alternatives实际上是对 /usr/bin 目录下的python和python3 再套一层软链接,多一层中间层,利用该中间层去修改当前的python版本。2.4 软链接和硬链接:简单理解软链接就是类似于windows的一种快捷方式,硬链接就是原始文件的镜像(复制品),当原始文件被删除时,软链接会失效而硬链接却不会受其影响。–config原创 2022-09-17 14:13:08 · 3778 阅读 · 0 评论 -
ModuleNotFoundError: No module named ‘apt_pkg‘ on Ubuntu
描述:由于手动更新了Python3版本,由原来的Python3.6更新为python3.8,导致包管理版本没有自动改过来,需要手动更新。原创 2022-09-15 09:11:24 · 577 阅读 · 0 评论 -
Linux编译生成动态链接库
fPIC:编译得到与位置无关的和对全局偏移表的大小不做限制的动态链接。编译源文件 my_test.c 生成动态链接库。-shared :生成共享目标文件。准备源文件 my_test.c。-o:将输出输出到指定文件夹。原创 2022-08-23 15:09:35 · 723 阅读 · 1 评论