摘要:
参考资料 1. cephfs数据池数据对象命名规则解析 Ceph 文件系统或 CephFS 是一个兼容 POSIX 的文件系统,它构建在 Ceph 的分布式对象存储 RADOS 之上。CephFS 致力于为各种应用程序提供最新,多用途,高可用性和高性能的文件存储,包括传统用例(如共享主目录,HPC 阅读全文
摘要:
搭建 gitlab 私有仓库 1.拉取镜像 docker pull gitlab/gitlab-ce 2. 启动容器 docker run -itd \ -p 9980:80 \ -p 9922:22 \ -v /home/gitlab/etc:/etc/gitlab \ -v /home/gitl 阅读全文
摘要:
修改最后一次commit 注释 通过 git log 查看提交历史信息: 输入命令: git commit --amend 进入修改注释界面: 第一行就是最后一次commit的注释信息,按i键进行编辑状态,修改注释信息后按Esc后再按:wq保存并退出 再次通过git log查看,注释信息由add t 阅读全文
摘要:
std::condition_variable 条件变量 void wait( std::unique_lock<std::mutex>& lock ); #1 template< class Predicate > void wait( std::unique_lock<std::mutex>& 阅读全文
摘要:
定位new表达式 当传入一个指针类型实参时,定位new表达式构造对象但是不分配内存。 new(address) type; new(address) type(initializers); new(address) type[size]; new(address) type[size]{braced 阅读全文
摘要:
va_start和va_end使用详解 函数参数是以数据结构:栈的形式存取,从右至左入栈。首先是参数的内存存放格式:参数存放在内存的堆栈段中,在执行函数的时候,从最后一个开始入栈。因此栈底高地址,栈顶低地址,例如: void func(int x, float y, char z); 调用函数的时候 阅读全文
摘要:
RPM 1. rpm包构建位置设置: -sh-4.2$ vim .rpmmacros -sh-4.2$ pwd /home/sunbin01 -sh-4.2$ cat .rpmmacros %_topdir /da1/sunbin01/rpmbuild 参考资料 1. RPM 包的构建 - SPEC 阅读全文
摘要:
git remote 在下图中,git init、git add和git commit都是前期准备,相当于将你本地的文件上传到本地仓库,但是还没有向远程仓库提交。 在这时执行git remote add 命令,就是将本地仓库与远程仓库建立连接, git remote add命令中,add什么呢?蓝色 阅读全文
摘要:
分片上传 multipart https://www.cnblogs.com/arnoldlu/p/9776269.html #include <aws/core/Aws.h> #include <aws/s3/S3Client.h> #include <aws/s3/model/CreateMul 阅读全文
摘要:
alarm函数 1. 简介设置定时器(闹钟)。在指定seconds后,内核会给当前进程发送 14)SIGALRM信号,进程收到信号后,默认动作终止。 每个进程都有且只有唯一个定时器。 2. alarm函数原型: unsigned int alarm(unsigned int seconds); 常用 阅读全文
摘要:
kill函数 1. 函数原型 int kill(pid_t pid, int signo); //signo:信号名 分析: 注意: 进程组:每个进程都属于一个进程组,进程组是一个或多个进程的集合, 它们相互关联,共同完成一个实体任务。每个进程组都有一个进程组长,默认进程组ID与进程组长ID相同。权 阅读全文
摘要:
信号 查看信号:kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) 阅读全文
摘要:
屏障 屏障(barrier)是用户协调多个线程并行工作的同步机制,屏障允许每个线程等待,直到合作线程都达到某一点,然后从该点继续执行。我们已经看到一种屏障,pthread_join 函数就是一种屏障,允许一个线程等待,直到另一个线程退出。 1. 函数原型:初始化和回收 int pthread_bar 阅读全文
摘要:
有名管道 1. 为何提出有名管道的说法,目的是为了克服无名管道的不足之处: 无名管道只能是用于具有亲缘关系的进程之间,这就限制了无名管道的使用范围。 有名管道可以使互不相关的两个进程互相通信,有名管道可以通过路径名来指出。并在文件系统课件为了这种有名管道,Linux中专门设立了一个专门的特殊文件系统 阅读全文
摘要:
信号量 PV 操作 计数信号量(Counting Semaphores)通常有两种操作,记做 P 和 V,V操作增加信号量 S,P操作减少信号量 S。信号量的一大特征就是它的值不能通过 PV 操作以外的方式更改。 wait(P操作):信号量数值减一,如果减一之后信号量数值为负,则进程进入信号量队列等 阅读全文
摘要:
概述 您可以通过 AWS CLI,使用 aws s3 命令(高级别)或 aws s3api 命令(低级别)将大文件上传到 Amazon S3。有关这两个命令层的更多信息,请参阅结合使用 Amazon S3 与 AWS CLI。 最佳实践是使用 aws s3 命令(例如 aws s3 cp)进行上传和 阅读全文
摘要:
参考资料 1. pprof搭配ceph tell命令分析ceph内存 阅读全文
摘要:
centos之glibc2.17版本升级至2.31 远程主机可能不符合glibc和libstdc++ VS Code服务器的先决条件: 解决办法: 回退VSCode版本到1.85版本。 设置禁止自动更新:VSCode设置中搜索:Update:Mode ,值改为none即可。 各平台1.85.0版本下 阅读全文
摘要:
参考资料 1. NFStest使用 阅读全文
摘要:
shell中的括号、双括号、方括号和双方括号 语法: (( 表达式1,表达式2…)) 特点: 在双括号结构中,所有表达式可以像c语言一样,如:a++,b--等。 在双括号结构中,所有变量可以不加入:“$”符号前缀。 双括号可以进行逻辑运算,四则运算 双括号结构 扩展了for,while,if条件测试 阅读全文
摘要:
vector 用法及代码代码示例 1. 删除特定的元素 #include <iostream> #include <vector> using namespace std; int main() { int values1[10] = {1, 2, 0, 3, 4, 5, 0}; vector<in 阅读全文
摘要:
MDCACHE_BYPASS_DIRCACHE标记目前只有在没有开启chunk的情况下,如果目录过大,会打上此标记,不会被缓存,开启了chunk,此标记永远失效。除了这两行之外,后面的操作是在没有开启chunk的情况下的流程,暂时不做分析。所以mdcache_readdir其实是执行了mdcache 阅读全文
摘要:
冒号用法 在linux系统中,冒号(:)常用来做路径的分隔符(PATH),数据字段的分隔符(/etc/passwd)等。其实,冒号(:)在Bash中也是一个内建命令,它啥也不做,是个空命令、只起到占一个位置的作用,但有时候确实需要它。当然,它也有它的用途的,否则没必要存在。在·Linux的帮助页中说 阅读全文
摘要:
多重继承(无虚函数覆盖) 下面,再让我们来看看多重继承中的情况,假设有下面这样一个类的继承关系。注意:子类并没有覆盖父类的函数。 class Base1 { public: virtual void f() { cout << "Base1::f" << endl; } //虚函数定义 virtua 阅读全文
摘要:
weak_ptr 详解 #include <iostream> #include <memory> class CB; class CA { public: CA() { std::cout << "CA()" << std::endl; } ~CA() { std::cout << "~CA()" 阅读全文
摘要:
std::shared_ptr 下图显示了指向一个内存位置的几个 shared_ptr 实例: 看上面的例子,使用 std::shared_ptr 时,会涉及两次内存分配:一次分配共享资源对象;一次分配控制块。C++ 标准库提供了 std::make_shared 函数来创建一个 shared_pt 阅读全文
摘要:
处。 代码实现: 在 shell 中,可以使用 ${string#*} 和 ${string%*} 来去掉字符串首尾的空格。 使用 ${string#*} 可以去掉字符串开头的空格 使用 ${string%*} 可以去掉字符串末尾的空格 例如: string=" Hello World! " str 阅读全文
摘要:
shell函数返回值 在 shell 脚本中的函数中有两种方式进行返回值: return 语句:仅能返回 [0, 255] 之间的整数,常用于表示返回函数的执行结果状态。 echo 语句:能返回任何数字、任何字符串,常用于表示返回函数的执行结果。 在 shell 脚本函数中可以使用 return 语 阅读全文
摘要:
git add 找到文件文件,使用如下命令强制提交忽略文件: git add -f [filename] 阅读全文
摘要:
git mv git mv 命令用于移动或重命名一个文件、目录或软连接。mv指令只是移动/重命名文件, 但是并没有将这个操作记录在git中,git mv不仅移动/重命名文件, 而且这个操作还会记录再git中. git mv [file] [newfile] 如果新文件名已经存在,但还是要重命名它,可 阅读全文
摘要:
shell case esac 语句 ase ... esac 与其他语言中的 switch ... case 语句类似,是一种多分枝选择结构。case 语句匹配一个值或一个模式,如果匹配成功,执行相匹配的命令。case 语句格式如下:\ case 值 in 模式1) command1 comman 阅读全文
摘要:
ctdb中eventscript功能的集成 ctdb-event代码位置:samba/event_daemon.c cdb主函数代码位置:samba/ctdb/server/ctdbd.c 参考资料 1. ctdb中eventscript功能的集成 阅读全文
摘要:
参考资料 1. VScode 结合Global构建linux源代码阅读环境 阅读全文
摘要:
vscode安装插件 1. vscode-git-graph 链接:https://marketplace.visualstudio.com/items?itemName=mhutchie.git-graph 2. vscode-gitlens 链接:https://marketplace.visu 阅读全文
摘要:
参考资料 1. windows上配置vscode C/C++代码跳转 给 阅读全文
摘要:
61. 旋转链表 Cmake › Options: Status Bar Visibility配置扩展在状态栏中显示选项的方式。更具体的 Cmake › Options › Advanced: Status Bar Visibility 设置可能会覆盖这些设置。 visible Cmake › Op 阅读全文
摘要:
for..do..done用法 1. 例子: #!/bin/bash for((i=1;i<=10;i++)); do echo $(expr $i \* 3 + 1); done 2. 例子: 1. 格式1 #!/bin/bash for i in $(seq 1 10) do echo $(ex 阅读全文
摘要:
使用ceph管理器crash模块 解法: class Solution { public: ListNode* swapPairs(ListNode* head) { if (head == nullptr || head->next == nullptr) { return head; } Lis 阅读全文
摘要:
23. 合并K个升序链表 解法: /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * L 阅读全文
摘要:
制作U盘启动器 软碟通UltraISO是一款优秀的光盘ISO镜像工具,它的一大功能就是可以把ISO镜像写入到U盘中,然后把U盘制作成可启动的U盘启动盘,后续用于系统维护,电脑安装系统等操作,那么UltraISO怎么制作启动盘呢,下面小编给大家带来了详细的图文教程,有需要的朋友可以参考一下。 通Ult 阅读全文