Unix & Linux

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

3
如何在内核3.7.10或更高版本上禁用USB自动挂起?
我已将HTPC从内核3.7.10更新到3.10.7,看来CONFIG_USB_SUSPEND现在已从内核选项中删除,并包含在PM中。 我面临的主要问题是我有一个外部HDD,并且在挂起和唤醒HTPC时,系统无法使用它。HDD唤醒(您可以听到它再次旋转),但是当您尝试访问安装点时,出现以下错误: ZOTAC ~ # ls /media ls: reading directory /media: Input/output error 在dmesg上: [ 253.278260] EXT4-fs warning (device sdb1): __ext4_read_dirblock:908: error reading directory block (ino 2, block 0) 在以前的内核中,设置CONFIG_USB_SUSPEND = N可以解决该问题,因为HDD可以自行处理其休眠方式,并且挂载点始终是可访问的。当HDD处于睡眠状态并且HTPC需要HDD挂载点上的东西时,HDD本身会唤醒并且可以正常运行。 现在,我尝试了以下操作,但均未成功: 手动将/ sys / bus / usb / devices / usb * / power / control更改为“ on”,而不是“ auto”。 …

2
/ proc / sys / net / ipv [46] / conf /中的“ all”,“ default”和“ eth *”之间有什么区别?
在的sysctl,所述/proc/sys/net/ipv[46]/conf/键具有以下子项:all,default,和每个网络接口的密钥。例如,在具有单个网络接口eth0的计算机上,它将看起来像这样: iserv ~ # ll /proc/sys/net/ipv[46]/conf/ /proc/sys/net/ipv4/conf/: insgesamt 0 dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/ dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/ dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/ dr-xr-xr-x 0 root root 0 12. Sep 23:30 lo/ /proc/sys/net/ipv6/conf/: insgesamt 0 dr-xr-xr-x 0 …
37 linux  proc  ipv6  sysctl 

4
更改符号链接的权限
我具有以下权限的符号链接: lrwxrwxrwx 1 myuser myuser 38 Aug 18 00:36 npm -> ../lib/node_modules/npm/bin/npm-cli.js* 该符号链接位于.tar.gz档案中。现在,当我使用maven解压缩tar.gz归档文件时,符号链接不再有效。因此,我正在尝试重建符号链接。首先,我使用ln创建符号链接,但是如何设置与原始符号链接相同的权限?
37 symlink  chmod 


4
解压缩文件内容,但不创建存档文件夹
我有一个myarchive.zip文件,其中包含许多目录,文件等。比方说,这个myarchive.zip文件位于一个名为“ b”的目录中。好吧,当我使用“ unzip myarchive.zip”命令时,系统默认会创建一个名为“ myarchive”的目录,其中包含压缩文件的内容。我不希望系统创建此“ myarchive”目录-我只希望将内容提取到目录“ b”。这可能吗? 我现在所做的只是简单地发出“ cp”命令,将文件从新创建的目录(在本例中为“ myarchive”复制到“ b”)复制到我想要的位置。
37 cp  zip 

5
重新连接时,为什么必须在tmux中重新设置环境变量?
我主要在Mac上工作,并将ssh / tmux附加到Linux机器上以完成工作。我在Linux机器上运行ssh-agent。我有 set -g update-environment "SSH_AUTH_SOCK SSH_ASKPASS WINDOWID SSH_CONNECTION XAUTHORITY" 在我的.tmux.conf。然而,每当我重新参加本次会议时,我都必须跑步 tmux setenv SSH_AUTH_SOCK $SSH_AUTH_SOCK 为了$SSH_AUTH_SOCK正确设置新的tmux窗口。我希望不必这样做。有任何想法吗? 更新资料 我想我的解释不太好。这是我的shell函数,用于在远程计算机上打开shell: sshh () { tmux -u neww -n ${host} "ssh -Xt ${host} $*" } 当TMUX运行此ssh命令,$SSH_AUTH_SOCK是没有设置,即使是在我的本地环境设置。如果使用setenv上面的命令将其放在tmux的环境中,则一切正常。我的问题是,为什么我必须完全运行setenv命令? 更新2 更多信息: 当我附加到现有会话时,$SSH_AUTH_SOCK未在tmux环境(或全局环境)中设置。 % tmux showenv | grep -i auth_sock -SSH_AUTH_SOCK 如果我手动设置它,则工作正常: % tmux setenv SSH_AUTH_SOCK $SSH_AUTH_SOCK …


3
无模vs模式编辑器
我刚刚开始学习Linux,而我以前的编程经验一直都是使用Windows平台。我遇到了Vim编辑器,读到它是模式编辑器,与记事本不同,后者被称为无模式编辑器。 您能否解释一下无模式编辑器和模式编辑器的一般区别是什么?

4
查看Linux库/可执行版本信息
在Windows中,EXE和DLL具有版本信息,至少包括以下字段: 文件版本 产品版本 内部名称 产品名称 版权 在Linux库/可执行文件中: 存在哪些字段? 如何查看此类信息? 要阅读哪些工具/库?

2
在zsh中完成avfs伪目录
在某些情况下,如何调整zsh的完成系统以完成“伪造”文件? 更准确地说,AVFS文件系统通过在每个档案旁边创建一个“伪目录”,将档案作为目录公开。默认情况下,它将在其安装点下复制整个目录层次结构~/.avfs。此外,在之下~/.avfs,对于每个档案文件(例如)/tmp/foo.zip,除了档案文件本身之外~/.avfs/tmp/foo.zip,还有一个名为的目录~/.avfs/tmp/foo.zip#,用于显示档案的内容。但是,此额外目录未出现在的列表中~/.avfs/tmp:仅在明确请求时存在。(这类似于某些自动安装器的操作。) mountavfs cd ~/.avfs/tmp/foo.zip\# 当我输入上述命令时,由于没有这样的目录,因此不会foo.zip#在下方显示为~/.avfs/tmp/补全。我怎样才能告诉zsh,只要有一个完整路径$arc匹配~/.avfs/**/*.(tgz|zip)¹ 的文件,它就应该假装存在一个名为的目录${arc}#? (请注意,我希望完成操作可用于对_files或的每次调用_dirs,而不仅是cd命令的_files调用。如果可能的话,我希望不必重复该函数的代码。) ¹ 以及所有其他扩展名

4
如何找到流氓别名声明?
我正在尝试查找alias已声明特定位置的位置。我搜索了我知道的所有常见地方以查找别名: 〜/ .bashrc 〜/ .bash_profile / etc / bashrc / etc / profile 没有运气。 我知道这是alias因为当我这样做时which COMMAND,我得到: alias COMMAND='/path/to/command' /path/to/command 有没有一种方法可以找到声明alias唯一知道alias名称的文件?
37 bash  alias  bashrc 


4
通过多个主机的SSH
现在,我要在办公室进入我的机器: me@home:~$ ssh unix.university.com me@unix:~$ ssh unix.department.univeristy.com me@unix.department:~$ ssh office-machine.department.university.com me@office-machine:~$ echo "This is very annoying" 有没有简单的方法可以自动执行此过程,也许我可以在最后使用一个命令?

1
在shell脚本中避免“ BASH-isms”
是否存在类似于Perl :: Critic的工具,该工具将检查您的Shell脚本并指出缺陷,可移植性问题,使用无故障的非标准程序,使用折旧的程序等? 我意识到这set -o posix将禁用非POSIX用法,但这不会告诉我我想知道的事情,例如zsh索引从1开始的shell数组,从0开始的bash索引,以及ash根本不支持数组。
37 bash  shell  zsh  ash 

12
如何快速存储和访问常用命令?
我有很多日常需要执行的命令,通常只有很小的变化。 现在,我将它们全部存储起来.bash_history并使用CTRL- R访问它们,但是我想知道是否有更好的方法。我在寻找什么: 轻松添加新命令 易于搜索并重新执行所需的命令 避免建议中不必要的命令 不幸的是,bash_history在第三个需求上并不是那么强大:如果我做了几个cdand ls,它将迅速填充历史文件。我最近了解到HIST_SIZE,您可以配置历史记录以避免重复或某些命令,但是在配置所有这些之前,我想确保这是最好的方法。

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.