Articles of sed

使用SEDencryption磁盘并将密钥存储在TPM中?

我最近在购买服务器,他们都有支持TCG Opal全盘encryption(又名SED)的磁盘。 我想要做的是: 将静止encryption的数据存储在磁盘(NVMe和SAS)上。 在服务器启动时不需要input密码/密码。 将encryption密钥存储在服务器的TPM 2.0模块中。 为了简化,目标是将数据“locking”到服务器,确保如果磁盘被移除并插入另一台机器,则数据不可访问。 我见过sedutil,但还没有玩它,因为它看起来需要在每次启动时input密码。 我有数百台服务器,我想启用它,所以不得不在重新启动时input密码(是否是每个磁盘?)。 TPM似乎是存储这种东西的一个自然的地方,所以我想知道是否有人做了这样的事情。 我能find的唯一参考就是这张美光的白皮书 。 这些服务器都运行Ubuntu 16.04(Xenial)。 如果有问题,每个服务器有多个磁盘。

注释符合某种模式的所有行

我需要为当前目录中的每个文件和任何子目录(recursion地)注释掉包含“dlclose”的所有行。 鉴于我能从各种指南中find的东西,这是我迄今为止最好的猜测。 grep -lIR "dlclose" . | grep -v ".svn" | sed -i 's/.*dlclose.*/\/\/&/g' 两个greps成功find了我想要更改的所有文件,但是sed声明了一个unterminated s command 。

在UNIX中从文件获取不同的值

我有一个文件,我想parsing从中提取某些值。 我不知道我应该使用什么命令和语法(也许sed ?)。 下面是我可能期望在文件中find的2个示例行。 我需要的是name的值(例如,在本例中分别为1234和xyz )以及jndiName的值。 factories xmi:type="resources.url:URL" xmi:id="" name="1234" jndiName="xyz_aBC" factories xmi:type="resources.url:URL" xmi:id="URL_1323780357724" name="xyz" jndiName="abc" 如果我使用sed ,我将如何在这种情况下应用它?

Wrangling sedfind并重新格式化logindate(或者,如何杀死闲置的mosh-server进程)

我有一个旧的方法来杀死闲置的mosh-server进程,这在我的新VPS上不起作用。 这是旧的方法,我在root的crontab中运行,以清理已经闲置10天以上的mosh进程: for tty in `w -sf | grep -P '\d\ddays mosh-server' | cut -c 10-15`; do kill -9 `ps -o pid= -t $tty`; done 问题是,在新的VPS上,这些进程没有TTY,所以我不能通过TTY匹配并以这种方式杀死mosh。 这是我到目前为止(顺便说一下,新的VPS在Debian上运行内核3.2,旧版本是以前的Debian版本)。 for loginday in `w | grep -P '\d\ddays.* mosh-server' | cut -c 34-40 | sed 's/^\([0-9]*\)\([a-zA-Z]*\).*$/\2 \1/'`; do echo $loginday; done 我正在尝试从'w'获取logindate,并将其与'ps'中的信息相关联: ps -C mosh-server -o bsdstart 因此,我可以关联login当天启动的任何闲置mosh-server会话(可能是野性中的99.9%),并使用'ps'来获取pid。 […]

iptables arp比较和执行

例: iptables的 :internet – [0:0] -A internet -m mac –mac-source 48:5D:60:FC:29:B0 -j RETURN 承诺 [root @ localhost:〜] $ arp 地址HWtype HWaddress标志掩码Iface 10.2.0.1醚48:5D:60:FC:29:B 0 C br0 如果ARP列表中的MAC不存在,我想删除iptable规则(-D internet -m mac –mac-source 48:5D:60:FC:29:B0 -j RETURN)。

sed来replace/合并/ etc / group中的行

我有1个命令的用户列表 – getent group ldap-group|cut -c 32-700 这给了我一个表格中的用户列表 user1,user2,user3… 我想把它插入到/ etc / group下的sshd sshd:x:74:adminuser,root 我想保留所有的文本,直到根。 我已经试过这个sed命令,但它并没有真正修改文件。 sudo sed -i "s/^(sshd:x:\\d+:root,).*/\\$1(getent group ldap-group|cut -c 32-700)/" /etc/group 任何人都可以帮助我的sed语法?

如何从awk结果中replacestring?

我有一个包含多个replaceme的JSON文件。 我只想根据在上面几行find的特定string来replace一个事件。 例如, […] "title" : { "Propertie1" : "xxxx", "Propertie2: "replaceme" } "title2" : { "Propertie1" : "xxxx", "Propertie2: "replaceme" } "title" : { "Propertie1" : "xxxx", "Propertie2: "replaceme" } "title2" : { "Propertie1" : "xxxx", "Propertie2: "replaceme" } […] 在这个例子中,我只想replaceme title2 。 用awk 'title2/,/replaceme/' myFile我可以find我的JSON文件的一部分。 我是否也需要执行一个sed命令,但我不知道如何,或者甚至可能这样?

如何使用sed来更改匹配行中的最后一个字符

如何使用sed更改匹配行中的最后一个字符? 例如:/ etc / network / interfaces auto eth0 iface eth0 inet static address 150.0.3.50 netmask 255.255.255.0 network 150.0.3.0 gateway 150.0.3.6 auto eth….. 我怎样才能改变网关的主机八位字节? 我有很多机器来做这件事,每个人都在不同的networking,但网关的八位字节总是相同的。

多行成单行输出到logging器

我有一个日志文件,其中的数据条目如下每个条目以时间开始: time: 20170509123420 dn: uid=abc,ou=People,dc=test,dc=example,dc=com changetype: modify replace: passwordAllowChangeTime replace: passwordExpirationTime replace: passwordRetryCount replace: pwdpolicysubentry replace: modifiersname modifiersname: uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoot replace: modifytimestamp modifytimestamp: 20170509113420Z time: 20170509123621 dn: cn=nsPwPolicyContainer,dc=test,dc=example,dc=com changetype: add objectClass: nsContainer objectClass: top cn: nsPwPolicyContainer creatorsName: uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoot modifiersName: uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoo 现在我想打印为单行,只有时间之间的条目: 例如,时间之后,我想把所有logging打印成单行,所以在我的情况下,它应该打印 time: 20170509123420 dn: uid=abc,ou=People,dc=test,dc=example,dc=com changetype: modify replace: passwordAllowChangeTime – replace: passwordExpirationTime – replace: passwordRetryCount […]

Openssl s_client:提取最后一个证书

通过使用以下命令,我可以从远程网站输出所有authentication链: openssl s_client -connect www.google.fr:443 -servername www.google.fr -showcerts 2>/dev/null | sed –quiet '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' 但是现在我想能够提取链中最后一个证书,是否有一个简单的方法来做到这一点?