Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

4
如何在dm-crypt + LUKS容器上设置标签?
我刚收到一个新的USB闪存驱动器,并在其上设置了2个加密分区。我通过使用了dm-crypt(LUKS模式)cryptsetup。通过附加的非加密分区,驱动器具有以下结构: /dev/sdb1加密后,隐藏标记为“分区1”的ext4文件系统。 /dev/sdb2加密,隐藏另一个名为“分区2”的ext4文件系统。 /dev/sdb3,清晰可见的ext4文件系统,标记为“分区3”。 因为标签是贴在ext4文件系统上的,所以只要分区未被解密,前两个标签就完全不可见。这意味着,与此同时,LUKS容器没有标签。使用GNOME(自动挂载)时,这尤其令人讨厌,在这种情况下,分区显示为“ x GB加密 ”和“ y GB加密 ”,直到我决定将其解锁。 这并不是一个真正的阻塞问题,但是很烦人,因为我真的很喜欢我的标签,并且希望即使在我的分区仍被加密的情况下也能看到它们。 因此,有没有办法将标签附加到dm-crypt + LUKS容器,就像我们将标签附加到ext4文件系统一样?dm-crypt + LUKS标头是否为此留有空间,如果可以的话,如何设置标签? 请注意,我不想在解密之前公开ext4标签,这很愚蠢。我想在容器中添加其他标签,这些标签可能在ext4标签被隐藏时出现。


1
CPU警告-Abrt-watch-log
我正在3.47GHz的Intel®Xeon®CPU X5690上运行Red Hat Enterprise Linux Server 7.1(Maipo) 我不断收到此错误abrt-watch-log。 root 888 1 0 Aug03 ? 00:00:00 /usr/bin/abrt-watch-log -F BUG: WARNING: at WARNING: CPU: INFO: possible recursive locking detected ernel BUG at list_del corruption list_add corruption do_IRQ: stack overflow: ear stack overflow (cur: eneral protection fault nable to handle kernel ouble fault: …

2
发送关闭命令后,ssh会话不会终止
每当我发送关闭或重新启动Debian服务器的命令时,我的shell就会挂起并且无响应(无法键入任何命令)。 在Ubuntu中执行相同的操作会导致会话正常关闭,因此我没有一个捆绑的终端挂在那里。是否需要安装一个软件包或进行配置更改,以便在Debian上获得相同的行为?
12 debian  ssh  systemd  shutdown 

2
“ export”命令的用途是什么?
我在一个终端窗口中创建了一个环境变量,并试图在另一个终端窗口中回显它。那什么也没显示。 $TEST=hello 之后,我将其导出,然后echo在另一个终端窗口中再次尝试。结果和以前一样。 export TEST 但是,如果我在登录时执行相同的代码(将代码附加到~/.profile文件中),则可以在任何终端窗口中使用变量。这是怎么回事 在终端中执行代码与登录时执行代码有什么区别?

1
在Linux中更改TCP RTO值
我想更改连接的TCP RTO (重传超时)值,我读过的书暗示我可以这样做,但没有揭示更改的位置和方式。 我已经看过这些/proc/sys/net/ipv4变量,但是没有一个变量与RTO相关。如果有人可以告诉我如何更改此值,我将不胜感激。

3
如何将SSL密码转换为curl格式?
在官方的ssl文档列出密码在不同的格式卷曲发生。例如,如果我希望curl使用密码TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA,则必须通过它curl --ciphers ecdhe_rsa_3des_sha。我知道其中一些映射,但不是全部映射-例如,我必须通过什么才能使其卷曲才能使用密码TLS_DHE_RSA_WITH_AES_128_GCM_SHA256? 在哪里可以找到一个文档,该文档显示ssl文档中的密码名称如何映射到curl接受的密码名称? 编辑:我最终发现我的curl由NSS(而不是OpenSSL)支持,并且该问题专门是因为没有使用NSS支持的curl的良好文档,而它需要使用与OpenSSL不同的参数来使用相同的密码。因此,我的问题仅针对NSS。

3
当进程作为特定组运行时,Linux权限如何工作?
这是我一直无法找到的大量信息,因此我们将不胜感激。 我的理解是这样。取以下文件: -rw-r----- 1 root adm 69524 May 21 17:31 debug.1 用户phil无法访问此文件: phil@server:/var/log$ head -n 1 debug.1 cat: debug.1: Permission denied 如果phil添加到adm组中,则可以: root@server:~# adduser phil adm Adding user `phil' to group `adm' ... Adding user phil to group adm Done. phil@server:/var/log$ head -n 1 debug.1 May 21 11:23:15 server kernel: …

7
测试文件描述符是否有效
我想让bash脚本在打开时将附加信息输出到大于或等于3的文件描述符(FD)。为了测试FD是否打开,我设计了以下技巧: if (printf '' 1>&3) 2>&-; then # File descriptor 3 is open else # File descriptor 3 is not open fi 这足以满足我的需求,但是我很好奇是否有一种惯用的方法来测试FD是否有效。我特别是约是否存在所述的映射感兴趣fcntl(1)系统调用到外壳命令,这将允许FD标志的检索(O_WRONLY和 O_RDWR测试的FD是否可写,和O_RDONLY和 O_RDWR测试的FD是否可读)。

2
如何撤消命令历史记录中的更改?
在UNIX系统中,您可以按上下箭头浏览先前的命令。这非常方便。 有时,我会上去查找要再次使用的命令,但是会有一些变化。如果我做了这样的更改,那么除非我签入,否则我将无法取回原始命令history。 有什么方法可以“撤消”通过键访问的历史记录中的命令更改? 我当前的解决方法是#在命令前添加a 。这样,当前命令将作为注释执行,因此没有任何反应。然后,我可以再次通过按键浏览命令。问题是我使用的命令可能在列表中距离很远,因此再次向上执行200次会有点麻烦。Control + R也不是解决方案,因为我可能不记得确切要找什么。 例 我输入了以下“ 50个命令之前”: ls -l /etc/httpd/conf/ 现在我走到那条线并将其更改为 ls -l /etc/init.d/ 但没有按Enter。现在,我想ls -l /etc/httpd/conf/再说一遍。 我的环境 $ echo $SHELL /bin/bash $ echo $TERM xterm

4
有没有一种设置权限的方法,以便进程可以使用特定的设备?
如您所见,例如,在这里,logind是systemd的一部分,可以为某些设备设置用户会话的权限。还有一个视频显示这种行为在实践中是如何工作的。简而言之,如果您开始说amarok,并且播放了一些歌曲,您将听到声音,直到切换到只有登录提示的另一个用户或TTY。这是因为活动会话变为非活动状态。 我知道您可以简单地将一个(或多个)用户添加到特定的组,在本例中为“音频”,这将“解决”此问题,但是我想知道是否还有其他解决方案。我真正想要的是为该进程设置一些权限,以便即使所有用户的会话均被锁定,它也可以一直使用声卡。 那可能吗?我之所以问是因为我经常听音乐,而且我真的不需要在大多数时间打开显示器,所以我只是锁定屏幕。但是,当我锁定屏幕时,活动会话将变为非活动状态,并且amarok停止播放。是的,屏幕应该被锁定,而不仅仅是关闭。 编辑: 我认为我使用的发行版无关紧要,因为如果板上安装了系统,那将是完全相同的问题。无论如何,我正在使用debian sid,但是诸如systemd,udev(和某些依赖项)之类的某些软件包来自实验分支,现在是219-9版本。

4
计算目录中具有名称特定字符串的文件?
我有以下文件: Codigo-0275_tdim.matches.tsv Codigo-0275_tdim.snps.tsv FloragenexTdim_haplotypes_SNp3filter17_single.tsv FloragenexTdim_haplotypes_SNp3filter17.tsv FloragenexTdim_SNP3Filter17.fas S134_tdim.alleles.tsv S134_tdim.snps.tsv S134_tdim.tags.tsv 我想计算snp名称中带有单词(区分大小写)的文件的数量。我尝试使用 grep -a 'snp' | wc -l 但后来我意识到可以grep在文件中进行搜索。扫描文件名的正确命令是什么?
12 bash 

3
如何在不使用'systemctl disable'的情况下禁用服务
我有一项服务仅在其他服务失败时才要运行([Unit] OnFailure=foo),但我不希望该服务(foo)在启动时自动启动。一个选项正在运行systemctl disable foo,但我正在寻找另一种方式。 背景:我正在创建一个OS映像,并且我不想启动计算机,运行该命令(systemctl disable foo),然后在声明最终映像之前将其关闭。
12 systemd 

4
管理cgroup是否需要root用户访问权限?
我正在尝试与两个不同操作系统(Ubuntu和CentOS)上的控制组一起工作。我想问的问题很少。 我正在尝试使用cgcreate命令创建一个控制组,并且它似乎需要在计算机上进行root访问。到目前为止,我所看到的所有示例都没有提到需要成为创建或修改控制组的root用户。 真的有必要成为root用户吗?最终目标是编写一个C ++应用程序,该应用程序使用libcgroup API创建和管理控制组以控制资源。但是C ++应用程序不会由任何root用户运行。它可以是任何普通用户。

2
以编程方式更改密码
在当前版本的Raspian中,我知道可以从命令行更改当前登录用户的密码,如下所示: sudo passwd 然后会提示用户两次输入新密码。这将产生如下输出: Changing password for pi. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 我想知道是否有可能以编程方式更改密码,例如从Shell脚本更改密码。 我正在尝试制作一个配置脚本以部署在我的Raspberry Pis上,并且我不想手动为其输入新密码。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.