Unix & Linux

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


5
查找符号链接的原始文件
因此,假设我在主目录中有一个文件链接到另一个分区上的另一个文件的符号链接。我如何找到链接文件的目标位置?通过这种方式,我的意思是,让我们说我file2在/home/user/; 但这是到另一个的符号链接file1。在file1无需手动浏览每个分区/目录来查找文件的情况下如何查找?
20 symlink 

3
进程的实际内存使用量
以下是服务器上mysql和apache上的内存使用情况。根据输出的pmap说,mysql正在使用大约379M,apache正在使用277M。 [root@server ~]# pmap 10436 | grep total total 379564K [root@server ~]# pmap 10515 | grep total total 277588K 将其与的输出进行比较top,我看到值几乎匹配。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10515 apache 20 0 271m 32m 3132 S 0.0 6.6 0:00.73 /usr/sbin/httpd 10436 mysql 20 0 370m 21m …

1
yum更新与yum安装之间的区别
使用该rpm命令时,我注意到,如果我安装some-package-1.0并执行另一个命令,则在执行以下rpm -ivh some-package-1.1操作时将列出两个软件包rpm -qa | grep some-package: some-package-1.0 some-package-1.1 但是,如果我不通过安装1.1进行升级,则可以通过安装rpm -Uvh some-package-1.1单个软件包(1.1)获得所需的结果rpm -qa | grep some-package。 现在,是否对yum install和适用相同的行为yum update? 我问是因为使用rpm -U(upgrade)命令并不需要存在一个软件包来进行升级/安装,但是yum update(如果我没有记错的话)必须已经存在一个软件包。 我特别想知道指定带有其版本的软件包的结果,例如some-package-1.0。总而言之,我想知道的是是否有两个特定的版本,例如some-package-1.0和some-package-1.1: 会yum install在安装1.0之后在1.1上执行,列出2个软件包吗? 运行yum update some-package-1.1成功会取代some-package-1.0吗?
20 yum  rpm 


5
当前目录的安装信息
我可以df .获取当前目录所在的挂载上的一些信息,并且可以从中获取所需的所有信息mount,但是可以获取很多信息(有关其他挂载的信息)。我可以将其保留下来,但想知道是否有更好的方法。 是否有一些命令mountinfo可以mountinfo .提供我想要的信息(例如df .,但提供了所需的信息mount。) 我正在使用Debian Gnu + Linux。

2
tmux的有效密钥是什么?
我试图学习如何使用bind-key [-cnr] [-t key-table] key command [arguments]更好的方法,但是在弄清楚什么是“有效键 ”用于bind-key命令时遇到了一些麻烦。 我也尝试过man tmux和Google一起使用,但是找不到任何有用的东西。 如何找出有效键的语法? 是否有帮助命令或man页面? 也许我不知道此有效密钥的技术术语,是否有这些密钥的术语,以便我可以进行更好的Google搜索? 例如,我试图找出以下命令重新映射的含义: bind-key -n M-S-Left resize-pane -L 2 bind-key -n M-S-Right resize-pane -R 2 bind-key -n M-S-Up resize-pane -U 2 bind-key -n M-S-Down resize-pane -D 4 该-n很容易的找到man页(无需前缀)。但是我不知道M-S-Left键的含义。 我猜想它的映射偏移和向左箭头以及M该resize-pane -L 2命令的任何含义。 我如何弄清楚是什么M意思? 如果我想要控制+我想要的任何按键怎么办。控制是= C吗? 我怎么能解决这个问题而又不尝试在键盘上随机按键直到有问题为止? 另外,如何确认并确定我是否未将其映射到已使用的密钥集? 是否存在“显示所有别名”之类的东西? 除了这个问题,这些有效密钥是否与的相同vim? 事实是,vim对于它自己的语言,似乎有不同的脚本,因为有时需要这样的东西。
20 tmux  key-mapping 

6
如何从执行的命令中捕获错误消息?
我的任务是创建一个自动的服务器强化脚本,他们需要做的一件事是报告所执行的每个命令的所有输出。我想将错误消息存储在字符串中,并将其附加到文本文件中。 假设我运行了以下命令: /sbin/modprobe -n -v hfsplus 在我的机器上运行此命令的输出为: FATAL: Module hfsplus not found 如何将错误消息存储在字符串中?任何帮助将不胜感激。谢谢!
20 bash  scripting  string 

3
如何重置/重新启动PCIe设备的电源?
我有一个PCIe设备,仅在计算机完全关闭电源然后再打开时才能正常工作。发出简单命令reboot或reboot -p命令似乎都无法重新启动PCIe卡的电源,这会导致它在重新引导后无法正常工作。 有没有办法从操作系统重新启动PCIe插槽中的设备电源?我可以在找到它/sys/bus/pci/devices/0000*/,但是我不知道如何正确重置板子。切换能力似乎是唯一的方法。 除非这样做,我是否可以在某个地方更改设置,这将导致reboot命令重新启动整个电源? 顺便说一下,我正在运行Ubuntu 12.10。

3
什么是./和../目录?
这个问题很简单,但是我不确定在哪里查找,Google不会对句号和斜杠做出响应。 我只是想计算当前目录中的文件和目录数(不包括子文件夹/文件),并且试图区分它们ls -1 | wc -l,ls | wc -l因为它们看起来相同。我正在查看的一个站点说:“请记住,这也在计算./和../目录。” 关于带有的目录ls -1,我不确定这是否意味着它包含之前的目录或某些目录(我不想要),但是从测试来看似乎没有做到这一点。 有人可以确认其中哪一个最适合仅计算当前目录(而非子目录)中的文件和目录数量,以及./和../目录的含义吗?



6
将分区号从sda1更改为sda2
我有一个带有两个分区的磁盘:sda1和sda2。我想将sda1的数量更改为sda2,将sda2的数量更改为sda1。 有可能,但是我不记得该程序了。即我的第一个分区将是sda2,第二个分区是sda1,因此我需要指定手动顺序,而不是像fdisk-> x-> f中的自动顺序。 我如何更改订单?手册或教程的链接也很有用。 谢谢。 原因:我有一个需要从sda1读取数据但该数据在sda2中的应用程序。更改分区表是解决此问题的更快方法。该系统不是很关键,但我不想暂停太多时间。 更新:OpenBSD的fdisk版本包含该功能。
20 linux  partition  fdisk 

3
将shell脚本作为守护程序运行的“正确”方法
我正在编写一个shell脚本,希望在启动时作为守护程序运行,而无需使用daemontools或daemonize之类的外部工具。 Linux守护程序编写方法 根据Linux Daemon Writing HOWTO的规定,适当的守护程序具有以下特征: 来自父进程的分叉 关闭所有文件描述符(即stdin,stdout,stderr) 打开写入日志(如果已配置) 将工作目录更改为永久目录(通常为/) 重置文件模式掩码(umask) 创建一个唯一的会话ID(SID) 守护简介 该守护进程介绍更进一步,指出一个典型的守护程序也: 从其控制终端取消关联(如果有),并忽略所有终端信号 从其流程组中脱离 处理 SIGCLD 我将如何做到这一切的sh,dash或bash只用普通的Linux工具脚本? 尽管Debian是我们的主要重点,但该脚本应该能够在尽可能多的发行版上运行而无需其他软件。 注意:我知道在StackExchange网络上有很多建议使用nohup或的答案setsid,但是这些方法都不能满足上述所有要求。 编辑:该守护进程(7)用户手册还给出了一些三分球,虽然似乎有老式的之间的一些差异SysV守护程序和更新systemd的。由于与各种发行版的兼容性很重要,因此请确保答案清楚说明所有差异。

3
Bash添加尾随空格以证明字符串正确
我当前的代码如下:x=${y:0:40},它将字符串的长度限制为40个字符。如果字符串少于40个字符,是否可以在结尾处填充空格? 所以如果我的 y="very short text" 我希望自己是: y =“非常短的文字(+25个结尾空格) ”
20 bash 

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.