胡伟煌

个人博客

错误处理

错误处理 1. error接口 1234567891011121314//定义error接口type error interface{ Error() string}//调用error接口func Foo(param int) (n int,err error){ //...}n,err:=Foo(0)if err!=nil{ //错误......

流程语句

流程语句 1. 条件语句 12345678910111213141516//在if之后条件语句之前可以添加变量初始化语句,用;号隔离if <条件语句> { //条件语句不需要用括号括起来,花括号必须存在 //语句体}else{ //语句体}//在有返回值的函数中,不允许将最后的return语句放在if...else...的结构中,......

磁盘命令

1. 判断磁盘是SSD或HDD盘 1、没有使用raid方案 lsblk -d -o name,rota命令,0表示SSD,1表示HDD 12345# lsblk -d -o name,rotaNAME ROTAsda 0sdb 1sdc 1 2、使用raid方案 下载工具 1wget https://raw.githubusercontent.com/eLvErDe/......

LVM的使用

本文由网络内容整理而成的笔记 1. LVM简介 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。 优点: 可以灵活分配和管理磁盘空间 可以对分区进行动态的扩容 可以增加新的磁盘到lvm中 2. LVM核心概念 LVM概念图: ......

Linux文件权限

1. Linux文件管理 Linux中的所有数据都被保存在文件中,所有的文件被分配到不同的目录。目录是一种类似于树的结构,称为文件系统。 1.1. 文件类型 1、普通文件 普通文件是以字节为单位的数据流,包括文本文件、源码文件、可执行文件等。文本和二进制对Linux来说并无区别,对普通文件的解释由处理该文件的应用程序进行。 2、目录 目录可以包含普通文件和特殊文件,目录相当于Windows和......

Linux文件系统

1. 文件系统 文件系统就是分区或磁盘上的所有文件的逻辑集合。文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。 不同Linux发行版本之间的文件系统差别很少,主要表现在系统管理的特色工具以及软件包管理方式的不同,文件目录结构基本上都是一样的。 ext2 : 早期linux中常用的文件系统; ext3 : ......

Linux文件存储

文件存储结构 大部分的Linux文件系统(如ext2、ext3)规定,一个文件由目录项、inode和数据块组成 目录项:包括文件名和inode节点号。 Inode:又称文件索引节点,包含文件的基础信息以及数据块的指针。 数据块:包含文件的具体内容。 1. inode 理解inode,要从文件储存说起。文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector),每......

Linux介绍

1. Linux简介 严格来讲,Linux(内核)是计算机软件与硬件通信之间的平台,不是真正意义上的操作系统,而一些厂家将Linux内核和GNU软件(系统软件和工具)整合起来,并提供一些安装界面和系统设定与管理工具,就构成一些发行套件(系统),例如:Ubuntu、CentOS、Red Hat、Debian等。 Linux内核版本 Linux内核版本一般格式为:x.y.zz-www,例如:Ke......

Goroutine调度

本文主要介绍Go的调度模型。 1. 线程实现模型 线程模型有三类:内核级线程模型、用户级线程模型、混合型线程模型。三者的区别主要在于线程与内核调度实体KSE(Kernel Scheduling Entity)之间的对应关系上。 内核调度实体KSE指操作系统内核调度器调度的对象实体,是内核调度的最小单元。 1.1. 线程模型对比 线程模型 用户线程与KSE之间的对应关系 特点 优......

cobra flags

添加Flags 1. Persistent Flags Persistent Flags表示该类参数可以被用于当前命令及其子命令。 例如,以下表示verbose参数可以被用于rootCmd及其子命令。 1rootCmd.PersistentFlags().BoolVarP(&Verbose, "verbose", "v", false, "verbose output") 2. Lo......