草庐IT

debian-sys-maint

全部标签

python - 对于不同的 Linux 发行版(Debian、Redhat、Slackware 等),python 标准库和 dist-packages 的路径是否不同?

我的问题假设您在这些不同的Linux发行版上使用相同的Python版本。我还从我的问题中排除了虚拟环境。我使用基于Debian的发行版Ubuntu。python标准库(用python编写的模块/包)的路径是/usr/lib/python2.7。“外部”python包的路径是/usr/local/lib/python2.7/dist-packages。非常感谢一种独立于系统的方式来获取这些路径。编辑1我发现:>>>fromdistutils.sysconfigimportget_python_lib>>>printget_python_lib()/usr/local/lib/python

c++ - 在 linux/sys/class/gpio 中写入文件的错误

我现在遇到了我在Linux系统上见过的最奇怪的错误,似乎只有两种可能的解释-要么附加sudo使文件立即写入或者附加sudo会在执行语句时产生短暂的延迟或者我不知道我的程序发生了什么好吧,让我给你一些背景知识。我目前正在编写一个用于raspberrypigpio操作的c++程序。据我所知,程序中没有明显的错误,因为它成功地与sudo一起工作并且也成功地延迟了。所以这里是rpi的gpio是如何工作的-Firstyou'vetoexportone,toreserveitformanipulation,itwillcreateanewdirectoryasgpio+numberwithseve

linux - 如何为 Linux 用户设置 CAP_SYS_NICE 能力?

我的程序正在使用Linux系统调用setpriority()来更改它创建的线程的优先级。它需要设置负优先级(-10),但如文档中所述,以普通用户身份运行时会失败。用户需要CAP_SYS_NICE能力来设置他想要的优先级,但我不知道如何给用户这样的能力。所以我的问题是:如何为Linux用户设置CAP_SYS_NICE功能? 最佳答案 有一个非常方便的实用程序可用于设置二进制文件的功能:setcap。这需要在您的应用程序二进制文件上以root身份运行,但一旦设置,就可以作为普通用户运行。示例:$sudosetcap'cap_sys_ni

c - __NR_gettid 和 SYS_gettid 之间的区别

我只是在寻找在Linux中获取唯一线程ID的方法。我发现的方法是使用以下两个参数之一作为参数执行系统调用:__NR_gettid或SYS_gettid。谁能解释一下它们之间有何不同? 最佳答案 没有在有这个:#defineSYS_gettid__NR_gettid 关于c-__NR_gettid和SYS_gettid之间的区别,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/223

linux - 如何列出重新创建一组已安装软件包所需的最小 Debian 软件包集?

有没有办法让dpkg、apt-get或aptitude生成需要安装在第二台机器上的软件包列表,以复制第一台机器上安装的软件包?即如果我安装了普通的Ubuntu服务器,在安装时选择了sshd选项,然后安装了build-essential,我希望输出看起来像这样:#ubuntu9.10serveropenssh-sshdbuild-essential据我所知,所有可用的打包工具都会在盒子上生成详细的包列表。我对openssh库、ld、gcc和所有其他由sshd和build-essential引入的包不感兴趣,因为它们将在我安装sshd和build-essential时安装。我只想查看我需要

c - 在保留 CAP_SYS_NICE 的同时删除根 UID

我正在尝试编写一个守护进程,它将使用setuid位以root身份启动,然后快速恢复到运行该进程的用户。然而,守护进程需要保留将新线程设置为“实时”优先级的能力。我用来设置优先级的代码如下(一旦创建就在线程中运行):structsched_paramsched_param;memset(&sched_param,0,sizeof(sched_param));sched_param.sched_priority=90;if(-1==sched_setscheduler(0,SCHED_FIFO,&sched_param)){//Ifwegethere,wehaveanerror,forex

python - 使用 apt_pkg 以编程方式安装 debian 软件包时出错

我构建了一些debian软件包并将它们放在我的主机上。我想在python脚本中安装这些包。所以我使用apt_pkg编写了安装函数,如下所示:#!/usr/bin/envpython#-*-coding:utf-8-*-importaptimportapt_pkgimportsysclassmy_pkg_manager:def__init__(self):apt_pkg.init()self.cache=apt_pkg.Cache()self.sources=apt_pkg.SourceList()self.pkg_records=apt_pkg.PackageRecords(self.

linux - 为什么sys_read系统调用检测到换行就结束?

我是汇编的初学者(使用nasm)。我正在通过大学类(class)学习汇编。我试图了解sys_readlinux系统调用在被调用时的行为。具体来说,sys_read在读取新行或换行符时停止。根据我所受的教导,这是真的。这onlinetutorialarticle也证实了事实/主张。Whensys_readdetectsalinefeed,controlreturnstotheprogramandtheusersinputislocatedatthememoryaddressyoupassedinECX.我检查了linux程序员手册中的sys_read调用(通过“man2read”)。它没

linux - 如何使 Debian 软件包安装依赖项?

我想制作一个简单的Debian包来安装一个依赖于Qt4库的简单工具。在控制文件中,我已经定义它依赖于Qt4库,但是,当我测试包时,它说无法满足依赖性。问题:我怎样才能使Debian触发器也易于安装依赖项?找不到该文档,但我知道apt-get可以做到这一点。 最佳答案 如果您想避免创建本地APT存储库,您可以:dpkg-imypackage.debapt-getinstall--fix-missing如果你确实想创建一个本地存储库,你可以使用reprepro为此。 关于linux-如何使D

linux - debian 新手并尝试使 Java 7 成为默认使用的 java 版本

2个问题。在我的新Debian本地机器上安装OracleJava7后,我打开一个终端并执行以下命令:java版本当我这样做时,它指出:Java版本“1.6.0_26”Java(TM)SE运行时环境(build1.6.0_26-b03)JavaHotSpot(TM)客户端VM(build20.1-b02,混合模式,共享)我把Java7JDK和Java7JRE分别安装在以下目录:/usr/lib/jvm/jdk1.7.0/usr/lib/jvm/jre1.7.0有没有办法同时删除java-6-sun和java-6-sun-1.6.0.26文件夹,还是将它们留在那儿会不会有伤害?如能就这2个