Unix & Linux

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

3
GNU屏幕死机,试图重新连接
我有几个长时间运行的GNU屏幕会话。我将它们放在正在运行的盒子上,screen -d -r foo如果它们已连接到其他任何地方,则将它们分离,然后将它们附加到当前窗口中。 99%的时间可以正常工作,但有时我会得到: $ screen -d -r foo [2430.foo detached.] ...什么也没有发生;我根本无法回到外壳。在另一个窗口中尝试做同样的事情,我唯一能做的就是销毁该屏幕会话(丢失正在其中运行的所有程序)并重新创建它 为什么会这样?发生这种情况时如何避免或成功重新连接? 编辑:我的.screenrc: startup_message off defwritelock off bind q quit caption always '%{gk} (%n) %t %{y}%d %M %Y :: %c:%s %{b}%W%{d}' screen -t ZSH autodetach on shelltitle ZSH defutf8 on 编辑:strace尝试附加时日志的结尾: readlink("/proc/self/fd/0", "/dev/pts/14", 4095) = 11 stat64("/dev/pts/14", {st_mode=S_IFCHR|0620, …
16 ssh  gnu-screen 


8
Puppy linux安全模型什么时候有意义?
我刚刚花了几个小时来玩Puppy linux,它具有一些非常好的功能,但是有关其安全性方法(至少是默认设置)的某些问题让我感到担忧: 似乎使用它的预期方式是以root身份运行所有内容 root没有密码(默认情况下,我当然可以添加一个) 据我所知,没有自动(甚至是简单的非自动)方式来获取软件包的安全更新。(我可能错过了一些东西。) 我一直深信拥有一个复杂的密码,不要以管理员/ root用户身份浏览互联网,以及为系统软件(以及浏览器和插件)提供最新漏洞补丁的最新信息的重要性。但是,尽管在我看来,灾难看起来像是个灾难的秘诀(上面已概述),但Puppy仍然很受欢迎,具有很多附带利益,因此,在某些情况下,显然缺乏安全性绝对不是问题。这些是什么?

11
如何将一个文本文件拆分为多个文本文件?
我有一个名为entry.txt以下内容的文本文件: [ entry1 ] 1239 1240 1242 1391 1392 1394 1486 1487 1489 1600 1601 1603 1657 1658 1660 2075 2076 2078 2322 2323 2325 2740 2741 2743 3082 3083 3085 3291 3292 3294 3481 3482 3484 3633 3634 3636 3690 3691 3693 3766 3767 3769 4526 4527 4529 4583 …

3
访问Unix剪贴板
我们有一台Linux服务器,该服务器上有多个用户(因此有多个帐户)。因此,从逻辑上讲,将为不同的用户提供不同的剪贴板。 我的问题是:就像在Windows中我们可以有一个剪贴板查看器一样,如何在Unix上看到剪贴板的内容?
16 clipboard 

1
使用rsync输出的“对话框”制作进度条
我正在寻找一种过滤/重定向rsync输出的方式,可以将其输入到“ dialog --gauge”命令中,以便在文件同步过程中获得一个漂亮的进度条。目前,我仅在提示符下直接对其进行了测试,但我计划在(bash)shell脚本中进行此操作。 我环顾了互联网,发现了点点滴滴,但我仍然缺少使它正常工作的东西 (免责声明:这可能是完全错误的方法,并且是重定向/管道怪诞) 我目前汇总的内容: rsync -avz --progress -e "ssh" user@server:/home/user/data/ /home/user/data | awk -f /home/user/rsync.awk | sed 's/\([0-9]*\).*/\1/' | dialog --title "My Gauge" --gauge "Hi, this is a gauge widget" 20 70 首先,我有一个带有--progress选项的实际rsync命令。rsync的输出通过管道传递到awk中,并使用以下awk过滤器: { if (index($0, "to-check=") > 0) { split($0, pieces, "to-check=") split(pieces[2], term, ")"); split(term[1], division, …
16 linux  bash  scripting  awk  rsync 

4
文件(或目录)名称中的分隔符的良好样式/做法
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我不确定这是否是在此处发布的“正确”问题。我可能要问的是有关“意见”的更多信息,而不是实际的分类答案(那些有用或无效的答案,仅此而已)。 我想知道什么名称分隔符将同时对Linux最友好(或更具体地说,对Bash友好)和对人类友好。 假设我要创建一个目录,其中包含与Foo Bar先生相关的内容(Foo是名字,Bar是姓氏) 使用名称“ Foo-Bar/”非常方便。-是一个“常规”字符,不需要转义,它清楚地表明了这一点,Foo并且Bar是两个独立的东西……很好。 现在,“ Foo.Bar”有点棘手。可能有人认为这Foo.Bar实际上是一个文件(乍一看,特别是如果您没有启用着色功能的终端),其中“ Foo”是文件名,“ Bar”是扩展名。 我也可以使用“ Foo Bar”,但是当我要访问目录时,我需要转义空格,如果要列出父目录的内容(Foo Bar位于该位置)并将所述列表放在bash数组中,空白会引起麻烦(很多)。不是很好。 括号()也引起很多问题。还需要将它们转义,然后给命令造成麻烦,例如scp...不好。 所以...问题(最后)是:如果您一眼就想使文件名清晰且有意义,并且需要使用分隔符,那么您将使用什么呢?
16 linux  bash  filenames 

2
允许用户使用不带密码的sudo
在沙盒VM环境中,我安装了已安装防火墙的Ubuntu Linux,无法从本地系统外部进行访问。因此,在该VM上,我想为管理用户(由我设置)提供使用sudo运行任何内容的能力,并且不需要密码。 虽然我知道这是不安全的,但是此VM并非一直处于运行状态,并且需要我的个人密码才能运行。因此,即使这不是“安全的”,有没有办法获得所需的功能?
16 sudo 


4
通过脚本查找已卸载分区的文件系统
我正在使用AIF(Arch安装框架)编写自定义自动安装,并且需要在给定分区的分区上找到文件系统。 到目前为止,我有这个: grok_partitions () { local partitions= for label in `ls /dev/disk/by-label | grep "Arch"` do if [ $label == "Arch" ] then mount_point="/" else IFS="-" read base mount <<< "${label}" mount_point="/${mount}" fi local partition=$(readlink -f /dev/disk/by-label/${label}) local part_no=$(echo ${partition} | grep -Po '\d+') local fs=$(parted -mls | grep "^${part_no}" …

3
是否可以限制一个进程占用多少CPU能力?
我想知道,有没有办法告诉一个过程它需要多少处理器能力? 问题是我正在使用Arista(视频转换器)转换视频,而风扇疯狂运行使我烦恼,当我查看任务监视器时,它占用了92%的CPU。 我能(以某种方式)告诉它只占20%吗? 谢谢
16 cpu 

2
chmod:参数+ a是什么意思?
我正在学习一个教程,它告诉我要运行 sudo chmod +a "SOME_PARAMS" some/dir 我很惊讶地看到失败告诉了我 chmod: invalid mode: `+a' 所以我想知道:+a模式是什么意思?我如何将其转换为Ubuntu可以理解的内容?我也想知道为什么它不被普遍支持。
16 ubuntu  osx  chmod  bsd 

2
默认情况下,grep -r在哪里搜索?
我发现如果我使用grep搜索时没有指定路径,就像grep -r 'mytext'它需要无限长的时间。同时,如果我使用指定的路径搜索,grep -r 'mytext' .它会立即找到我需要的东西。所以,我很好奇,第一种形式是grep在哪个目录中搜索? UDATE:grep版本:grep(GNU grep)2.10
16 grep  recursive 

1
在哪里可以了解有关如何使用GRUB`ntldr`命令(模块)的更多信息?
我最近偶然发现了GRUB ntldr模块。 显然,它可以用来做的事情之一是chainloader引导NT> = 6.0版本的Windows,如下面的示例所示。(如果Windows分区的卷启动记录被损坏,非常方便。) menuentry "Windows 7 (bootmgr on /dev/sda1)" --class windows --class os { insmod part_msdos insmod ntfs insmod ntldr set root='(hd0,msdos1)' search --no-floppy --fs-uuid --set=root 1EA0019AA0017A13 ntldr ($root)/bootmgr } 在哪里可以了解有关如何使用该引导指令的更多信息?我没有看到它上市的时候我在看HTML版本中的GNU GRUB手册。 回复ckhan的答案 非常感谢你!我已经决定要尝试深入研究源代码以了解有关GRUB ntldr命令/模块的更多信息。但是您做的工作比我做的要好得多。 我从来没有想过要查看电子邮件归档文件,以查看编写代码的人可能进行过哪些设计讨论。听起来这种方法将来可能会很有帮助。感谢您提及。 我对GRUB ntldr支持的想法 虽然我不确定该区别意味着什么,但ntldr它是模块而不是命令。或者,如果您愿意,也可以动态加载命令。 跟随您的源代码链接,并查看第152(GRUB_MOD_INIT)和159(GRUB_MOD_FINI)行,您可以看到要加载和...的代码。 GRUB显然实现了许多功能,您可能会认为它们是“ 命令 ”作为模块。我知道用法的唯一区别是,在使用模块之前,必须确保已使用命令加载了该模块insmod ntldr。 另外:我一直想知道GRUB为什么不支持reboot。原来该命令存在,但是它是一个模块。如果reboot返回unknown command,则insmod reboot允许GRUB“记住” reboot命令。 …
16 windows  grub2 

4
创建任意大的“伪”文件
我想创建一个类似于/dev/null或的特殊文件/dev/random,该文件实际上并不存在,但是您可以从中读取所有内容,只是我可以为文件的外观大小设置上限。 换句话说,我想创建一个特殊的文件(假设将上限设置为500GB),当我“捕获”文件时,它将输出文件的所有500GB,然后停止。它需要具有与实际500GB文件相同的功能,但又不占用空间。该文件的内容无关紧要,可能全都\0像/dev/null,或者只是一个小字符串一遍又一遍地发送,等等。 这是可行的吗?我唯一能找到的接近远程的地方是手册页mknod,但这些手册并没有太大帮助。

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.