草庐IT

linux_amd

全部标签

go - 在 windows 上运行 linux 的编译代码

所以我在Windows(10)forLinux上交叉编译了Go代码,我实际上能够在Windows和Linux上运行相同的可执行文件,这怎么可能? 最佳答案 那就是新的WindowsSubsystemforLinux(WSL),可以在Windows10上本地运行LinuxELF二进制文件。 关于go-在windows上运行linux的编译代码,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

linux - 从 Go 中的列表中打印列表。循环故障

尝试从网络命名空间中打印路由列表。netlink.RouteList函数需要一个Interface类型。LinkList()收集所有接口(interface)的列表。我试图用每个接口(interface)调用RouteList并打印它的输出。RouteList返回类型Route,我正在尝试打印intLinkIndex。看起来好像我的循环forj:=rangert{log.Printf("Route:%d:%d",rt[j].LinkIndex)}由于某种原因没有执行,在那里运行另一个Printf测试没有产生任何结果。为什么不调用这个循环?func(h*NSHandle)showInts

linux - 用于在 Ubuntu 16.04 上更新 GO 项目的 Bash 脚本

这个问题在这里已经有了答案:HowtogetprocessIDofbackgroundprocess?(9个回答)关闭5年前。伙计们。我是bash脚本编写和在ubuntu上部署Go的新手。我这样运行我的Go程序gobuild-omyprogrammain.go./myprogram&但现在,我不想使用sftp上传文件并手动更改所有内容,而是编写简单的bash脚本。问题是我首先需要终止现有进程,但我不知道如何获取PID并终止它。也许我可以使用不同的东西运行我的程序,这样我就不必找到PID。我尝试使用psax|grepmyprogram然后杀死它,但没有成功

linux - [Golang][Linux] - 如何获取当前用户打开的所有文件

当日志大小超过配额时,我想删除一些日志,但我需要在删除之前检查日志是否正在打开。如何获取当前用户打开的所有文件? 最佳答案 解析/proc(参见proc(5)...)可能是最有效的方法,也是lsof会做的。您可以首先扫描所有(数字)目录以查找用户运行的进程,然后在所有此类目录中使用/proc/pid/fd目录。顺便说一句,您可能不在乎,只需删除这些日志文件即可。内核在打开时会正常运行。但也许你应该让你的系统管理员设置diskquotas.参见quota(1)"aon(8).可能正在使用和配置logrotate应该足够了。

linux - 如何在/mnt/中创建文件读/写权限?

我试过os.Create()但它给出的权限被拒绝。这是预期的结果,但我怎样才能摆脱它? 最佳答案 首先检查您是否有阻止在/mnt中创建任何文件(无论是否为根文件)的安全设置。参见“Can'tcreate/writetofile'/mnt/temp/something'(Errcode:13)”它涉及在/etc/apparmor.d中添加配置文件以允许创建任何文件。参见“UbuntuAppArmor”。 关于linux-如何在/mnt/中创建文件读/写权限?,我们在StackOverflo

go - 相当于golang中的php的chr

我正在尝试将功能从php更改为golang。该功能的工作是使用chr,ord,base4_encode来编码一些字符串。php生成一个序列号,如122|234|135|138|179|19|190|183|80|156|4|159|195|213|86|241|140|7|112|23|61|182|37|91|185|26|203|185|206|206|183,一些大于127的数字,ascii最大的数字是127。现在,问题是:php的chr(206)不等同于golang的string(rune(206))请帮帮我,谢谢 最佳答案

linux - 链接 ARM 上的 SQLite3(x86_64 主机)

我需要交叉编译一些Go应用程序,以便它可以在RaspberryPi上运行。到目前为止,它在GOARCH=armGOOS=linux上运行良好,但是对于SQLite3,导入的符号存在一些问题:GOOS=linuxGOARCH=armgobuildvendor/github.com/mattn/go-sqlite3/sqlite3_go18.go:18:10:undefined:SQLiteConn我也试过GOOS=linuxGOARCH=armgogetgithub.com/mattn/go-sqlite3#github.com/mattn/go-sqlite3../../mattn/g

linux - 为什么 docker 容器中的应用程序不重启?

我已经部署了一些带有golang应用程序的docker容器。其中一个我需要通过这个命令启动:dockerrun--restartunless-stopped-itmyapp/bin/bash下一步我进入容器并编辑一些配置文件,然后我运行gobuildmain.go和./main之后,我按ctrl+q并将其保留。一切正常,重启服务器后我的所有容器都完美重启。但是有一个问题,当myapp容器重新启动时,golang应用程序不会运行,而容器仍在运行。我必须再次输入并运行./main。我该如何解决?DockerfileFROMgolang:1.8WORKDIR/go/src/appCOPY..

gcc - Linux 上的 Golang c-shared - ld 找不到 -ltest

我正在尝试按照http://snowsyn.net/2016/09/11/creating-shared-libraries-in-go/中的说明进行操作我的项目比较简单。该库有一个带有println的测试函数。正如标题所说,我越来越“找不到”。我正在运行Ubuntuzesty并升级到1.7.4ls-lroy@roy-desktop:~/go/src/c$ls-l2016年合计-rw-rw-r--1royroy43Dec1006:55test.c-rw-rw-r--1royroy1274Dec1006:54test.h-rw-rw-r--1royroy2053664Dec1006:54

php - GoLang Web 服务器在 Json 响应中发送参数结构的描述

事情是这样的:我已经在大型系统(PHP)上工作了几年,现在,我决定放弃部分繁重的工作,转而使用golang脚本。到目前为止,我将一些php脚本复制到了一个go版本中。然后,我能够对哪个选项更好进行基准测试(好的,我知道go更快,但我需要curl或sockets进行通信,所以,我必须检查它是否仍然值得)。其中一个脚本只是生成一个随机代码,检查这个新代码是否已经被使用(在mysqldb上),如果没有,记录新代码并返回它,如果已经被使用,就递归调用函数再次直到找到独占代码。非常简单。我已经在php中有了这个代码生成器,所以,在go中写了一个新的,被称为带有json参数的http/post。使