glbm

package module
v1.6.27 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 13, 2025 License: MIT Imports: 13 Imported by: 0

README

glbm

介绍

glbm的全称是(Go Linux Basic module), 即使用Golang编写的Linux基础模块

Gitee 项目地址

特色

  • 使用全中文注释,即使小白也能轻松上手
  • 完全开源、永久免费

功能清单

详细功能清单请访问pkgo.dev

安装

关闭校验

设置环境变量

export GOSUMDB="off"
开始安装

首先进入你的项目根目录,然后执行下面的命令

go get -u gitee.com/liumou_site/glbm

效果如下

➜  go get -u gitee.com/liumou_site/glbm
go: downloading gitee.com/liumou_site/glbm v1.3.4
go: gitee.com/liumou_site/glbm upgrade => v1.3.4
go: downloading gitee.com/liumou_site/gcs v1.2.3
go: downloading gitee.com/liumou_site/logger v1.1.1
go: downloading github.com/spf13/cast v1.5.0
➜  demo

使用

Demo

最终请看单元测试案例

其他演示
package main

import (
	"fmt"
	"gitee.com/liumou_site/glbm"
)

// Ju 权限验证
func Ju() {
	g := glbm.CheckSudo("1")
	if g {
		fmt.Println("密码检验正确")
	} else {
		fmt.Println("密码错误或无权限")
	}
	d := glbm.Developer()
	if d {
		fmt.Println("已开启开发者")
	} else {
		fmt.Println("未开启开发者")
	}
}

// GetUser 获取用户信息
func GetUser() {
	get, username, uid, uHome := glbm.GetUserInfo(false)
	if get {
		fmt.Println(username)
		fmt.Println(uid)
		fmt.Println(uHome)
	}
}

// OsInfo 获取系统信息
func OsInfo() {
	osType, osArch, ov, err := glbm.GetOsInfo()
	if err != nil{
		fmt.Println("获取失败")
    }else{
		fmt.Println(osType)
		fmt.Println(osArch)
		fmt.Println(ov)
		GetUser()
    }
}

问题反馈

点击链接加入QQ群聊【坐公交也用券

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckSudo

func CheckSudo(password string) bool

CheckSudo 检查提供的密码是否可以成功执行sudo命令。 该函数通过尝试执行需要sudo权限的命令来验证密码的有效性。 参数:

password - 用户提供的sudo密码。

返回值:

bool - 如果密码有效且命令执行成功,则返回true,否则返回false。

func CurlToSave

func CurlToSave(url, filename string, cover bool) bool

CurlToSave 下载文件并保存到指定路径。 参数:

url: 需要下载的文件URL。
filename: 文件保存的路径。
cover: 是否覆盖已存在的文件。

返回值:

bool: 下载并保存成功返回true,否则返回false。

func Developer

func Developer() bool

Developer 检测当前系统是否处于开发者模式。 该函数首先获取当前系统的类型,如果系统类型不是UOS,则直接返回true, 表示无需检测开发者模式。如果是UOS系统,则检查特定的文件是否存在, 以及文件中的内容是否为"1",以确定系统是否处于开发者模式。

返回值:

bool类型,如果系统处于开发者模式或不是UOS系统,则返回true;否则返回false。

func GetOsSn added in v1.6.18

func GetOsSn(password string) (error, string)

GetOsSn 尝试以root权限获取操作系统序列号。 参数:

password - 用于提升权限的密码字符串。

返回值:

error - 如果执行过程中发生错误,可能不为nil。
string - 成功获取到的操作系统序列号字符串。

func GetOsSnSudo added in v1.6.19

func GetOsSnSudo(password string) (error, string)

GetOsSnSudo 使用管理员权限执行命令以获取系统的序列号。 该函数需要用户输入密码以进行身份验证。 参数:

password - 用户的管理员密码,用于身份验证。

返回值:

error - 如果执行命令时发生错误,将返回该错误。
string - 成功执行命令后,返回系统的序列号。

func GetUserInfo

func GetUserInfo() (*user.User, error)

GetUserInfo 获取当前用户信息。 该函数调用 user.Current() 来获取当前用户的信息。 如果获取过程中发生错误,会记录错误日志并返回错误。 返回值:

*user.User: 当前用户的信息。
error: 如果获取用户信息时发生错误,则返回该错误。

func IsDockerDevice added in v1.6.13

func IsDockerDevice(eth string) bool

IsDockerDevice 检查网络接口是否为 Docker 虚拟网桥

参数

eth 是网络接口的名称

返回值

表示网络接口是否为 Docker 虚拟网桥 ("docker0")

func IsIPv4 added in v1.4.3

func IsIPv4(ipAddr string) bool

IsIPv4 检查给定的IP地址是否是IPv4格式。 该函数首先使用net.ParseIP验证IP地址是否有效,然后通过检查地址字符串中是否包含"." 来确定它是否为IPv4地址。这种方法简单有效地区分IPv4和IPv6地址。

参数:

ipAddr (string): 需要验证的IP地址字符串。

返回值:

bool: 如果给定的IP地址是有效的IPv4地址,则返回true;否则返回false。

func IsLoopBackV4 added in v1.6.18

func IsLoopBackV4(ipAddr string) bool

IsLoopBackV4 检查IPv4地址是否为回环地址 参数:

ipAddr: 待检查的IPv4地址字符串

返回值:

bool: 如果地址是回环地址,则返回true;否则返回false

说明:

此函数用于确定给定的IPv4地址是否属于回环地址范围
目前仅将"127.0.0.1"视为回环地址,这是一个简化的判断逻辑

func IsUos added in v1.6.18

func IsUos() bool

IsUos 判断当前操作系统是否为 UOS。

返回值:

  • bool: 如果操作系统为 UOS,则返回 true;否则返回 false。

func ProcessIsRunning added in v1.6.27

func ProcessIsRunning(command string) bool

ProcessIsRunning 检查指定的命令是否正在运行。 参数:

command (string): 需要检查的命令名称。

返回值:

bool: 如果指定的命令正在运行,则返回true;否则返回false。

func Version

func Version() string

func WgetToSave

func WgetToSave(url, filename string) bool

WgetToSave 下载指定URL的文件并保存为指定的文件名。 参数:

url: 需要下载的文件的URL。
filename: 下载文件后保存的文件名。

返回值:

bool: 下载是否成功。

Types

type ApiApt added in v1.5.6

type ApiApt struct {
	Sudo *gcs.ApiSudo // 执行sudo命令
	Err  error        // 错误信息

	Debug     bool // 是否开启Debug
	Info      bool // 是否开启Info
	BlackHole bool // 是否使用黑洞模式(忽略错误信息)
	Ignore    bool // 是否忽略标准输出
	// contains filtered or unexported fields
}

ApiApt 定义一个命令行密码结构体

func NewApt added in v1.5.3

func NewApt(password string, debug, realtime bool) *ApiApt

NewApt 管理初始化

func (*ApiApt) AptLocalInstallFile added in v1.5.6

func (api *ApiApt) AptLocalInstallFile(filename, name string) (err error)

AptLocalInstallFile 安装本地软件包文件,安装之前将会检测文件是否存在 该函数通过sudo权限执行apt命令来安装指定的软件包文件。 参数:

filename: 要安装的软件包文件名。
name: 软件包的名称,用于日志信息。

返回值:

可能发生的错误。

func (*ApiApt) AptLocalInstallStr added in v1.5.6

func (api *ApiApt) AptLocalInstallStr(installStr, name string) bool

AptLocalInstallStr 安装指定的软件包字符串 参数:

installStr - 需要安装的软件包字符串
name - 软件包的名称,用于日志信息

返回值:

成功安装返回 true,否则返回 false

func (*ApiApt) Install added in v1.6.13

func (api *ApiApt) Install(Package string) bool

Install 安装指定的软件包 参数:

Package: 需要安装的软件包名称

返回值:

bool: 安装是否成功

func (*ApiApt) InstallList added in v1.6.13

func (api *ApiApt) InstallList(pacList list.List) (ok, failed list.List)

InstallList 安装给定的软件包列表,并返回安装成功和失败的软件包列表。

参数:

  • pacList: 包含待安装软件包的链表。

返回值:

  • ok: 包含安装成功的软件包的链表。
  • failed: 包含安装失败的软件包的链表。

func (*ApiApt) InstallSlice added in v1.6.13

func (api *ApiApt) InstallSlice(pacList []string) (ok, failed list.List)

InstallSlice 安装一组软件包并返回安装成功和失败的软件包列表 参数:

pacList []string: 待安装的软件包列表

返回值:

ok list.List: 安装成功的软件包列表
failed list.List: 安装失败的软件包列表

func (*ApiApt) LocalInstallList added in v1.5.6

func (api *ApiApt) LocalInstallList(fileList []string, name string) bool

LocalInstallList 接受一个文件列表和一个名称作为参数,将文件列表转换为字符串后调用AptLocalInstallStr方法进行处理 此函数的作用是通过提供的文件列表和名称参数,构造出一个安装字符串,并调用相应的安装处理方法 参数:

fileList []string: 待安装的文件列表
name string: 安装名称

返回值:

bool: 安装处理的结果状态

func (*ApiApt) Uninstall added in v1.6.13

func (api *ApiApt) Uninstall(Package string, name string) (res bool)

Uninstall 卸载指定软件包 Package: 要卸载的软件包名称 name: 软件包的显示名称,用于日志 返回值 res: 表示卸载操作是否成功或忽略的结果

func (*ApiApt) UninstallList added in v1.6.13

func (api *ApiApt) UninstallList(pacList list.List) (ok, failed list.List)

UninstallList 卸载给定的软件包列表 参数 pacList 是一个包含待卸载软件包名称的链表 返回两个链表 ok 和 failed,分别包含卸载成功的软件包和卸载失败的软件包

func (*ApiApt) UninstallSlice added in v1.6.13

func (api *ApiApt) UninstallSlice(pacList []string) (ok, failed list.List)

UninstallSlice 卸载一组软件包 pacList: 需要卸载的软件包列表 返回两个 list.List 类型的值,分别表示卸载成功和卸载失败的软件包列表

func (*ApiApt) UpdateIndex added in v1.6.13

func (api *ApiApt) UpdateIndex() (res bool)

UpdateIndex 更新API的索引 该函数通过继承当前API的设置来执行更新操作,并根据执行结果记录日志 返回值表示更新操作是否成功,无错误返回true,否则返回false

func (*ApiApt) Upgrade added in v1.6.13

func (api *ApiApt) Upgrade() (res bool)

Upgrade 系统升级函数 该函数执行系统的全面升级,包括安装新的软件包和更新现有的软件包 返回值 res 表示升级是否成功,true 表示成功,false 表示失败

type ApiConnection added in v1.5.6

type ApiConnection struct {
	Name   string // 连接名称(例如: dhcp)
	Types  string // 连接类型(bridge/wifi/ethernet)
	Method string // 连接模式(auto)

	Dns     []string // DNS列表
	Dev     string   // 设备名称
	Gw      net.IP   // 网关地址
	Address net.IP   // IP地址
	Mask    int      // 子网掩码
	Err     error    // 错误信息

	UseConName string   // 正在使用的连接名称
	ConList    []string // 连接列表
	// contains filtered or unexported fields
}

ApiConnection 网络连接管理结构

func NewConnect added in v1.5.3

func NewConnect(debug bool) *ApiConnection

NewConnect 连接管理

func (*ApiConnection) AddConnect added in v1.5.6

func (c *ApiConnection) AddConnect() error

AddConnect 添加一个新的网络连接配置 该方法配置了一个新的API连接,包括设置IP地址、DNS服务器、网关、子网掩码等信息 使用nmcli命令行工具来添加一个类型为ethernet的连接,并指定连接的名称和设备名 无需参数 返回error类型,表示命令执行的结果

func (*ApiConnection) AddDns added in v1.5.6

func (c *ApiConnection) AddDns() (err error)

AddDns 为当前API连接添加DNS服务器配置,默认(119.29.29.29 180.76.76.76) 该方法通过调用gcs.NewShell()创建一个新的Shell实例来执行命令。 它会检查ApiConnection的Dns属性,根据Dns列表中的服务器地址通过nmcli命令修改网络连接的DNS配置。 如果Dns列表为空,则会记录错误日志并返回错误提示。 返回值err用于指示是否在执行过程中遇到了错误。

func (*ApiConnection) GetConDnsList added in v1.6.13

func (c *ApiConnection) GetConDnsList(con string)

GetConDnsList 获取指定连接的DNS列表 该方法通过执行shell命令来获取指定连接的DNS信息 参数:

con: 指定的连接名称

返回值: 无

func (*ApiConnection) GetConList added in v1.6.13

func (c *ApiConnection) GetConList()

GetConList 获取当前系统的网络连接列表 该方法通过执行shell命令来获取网络连接信息,并解析结果以填充连接列表

func (*ApiConnection) GetUseCon added in v1.6.13

func (c *ApiConnection) GetUseCon()

GetUseCon 获取当前正在使用的网络连接配置。

该方法通过执行 `nmcli connection show --active` 命令来获取当前活动的网络连接信息。 如果命令执行失败或返回内容为空,则记录错误并设置 c.Err。

type ApiDpkg added in v1.5.6

type ApiDpkg struct {
	Sudo      *gcs.ApiSudo // 执行sudo命令
	Err       error        // 错误信息
	Result    bool         // 操作结果
	Debug     bool         // 是否开启Debug
	Info      bool         // 是否开启Info
	BlackHole bool         // 是否使用黑洞模式(忽略错误信息)
	Ignore    bool         // 是否忽略标准输出
	// contains filtered or unexported fields
}

ApiDpkg 定义一个Dpkg管理结构

func NewDpkg added in v1.5.3

func NewDpkg(password string, realtime bool) *ApiDpkg

NewDpkg 初始化(realtime: 是否开启实时刷新)

func (*ApiDpkg) CheckPacKey added in v1.6.13

func (api *ApiDpkg) CheckPacKey(pac1, pac2 string) (result bool, pac string)

CheckPacKey 检查系统中是否存在指定的软件包键 该方法通过运行shell命令'dpkg -l'来列出已安装的软件包,并搜索pac1和pac2关键词 如果找到匹配的软件包,返回true和软件包的名称;如果没有找到,返回false和空字符串 参数:

pac1 - 要检查的第一个软件包关键词
pac2 - 要检查的第二个软件包关键词

返回值:

result - 布尔值,表示是否找到了匹配的软件包
pac - 字符串,如果找到匹配的软件包,则返回软件包的名称

func (*ApiDpkg) CheckVersion added in v1.6.13

func (api *ApiDpkg) CheckVersion(pac string, version string) (status_ bool, ver_ string)

CheckVersion 检查指定软件包的版本是否与给定版本一致。 参数:

pac: 软件包的名称。
version: 需要检查的软件包版本。

返回值:

status_: 布尔值,指示软件包版本是否与给定版本一致。
ver_: 字符串,表示软件包的实际版本。

func (*ApiDpkg) ConfigureAll added in v1.6.13

func (api *ApiDpkg) ConfigureAll()

ConfigureAll 配置所有未初始化的软件包。 该方法使用sudo执行dpkg命令来配置所有未初始化的软件包。 如果配置成功,它会在日志中记录"Configure succeeded"; 如果配置失败,则记录"Configure Failed"。 最后,它将sudo操作的错误(如果有)赋值给api的Err属性。

func (*ApiDpkg) GetPackageStatus added in v1.6.13

func (api *ApiDpkg) GetPackageStatus(pacPackage string) (m map[string]string)

GetPackageStatus 使用 Dpkg查询包状态, 通过res返回字典,通过status返回查询状态,字典key(status/Name/version)

func (*ApiDpkg) InstallFile added in v1.6.13

func (api *ApiDpkg) InstallFile(pac string, name string)

InstallFile 安装指定的软件包文件。 参数:

pac: 软件包文件的路径。
name: 软件包的名称,用于日志显示。

func (*ApiDpkg) InstallListLocal added in v1.6.13

func (api *ApiDpkg) InstallListLocal(fileList []string, name string)

InstallListLocal 安装本地软件包列表 该函数接收一个文件列表和一个名称,将文件列表转换为字符串后调用InstallFile进行安装 参数:

fileList []string: 待安装的本地软件包文件列表
name string: 软件包的名称

func (*ApiDpkg) Installed added in v1.6.13

func (api *ApiDpkg) Installed(pac string) bool

Installed 检查指定的软件包是否已安装 参数:

pac: 要检查的软件包名称

返回值:

bool: 如果软件包已安装,则返回true;否则返回false

func (*ApiDpkg) Uninstall added in v1.6.13

func (api *ApiDpkg) Uninstall(Package string)

Uninstall 方法用于卸载指定的软件包。 它通过调用 dpkg 命令来实现软件包的完全卸载。 参数:

Package: 需要卸载的软件包名称。

func (*ApiDpkg) UninstallSlice added in v1.6.13

func (api *ApiDpkg) UninstallSlice(pacList []string)

UninstallSlice 卸载软件包列表中的软件包。

参数:

pacList: 需要卸载的软件包名称列表。

type ApiEth added in v1.5.6

type ApiEth struct {
	Index int    // 网卡设备索引
	Name  string // 网卡名称
	Ipv4  net.IP // IPV4地址
	Mask  int    //子网掩码
	Mac   string // Mac物理地址
	Err   error  // 错误信息
}

ApiEth 网卡信息结构体

type ApiFile added in v1.6.13

type ApiFile struct {
	PathAbs    string // 操作对象绝对路径
	PathBase   string // 操作对象基础文件名
	PathFormat string // 操作对象文件格式
	Src        string // 源文件
	SrcAbs     string // 源文件绝对路径
	SrcBase    string // 源文件基础文件名
	SrcFormat  string // 源文件格式
	Dst        string // 目标文件
	DstAbs     string // 目标文件绝对路径
	DstBase    string // 目标文件基础文件名
	DstFormat  string // 目标文件格式

	Err error // 错误
	// contains filtered or unexported fields
}

ApiFile 文件管理

func NewFile added in v1.6.13

func NewFile(src string) *ApiFile

NewFile 文件管理模块

func (*ApiFile) Copy added in v1.6.13

func (api *ApiFile) Copy(dst string) *ApiFile

Copy 复制文件/文件夹 参数 dst: 目标文件/文件夹的路径 返回值: 返回指向当前 ApiFile 实例的指针,用于链式调用

func (*ApiFile) Delete added in v1.6.13

func (api *ApiFile) Delete() *ApiFile

Delete 删除文件/文件夹,默认使用Src文件 返回值: 返回指向当前 ApiFile 实例的指针,用于链式调用

func (*ApiFile) DeleteFile added in v1.6.13

func (api *ApiFile) DeleteFile() *ApiFile

DeleteFile 删除文件,默认使用Src文件 返回值: 返回指向当前 ApiFile 实例的指针,用于链式调用

func (*ApiFile) Move added in v1.6.13

func (api *ApiFile) Move(dst string) *ApiFile

Move 移动文件/文件夹 参数

dst: 目标文件/文件夹的路径 返回值:

返回指向当前 ApiFile 实例的指针,用于链式调用

type ApiFileSudo added in v1.6.13

type ApiFileSudo struct {
	Password string // 密码

	ApiFile // 继承文件结构
	// contains filtered or unexported fields
}

ApiFileSudo 文件管理(超级权限)

func NewFileSudo added in v1.6.13

func NewFileSudo(src, password string) *ApiFileSudo

NewFileSudo 文件管理模块

func (*ApiFileSudo) CopySudo added in v1.6.13

func (api *ApiFileSudo) CopySudo(dst string) *ApiFileSudo

CopySudo 使用Sudo权限复制文件/文件夹 参数:

dst - 目标路径

返回值:

*ApiFileSudo - 执行复制操作后的ApiFileSudo实例指针

func (*ApiFileSudo) DeleteFileSudo added in v1.6.13

func (api *ApiFileSudo) DeleteFileSudo(filename string) *ApiFileSudo

DeleteFileSudo 使用Sudo权限删除文件 参数:

filename - 要删除的文件名称

返回值:

*ApiFileSudo - 执行删除操作后的ApiFileSudo实例指针

func (*ApiFileSudo) DeleteSudo added in v1.6.13

func (api *ApiFileSudo) DeleteSudo(filename string) *ApiFileSudo

DeleteSudo 使用Sudo权限删除文件/文件夹 参数:

filename - 要删除的文件/文件夹名称

返回值:

*ApiFileSudo - 执行删除操作后的ApiFileSudo实例指针

func (*ApiFileSudo) MoveSudo added in v1.6.13

func (api *ApiFileSudo) MoveSudo(dst string) *ApiFileSudo

MoveSudo 使用Sudo权限移动文件/文件夹 参数:

dst - 目标路径

返回值:

*ApiFileSudo - 执行移动操作后的ApiFileSudo实例指针

type ApiNmcli added in v1.5.6

type ApiNmcli struct {
	DefaultGw      net.IP // 当前默认网关
	DefaultDevices string // 当前默认网卡设备

	Err error // 错误信息
	// contains filtered or unexported fields
}

ApiNmcli 网卡管理

func NewNmcli added in v1.5.4

func NewNmcli() *ApiNmcli

NewNmcli 返回一个网卡管理实例

func (*ApiNmcli) GetAllEthInfo added in v1.6.13

func (n *ApiNmcli) GetAllEthInfo() ([]ApiEth, error)

GetAllEthInfo 获取所有以太网卡的信息

返回值:

[]ApiEth - 包含所有以太网卡信息的切片,

error - 错误信息(如果有的话)

func (*ApiNmcli) GetConnectionList added in v1.5.6

func (n *ApiNmcli) GetConnectionList() bool

GetConnectionList 获取连接列表 本函数通过执行shell命令来获取特定设备类型的网络连接列表 它首先检查是否有设备列表,如果没有,则直接返回false 然后构造并执行一个shell命令来过滤出所需的连接类型和设备 最后,处理命令的输出,将其分割成字符串切片,并移除其中的空元素 返回值表示命令执行是否成功

func (*ApiNmcli) GetDefaultRouteInfo added in v1.6.13

func (n *ApiNmcli) GetDefaultRouteInfo() error

GetDefaultRouteInfo 获取默认路由信息,包括默认网关地址和默认设备 该方法通过执行"ip -4 route show default"命令来获取默认路由信息,并解析命令输出以提取默认网关地址和默认设备 如果成功获取到默认网关地址和默认设备,则更新ApiNmcli实例的DefaultGw和DefaultDevices字段 如果在解析过程中遇到错误或找不到默认网关地址,则返回相应的错误

func (*ApiNmcli) GetEthGw added in v1.6.13

func (n *ApiNmcli) GetEthGw(eth string) (net.IP, error)

GetEthGw 获取指定以太网接口的网关地址 参数:

eth: 以太网接口的名称

返回值:

net.IP: 网关的IP地址
error: 错误信息,如果执行过程中遇到任何问题,则返回错误

func (*ApiNmcli) GetEthInfo added in v1.5.6

func (n *ApiNmcli) GetEthInfo(eth string) (EthInfo, error)

GetEthInfo 获取指定网卡的详细信息,包括IP、网关、子网掩码和DNS服务器列表。

参数

eth: 网卡名称,用于指定需要获取信息的网卡。

返回值

EthInfo: 包含网卡详细信息的结构体,包括IP、GW、MASK和DNS列表。

error: 如果获取信息过程中发生错误,返回错误信息。

type ApiService added in v1.5.6

type ApiService struct {
	Name     string // 服务名称
	Err      error  // 错误
	Status   string // 当前状态
	Password string // Sudo权限密码
	// contains filtered or unexported fields
}

ApiService 服务管理结构

func NewService added in v1.5.5

func NewService(name, password string) *ApiService

func (*ApiService) Disable added in v1.5.7

func (api *ApiService) Disable() *ApiService

Disable 禁用API服务。通过运行sudo命令来禁用服务。 返回值: *ApiService 返回API服务的实例,以便进行链式调用。

func (*ApiService) Enable added in v1.5.7

func (api *ApiService) Enable() *ApiService

Enable 启用API服务。通过运行sudo命令来启用服务。 返回值: *ApiService 返回API服务的实例,以便进行链式调用。

func (*ApiService) Exists added in v1.5.8

func (api *ApiService) Exists() bool

Exists 检查服务是否存在于系统中。 该方法通过运行外部命令并解析结果来确定服务是否存在。 返回值: 如果服务存在,则返回true;否则返回false。

func (*ApiService) ReLoad added in v1.5.6

func (api *ApiService) ReLoad() *ApiService

ReLoad 重新加载服务配置,而不终止服务。 该方法使用sudo权限执行systemctl reload命令来重新加载服务配置。 参数: 无 返回值: *ApiService - 返回ApiService的指针,以便进行链式调用。

func (*ApiService) ReLoadDaemon added in v1.5.6

func (api *ApiService) ReLoadDaemon() *ApiService

ReLoadDaemon 重新加载systemd守护进程配置。 这个方法不接受任何参数,因为它仅负责触发systemctl reload-daemon操作。 返回值: *ApiService 返回API服务的实例,以便进行链式调用。

func (*ApiService) ReStart added in v1.5.6

func (api *ApiService) ReStart() *ApiService

ReStart 重启 API 服务 该方法使用 sudo 特权执行 systemctl restart 命令来重启服务 返回值是 *ApiService,即 ApiService 的指针,方便链式调用

func (*ApiService) Start added in v1.5.6

func (api *ApiService) Start() *ApiService

Start 启动 API 服务 该方法使用 sudo 特权执行 systemctl start 命令来启动服务 返回值是 *ApiService,即 ApiService 的指针,方便链式调用

func (*ApiService) StatusGet added in v1.6.27

func (api *ApiService) StatusGet() string

StatusGet 获取 API 服务的状态 该方法首先检查服务是否存在,如果不存在则返回 "not exists" 如果服务存在,它将通过运行 shell 命令来查询服务的 ActiveState 属性 最后返回服务的状态,可能的值包括 "active"、"inactive" 或 "unknown"

func (*ApiService) Stop added in v1.5.6

func (api *ApiService) Stop() *ApiService

Stop 停止 API 服务 该方法使用 sudo 特权执行 systemctl stop 命令来停止服务 返回值是 *ApiService,即 ApiService 的指针,方便链式调用

type EthInfo added in v1.6.13

type EthInfo struct {
	IP   net.IP   // IP地址
	GW   net.IP   // 网关地址
	MASK int      // 子网掩码
	DNS  []net.IP // DNS列表
}

EthInfo 网卡信息结构

type OsInfo added in v1.6.18

type OsInfo struct {
	Name     string // 系统名称
	Version  string // 系统版本
	CodeName string // 系统代号
	Arch     string // 系统架构
	IsMips   bool   // 是否属于Mips架构
	IsArm64  bool   // 是否属于ARM架构
	IsAmd64  bool   // 是否属于X86架构
}

OsInfo 系统信息结构

func GetOsInfo

func GetOsInfo() (info *OsInfo, err error)

GetOsInfo 获取操作系统信息 返回值:

info: 操作系统信息结构体指针
err: 错误信息,如果获取过程中发生错误

type UserInfo added in v1.6.18

type UserInfo struct {
	Name string // 用户名称
	Home string // 用户主目录
	UID  string // 用户UID
	Arch string // 系统架构
}

UserInfo 用户信息结构

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳