摘要:
把 gitit submodule 变成普通文件夹 要实现的是把git submodule 变成普通文件夹。这需要两步:先删除git submodule(删除所有相关的git配置文件即可),再把 submodule中的文件添加到主仓库。 1. 删除 git submodule: git rm --c
阅读全文
posted @ 2023-04-22 17:40
苏格拉底的落泪
阅读(376)
推荐(0)
摘要:
删除本地或远程分支 1.1 删除本地分支 删除本地分支的命令: git branch -d [local_branch_name] git branch 是在本地删除分支的命令。 -d 是一个标志,是命令的一个选项,它是 --delete 的别名。顾名思义,它表示你要删除某些内容。 - local_
阅读全文
posted @ 2023-04-20 14:47
苏格拉底的落泪
阅读(1310)
推荐(0)
摘要:
samba+ctdb集群搭建 samba集群模型图: 参考资料 1. CTDB入门
阅读全文
posted @ 2023-04-13 10:01
苏格拉底的落泪
阅读(496)
推荐(0)
摘要:
shell函数 例1: #!/bin/bash #函数定义 function url(){ echo "http://c.biancheng.net/shell/" } #函数调用 url function func1() { echo 1 return 2 echo 3 } res=$(func1
阅读全文
posted @ 2023-04-10 11:47
苏格拉底的落泪
阅读(44)
推荐(0)
摘要:
搭建本地离线yum仓库 yum基于rpm安装,其中一个重要的特性就是可以自动解决依赖问题,yum的本质依旧是把后缀名.rpm的包下载到本地,然后按次序安装之。但是每次执行yum install安装会自动安装并且安装完毕后把rpm包自动删除。当下载比较大的服务,比如MySQL大约190M,每次都重新下
阅读全文
posted @ 2023-04-07 10:40
苏格拉底的落泪
阅读(667)
推荐(0)
摘要:
__thread Thread Local Storage:线程局部存储(tls)分配的变量,每个当前线程有一个该变量的实例。__thread是gcc内置的线程局部存储设施,其存储效率可以和全局变量相比;__thread变量在每一个线程中都有一份独立实例,各线程值是互不干扰的。可以用来修饰那些带有全
阅读全文
posted @ 2023-04-07 09:39
苏格拉底的落泪
阅读(733)
推荐(0)
摘要:
分配虚拟内存 使用free -m 查看swap大小,如果只有4或者8G的,建议扩容一下。 # 在/swap下创建swapfile文件,不要在/tmp下创建swapfile mkdir -p /swap dd if=/dev/zero of=/swap/swapfile bs=1M count=163
阅读全文
posted @ 2023-04-06 09:05
苏格拉底的落泪
阅读(189)
推荐(0)
摘要:
AVL树简介 AVL树的名字来源于发明作者G.M. Adelson-Velsky 和 E.M. Landis的缩写。AVL树是最先发明的自平衡二叉查找树(Self-Balancing Binary Search Tree,简称平衡二叉树)。 平衡二叉树定义(AVL):它或者是一颗空树,或者具有以下性
阅读全文
posted @ 2023-03-25 17:18
苏格拉底的落泪
阅读(422)
推荐(0)
摘要:
ext2文件系统 ext2文件系统 在ext2文件系统中,每个物理块(block)默认只包含一个inode。这意味着一个物理块的大小与一个inode的大小相同。 在ext2文件系统中,每个inode的大小固定为128字节。而一个物理块的大小可以根据不同的文件系统配置而有所不同,默认情况下通常为1KB
阅读全文
posted @ 2023-03-16 21:03
苏格拉底的落泪
阅读(144)
推荐(0)
摘要:
参考资料 1. 原子操作_atomic 系列函数
阅读全文
posted @ 2023-03-16 09:35
苏格拉底的落泪
阅读(71)
推荐(0)
摘要:
nfs-ganesha nfs4.1协议数据恢复机制
阅读全文
posted @ 2023-02-21 11:38
苏格拉底的落泪
阅读(161)
推荐(0)
摘要:
参考资料 1. The user-space RCU API
阅读全文
posted @ 2023-02-02 14:33
苏格拉底的落泪
阅读(23)
推荐(0)
摘要:
NTP服务器搭建 NTP的用途是把计算机的时钟同步到世界协调时UTC,NTP可以使计算机对其服务器或时钟源进行时间同步。 安装NTP软件包: yum install ntp ntpdate -y 2、修改NTP配置文件,修改前注意先备份。 cp /etc/ntp.conf.bak #备份ntp配置文
阅读全文
posted @ 2023-01-31 09:20
苏格拉底的落泪
阅读(363)
推荐(0)
摘要:
nfs-ganesha 数据恢复机制 对于集群式ganesha之前,是需要先执行命令来初始化,否则ganesha无法启动。 ganesha-rados-grace --ns ganesha --pool ganesha add node01 node02 node03 打印节点信息: ganesha
阅读全文
posted @ 2023-01-28 16:19
苏格拉底的落泪
阅读(564)
推荐(0)
摘要:
参考资料 1. 如何永久配置cephfs mds热备
阅读全文
posted @ 2023-01-28 15:37
苏格拉底的落泪
阅读(55)
推荐(0)
摘要:
cephfs client evict子命令使用 观察ganesha与mds的session状态情况: tyds tell mds.node01 session ls tyds tell mds.node01 client ls 例如: # ceph tell mds.node01 client l
阅读全文
posted @ 2023-01-17 10:23
苏格拉底的落泪
阅读(145)
推荐(0)
摘要:
增加mon节点 集群初始状态: [root@node01 ~]# ceph -s cluster: id: 33af1a28-8923-4d40-af06-90c376ed74b0 health: HEALTH_WARN Degraded data redundancy: 418/627 objec
阅读全文
posted @ 2023-01-11 09:59
苏格拉底的落泪
阅读(530)
推荐(0)
摘要:
timedatectl 1.要在系统上显示当前时间和日期,请从命令行使用timedatectl命令,如下所示: # timedatectl status 2.始终通过系统上设置的时区来管理Linux系统上的时间,要查看当前时区,请执行以下操作: # timedatectl OR # timedate
阅读全文
posted @ 2023-01-11 09:33
苏格拉底的落泪
阅读(535)
推荐(0)
摘要:
gcc内置原子操作 从GCC4.1.版本之后就引入了内置的原子操作函数,可对x86_64架构(除此之外还有其他类型)1、2、4、8字节的integer scalar或pointer使用,可有效减少对锁机制的使用进一步而提升效率,这些函数以__sync开头,而在GCC4.7之后的版本,这些函数被替换成
阅读全文
posted @ 2023-01-05 15:15
苏格拉底的落泪
阅读(910)
推荐(0)
摘要:
NFS 各个版本对比 NFS是一种网络文件系统,从1985年推出至今,共发布了3个版本:NFSv2、NFSv3、NFSv4,NFSv4包含两个次版本NFSv4.0和NFSv4.1。经过20多年发展,NFS发生了非常大的变化,最大的变化就是推动者从Sun变成了NetApp,NFSv2和NFSv3基本上
阅读全文
posted @ 2023-01-05 11:19
苏格拉底的落泪
阅读(1733)
推荐(0)
摘要:
使用repotrack下载rpm包 使用 yum install yum-utils 安装 repotrack 工具,然后使用 repotrack <rpm包>下载全量依赖包,例如下载gcc: repotrack -p /tmp gcc 注意:使用-p指定下载目录。 reposync:可以将远
阅读全文
posted @ 2022-12-08 09:27
苏格拉底的落泪
阅读(2934)
推荐(0)
摘要:
gethostname、gethostbyname 函数解析 #include <stdio.h> #include <sys/socket.h> #include <netdb.h> #include <unistd.h> #include <netinet/in.h> #include <arp
阅读全文
posted @ 2022-12-07 16:08
苏格拉底的落泪
阅读(259)
推荐(0)
摘要:
使用 yum deplist <rpm包> 看rpm包所需的全部依赖 首先使用 yum install yum-utils 安装 repotrack 工具,然后使用 repotrack <rpm包>下载全量依赖包: 参考资料 1. 搭建本地离线yum仓库 2. 使用repotrack下载指定rpm包
阅读全文
posted @ 2022-12-07 13:56
苏格拉底的落泪
阅读(111)
推荐(0)
摘要:
参考资料 1. Git rebase --continue2. git rebase -i 修改历史中的某一次提交
阅读全文
posted @ 2022-11-21 14:16
苏格拉底的落泪
阅读(62)
推荐(0)
摘要:
概念篇 参考资料 1. CEPHFS 内部实现(一):概念篇 2. MDS源码分析-3 LOOKUP & GETATTR
阅读全文
posted @ 2022-11-02 18:09
苏格拉底的落泪
阅读(268)
推荐(0)
摘要:
dbus-send命令 1. 列出所有的clients: dbus-send --print-reply --system --dest=org.ganesha.nfsd /org/ganesha/nfsd/ClientMgr org.ganesha.nfsd.clientmgr.ShowClien
阅读全文
posted @ 2022-11-01 17:18
苏格拉底的落泪
阅读(771)
推荐(0)
摘要:
参考资料 1. cephfs配额问题
阅读全文
posted @ 2022-10-31 09:34
苏格拉底的落泪
阅读(35)
推荐(0)
摘要:
一个 D-Bus 程序 /* 服务端代码 */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <dbus/dbus.h> void listen_signal() { D
阅读全文
posted @ 2022-10-24 13:39
苏格拉底的落泪
阅读(217)
推荐(0)
摘要:
nfs-ganesha 安装相关依赖包: yum install epel-release yum install userspace-rcu-devel yum install dbus-c++-devel.x86_64 yum install dbus-devel yum install uui
阅读全文
posted @ 2022-10-10 15:36
苏格拉底的落泪
阅读(1139)
推荐(0)
摘要:
参考资料 1. cephfs数据池数据对象命名规则解析 Ceph 文件系统或 CephFS 是一个兼容 POSIX 的文件系统,它构建在 Ceph 的分布式对象存储 RADOS 之上。CephFS 致力于为各种应用程序提供最新,多用途,高可用性和高性能的文件存储,包括传统用例(如共享主目录,HPC
阅读全文
posted @ 2022-10-10 13:58
苏格拉底的落泪
阅读(223)
推荐(0)
摘要:
搭建 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
阅读全文
posted @ 2022-09-17 11:22
苏格拉底的落泪
阅读(1143)
推荐(0)
摘要:
修改最后一次commit 注释 通过 git log 查看提交历史信息: 输入命令: git commit --amend 进入修改注释界面: 第一行就是最后一次commit的注释信息,按i键进行编辑状态,修改注释信息后按Esc后再按:wq保存并退出 再次通过git log查看,注释信息由add t
阅读全文
posted @ 2022-08-21 21:07
苏格拉底的落泪
阅读(693)
推荐(0)
摘要:
std::condition_variable 条件变量 void wait( std::unique_lock<std::mutex>& lock ); #1 template< class Predicate > void wait( std::unique_lock<std::mutex>&
阅读全文
posted @ 2022-08-17 20:40
苏格拉底的落泪
阅读(102)
推荐(0)
摘要:
定位new表达式 当传入一个指针类型实参时,定位new表达式构造对象但是不分配内存。 new(address) type; new(address) type(initializers); new(address) type[size]; new(address) type[size]{braced
阅读全文
posted @ 2022-07-30 22:10
苏格拉底的落泪
阅读(53)
推荐(0)
摘要:
va_start和va_end使用详解 函数参数是以数据结构:栈的形式存取,从右至左入栈。首先是参数的内存存放格式:参数存放在内存的堆栈段中,在执行函数的时候,从最后一个开始入栈。因此栈底高地址,栈顶低地址,例如: void func(int x, float y, char z); 调用函数的时候
阅读全文
posted @ 2022-07-27 09:49
苏格拉底的落泪
阅读(109)
推荐(0)
摘要:
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
阅读全文
posted @ 2022-07-24 21:46
苏格拉底的落泪
阅读(51)
推荐(0)
摘要:
git remote 在下图中,git init、git add和git commit都是前期准备,相当于将你本地的文件上传到本地仓库,但是还没有向远程仓库提交。 在这时执行git remote add 命令,就是将本地仓库与远程仓库建立连接, git remote add命令中,add什么呢?蓝色
阅读全文
posted @ 2022-07-24 21:16
苏格拉底的落泪
阅读(908)
推荐(0)
摘要:
分片上传 multipart https://www.cnblogs.com/arnoldlu/p/9776269.html #include <aws/core/Aws.h> #include <aws/s3/S3Client.h> #include <aws/s3/model/CreateMul
阅读全文
posted @ 2022-07-22 15:22
苏格拉底的落泪
阅读(260)
推荐(0)
摘要:
alarm函数 1. 简介设置定时器(闹钟)。在指定seconds后,内核会给当前进程发送 14)SIGALRM信号,进程收到信号后,默认动作终止。 每个进程都有且只有唯一个定时器。 2. alarm函数原型: unsigned int alarm(unsigned int seconds); 常用
阅读全文
posted @ 2022-07-13 18:11
苏格拉底的落泪
阅读(232)
推荐(0)
摘要:
kill函数 1. 函数原型 int kill(pid_t pid, int signo); //signo:信号名 分析: 注意: 进程组:每个进程都属于一个进程组,进程组是一个或多个进程的集合, 它们相互关联,共同完成一个实体任务。每个进程组都有一个进程组长,默认进程组ID与进程组长ID相同。权
阅读全文
posted @ 2022-07-13 16:06
苏格拉底的落泪
阅读(193)
推荐(0)