DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  4737 随笔 :: 2 文章 :: 542 评论 :: 1617万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  Linux

上一页 1 2 3 4 5 6 7 8 9 10 ··· 31 下一页

摘要:-Wl,-rpath=linux中真实运行的路径 重点:编译时两个路径 (一个是编译用到的库的路径,另外一个是linux真实运行环境时用到的路径)如何编译? 不要用绝对路径,编译用到的库的路径比如是/output/mt_ls2k1000/lib/文件夹下的,则可以按照下面(1)的方式加载进来,而真实 阅读全文
posted @ 2021-11-17 17:08 DoubleLi 阅读(5112) 评论(0) 推荐(0) 编辑

摘要:名称 dos2unix - DOS/Mac - Unix文件格式转换器 概要 dos2unix [选项] [文件 …] [-n 输入文件 输出文件 ...] unix2dos [选项] [文件 …] [-n 输入文件 输出文件 ...] 说明 Dos2unix软件包包括工具"dos2unix" 和  阅读全文
posted @ 2021-11-09 11:14 DoubleLi 阅读(1430) 评论(0) 推荐(0) 编辑

摘要:前言 很多时候,我们需要在linux(ubuntu,centos等)、mac和windows之间共享一些文件,但是因为各个平台自带支持的编码不一致,有的是GB2312(window默认),有的是utf-8。导致跨平台无法正确打开文件,比如windows下的GB2312编码文件放到mac下,如果mac 阅读全文
posted @ 2021-11-09 10:31 DoubleLi 阅读(209) 评论(0) 推荐(0) 编辑

摘要:问题 Linux 环境执行一些脚本出错,查找原因,发现是文件在Windows环境修改并上传,格式被转换为MS-Dos格式(换行符不同),这样的文件在Linux中运行会出错(shell 解释器把换行符作为一个命令的提交)。 背景 很久以前,老式的电传打字机使用两个字符来另起新行。回车符(CR)把滑动架 阅读全文
posted @ 2021-11-08 16:26 DoubleLi 阅读(2904) 评论(0) 推荐(0) 编辑

摘要:尝试解答以下问题: 1.为什么cp的方式更新运行中进程的so,程序会coredump 2.采用什么方式更新已经加载了的so,就可以避免coredump 我们的公共组件绝大部分都支持so形式的自定义插件,比如s++,qzhttp,ttc。在不停进程更新so的时候往往会产生coredump,并且肯定co 阅读全文
posted @ 2021-11-04 17:39 DoubleLi 阅读(150) 评论(0) 推荐(0) 编辑

摘要:问题的起因在来源于周会上老板提出的一个问题,cp新的so文件替换老的so,会导致程序core掉。这个问题引起了大家的热烈讨论,其中提及了的名词有inode,dentry,buserror等,比较混乱,由于功力浅薄,当时也没有十分清楚引起core掉的原因。于是乎趁着10.1的休息时间,闲里偷忙,理一理 阅读全文
posted @ 2021-11-04 17:37 DoubleLi 阅读(751) 评论(0) 推荐(0) 编辑

摘要:对于线上的服务,经常会出现xxx服务的某一段逻辑里面有bug,需要紧急修复。对于无状态的服务,可以修复之后,直接重启。但是,对于有状态的服务,重启意味着内存状态丢失和长连接断开。比如,如果魔兽的服务器要重启,那么已经登录上来的玩家就会出现连接中断。对于不能容忍重启的有状态的服务,可以采取热更新的方式 阅读全文
posted @ 2021-11-04 16:33 DoubleLi 阅读(1542) 评论(0) 推荐(0) 编辑

摘要:我正在尝试从Casey Muratori受欢迎的Handmade Hero系列中复制一个很酷的技巧。在win32上,Casey能够重新加载DLL,并且仅几毫秒的延迟就可以看到他的代码更改。 我正在尝试使用dlopen,dlsym,dlclose和stat在linux上复制此行为,但是我遇到了以下行为 阅读全文
posted @ 2021-11-04 16:25 DoubleLi 阅读(159) 评论(0) 推荐(0) 编辑

摘要:1.为什么cp的方式更新运行中进程的so,程序会coredump 2.采用什么方式更新已经加载了的so,就可以避免coredump我们的公共组件绝大部分都支持so形式的自定义插件,比如s++,qzhttp,ttc。在不停进程更新so的时候往往会产生coredump,并且肯定core得莫名其妙,cor 阅读全文
posted @ 2021-11-02 19:58 DoubleLi 阅读(335) 评论(0) 推荐(0) 编辑

摘要:1. 简介: Inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写和卸载操作等。您还可以跟踪活动的源头和目标等细节。 使用 inotify 很简单:创建一个文件描述符,附加一个或多个监视器(一个监视器 是一个路径和一组事件),然后 阅读全文
posted @ 2021-10-28 11:56 DoubleLi 阅读(520) 评论(0) 推荐(0) 编辑

摘要:DLOPEN DLMOPEN DLCLOSE NAME dlclose, dlopen, dlmopen - 打开/关闭共享对象 SYNOPSIS #include <dlfcn.h> void *dlopen(const char *filename, int flags); int dlclos 阅读全文
posted @ 2021-10-18 17:15 DoubleLi 阅读(551) 评论(0) 推荐(0) 编辑

摘要:ncat 或者说 nc 是一款功能类似 cat 的工具,但是是用于网络的。它是一款拥有多种功能的 CLI 工具,可以用来在网络上读、写以及重定向数据。 它被设计成可以被脚本或其他程序调用的可靠的后端工具。同时由于它能创建任意所需的连接,因此也是一个很好的网络调试工具。 ncat/nc 既是一个端口扫 阅读全文
posted @ 2021-06-24 14:49 DoubleLi 阅读(442) 评论(0) 推荐(0) 编辑

摘要:反引号位 (`) 位于键盘的Tab键的上方、1键的左方。注意与单引号(')位于Enter键的左方的区别。 反引号位 (`)在Linux中起着命令替换的作用。命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置。 举个例子: linuxidc@www.linuxidc.com:$ d 阅读全文
posted @ 2021-05-13 11:09 DoubleLi 阅读(1326) 评论(0) 推荐(0) 编辑

摘要:01 总览 编译阶段 nm 获取二进制文件包含的符号信息 strings 获取二进制文件包含的字符串常量 strip 去除二进制文件包含的符号 readelf 显示目标文件详细信息 objdump 尽可能反汇编出源代码 addr2line 根据地址查找代码行 运行阶段 gdb 强大的调试工具 ldd 阅读全文
posted @ 2021-05-12 13:54 DoubleLi 阅读(377) 评论(0) 推荐(0) 编辑

摘要:背景 有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源。这时候就需要登录服务器进一步深入分析问题的根源。那么分析问题需要有一定的技术经验积累,并且有些问题涉及到的领域非常广,才能定位到问题。所以,分析问题和踩坑是非常锻炼一个人的成长和提升自我能力。如果我们有一套好的分析工具,那将是 阅读全文
posted @ 2021-05-12 11:12 DoubleLi 阅读(377) 评论(0) 推荐(0) 编辑

摘要:操作系统「进程」是学计算机都要接触的基本概念,抛开那些纯理论的操作系统底层实现,在Linux下做软件开发这么多年,每次程序运行出现问题,都要一步一步分析进程各种状态,去排查问题出在哪里,这次lemon带你在Linux环境下实操,一步步探究揭开「Linux进程」的那些秘密。 何为进程 首先我们说下「程 阅读全文
posted @ 2021-05-11 14:02 DoubleLi 阅读(275) 评论(0) 推荐(0) 编辑

摘要:什么是core dump? Coredump叫做核心转储,它是进程运行时在突然崩溃的那一刻的一个内存快照。操作系统在程序发生异常而异常在进程内部又没有被捕获的情况下,会把进程此刻内存、寄存器状态、运行堆栈等信息转储保存在一个二进制文件里。 设置core dump文件大小,默认0,即不会生成core文 阅读全文
posted @ 2021-05-10 18:04 DoubleLi 阅读(1193) 评论(0) 推荐(0) 编辑

摘要:简介 进程无法启动,软件运行速度突然变慢,程序的"Segment Fault"等等都是让每个Unix系统用户头痛的问题,本文通过三个实际案例演示如何使用truss、strace和ltrace这三个常用的调试工具来快速诊断软件的"疑难杂症"。 truss和strace用来 跟踪一个进程的系统调用或信号 阅读全文
posted @ 2021-05-10 14:12 DoubleLi 阅读(180) 评论(0) 推荐(0) 编辑

摘要:strace是什么? 按照strace官网的描述, strace是一个可用于诊断、调试和教学的Linux用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。 strace底层使用内核的ptrace特性来实现其功能。 在运维的日常工作中,故障处理和问题诊断是 阅读全文
posted @ 2021-05-10 09:57 DoubleLi 阅读(479) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 9 10 ··· 31 下一页
点击右上角即可分享
微信分享提示