Unix & Linux

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

1
如何将bash关联数组往返于文本文件?
我想记住不同脚本运行之间的关联数组。到目前为止,我得到的是给定一个包含一个键/值对的文本文件: ( [james]=bond ) 是一个脚本,用于将其加载到关联数组中,添加到该数组中,然后以可以重定向到第二个文件的方式将其回显: #!/bin/bash file=`cat $1` key=$2 value=$3 declare -A row="$file" row[$key]=$value echo "(" for server in "${!row[@]}" do echo "[$server]=${row[$server]}"; done echo ")" 然后我可以将其运行为: ./arrays.sh file1 honey rider > file2 ; mv file2 file1 给予 ( [james]=bond [honey]=rider ) 然而,这似乎很笨拙。有没有更清洁的方法可以做到这一点?
9 bash 


3
如何找到笔记本唤醒的原因?
我的笔记本电脑挂起时遇到问题,但是在我不希望笔记本电脑挂起时醒来(或者立即,或者在装在书包中的很晚之后醒来-在这里我可能要解决两个问题)。但是目前,这个问题是关于故障排除的:我可以运行一个命令来告诉我上一个resume动作的触发是什么吗?例如,是否按下了按键或电源按钮,是否为局域网唤醒信号,是否正从交流电源切换到电池等,等等。 看来在Windows上您可以键入powercfg -lastwake找到答案。因此,我正在寻找与该命令等效的Linux。 如果没有这样的命令,我需要在哪个日志文件中查找什么? (Mint 16,xfce,Lenova Thinkpad,内核3.11.0-12-通用)

3
如何将带有时间戳的命令历史连续输出到终端?
我使用一个简单的别名来启用一个或多个终端窗口中的命令“跟踪”: alias trackmi='export PROMPT_COMMAND="history -a; $PROMPT_COMMAND"' 然后,我将tail -f我的.bash_history文件放在工作区的另一个终端中,以立即获得反馈。我刚刚启用了无限的历史记录, 并export HISTTIMEFORMAT="[%F %T] "在.bashrc中更新了我的历史记录格式()。当然,该history命令会显示时间戳。但是历史文件本身的格式为: #1401234303 alias #1401234486 cat ../.bashrc 我该如何转换Unix时间并像显示命令一样将整个命令显示在一行上history,包括编号: 578 [2014-05-27 19:45:03] alias 579 [2014-05-27 19:48:06] cat ../.bashrc ...然后遵循。还是找到一种将history命令输出连续输出到终端的方法?

6
以非超级用户身份读取另一个用户拥有的文件
我正在备份服务器上的服务器。备份的每个服务器在备份服务器上都有其自己的帐户,并且文件被同步。重要的是,保持权限完整(使用rsync -p)以简化还原。 我正在尝试创建一个脚本,该脚本可以读取文件并创建一些统计信息。我不希望该脚本在root用户下运行,并且也不可能为每个备份用户运行该脚本,因为该脚本应该能够从所有用户读取所有文件。但是,这会在文件更改为例如600的情况下产生问题。我不想触摸权限,但是除root和所有者之外的其他用户无法读取它。 特定的非root用户应该能够读取目录或分区中的所有文件,而不管权限级别如何(文件的所有者应该没有办法阻止它)。有没有办法做到这一点?我正在使用ZFS卷运行FreeBSD。

1
ssh'到公共服务器时延迟获得密码提示
我在大学中使用公共IP设置了服务器(Debian 7)。当我从校园外进入系统时,在收到密码提示之前,我会得到5到10秒的奇怪延迟。这是为什么? 我跑去ssh -v得到详细的输出: debug1: Roaming not allowed by server debug1: SSH2_MSG_SERVICE_REQUEST sent debug1: SSH2_MSG_SERVICE_ACCEPT received .... delay of 5-10 seconds here debug1: Authentications that can continue: publickey,password debug1: Next authentication method: publickey debug1: Trying private key: /home/nass/.ssh/id_rsa debug1: Trying private key: /home/nass/.ssh/id_dsa debug1: Trying private key: /home/nass/.ssh/id_ecdsa debug1: Next …
9 ssh  dns  firewall  delay 

1
在存储池之间迁移qcow2映像
我有2个存储池。 host_images(目录存储池) remote_images(nfs存储池) 如何使用libvirt API将qcow映像从remote_images复制到host_images? 我曾尝试使用明显的vol-clone,但显然它不适用于所有存储池 我试过使用vol-download,但是这花了很长的时间(500MB大约需要10分钟以上) 我在设计这个错误吗?我是否应该尝试使用libvirt来控制自动化的这些方面? 我想在自动化的所有方面都使用libvirt,这样我的工具利用率就可以保持一致。但是,如果工具不起作用,我将无法继续使用libvirt。 我也想知道vol-clone是否不起作用,KVM如何执行向另一台主机的迁移?如果不是libvirt,它会使用哪些工具进行迁移?

1
在命令行中将SVG绘图裁剪为画布大小
我有PlantUML制作的SVG图像,该图像的某些部分在画布之外。这使使用此类图像变得困难,我需要将绘图裁剪为画布大小。无论如何我用脚本生成UML图时,在该处执行裁剪也将非常有效。 到目前为止,我已经尝试了两件事:a)调整画布大小以使用Inkscape进行绘制 inkscape --verb=FitCanvasToDrawing --verb=FileSave --verb=FileClose *.svg 这可以正常工作,但我需要将绘图裁剪为画布大小,并且此操作似乎不可用。 b)使用rsvg-convert调整大小 rsvg-convert image.svg -w 1870 -h 1195 -f svg -o image.svg 这确实可以裁剪到所需的大小,但是图像大小增加了约10倍,因为现在在SVG中嵌入了一些二进制图像。这对我来说是不可接受的。


5
使用ALSA循环设备从基于Web的音频播放器录制音频
我正在尝试以最佳质量保存来自Verizon Fios手机的语音邮件消息。语音邮件消息可在线获得,但仅用于播放(基于Java的播放器),无法保存。正式地,没有支持的方式将原始数字语音消息保存为来自Fios Digital Voice服务的文件(没有付费服务,没有任何东西,没有任何原因)。 我唯一的想法是在通往声卡的过程中记录来自播放器的数字数据。我尝试使用循环设备进行Linux ALSA配置。 # cat /etc/asound.conf # default device pcm.!default { type plug slave.pcm "loop" } # output device pcm.loopout { type dmix ipc_key 328211 slave.pcm "hw:Loopback,0,0" } # input device pcm.loopin { type dsnoop ipc_key 686592 slave.pcm "hw:Loopback,1,0" } # duplex plug device pcm.loop { type …
9 audio  alsa  recording 

3
终端,提示更改为“ -Bash-4.2”,颜色丢失
通常我的终端提示是 username place$ 现在只显示 bash-4.2$ 并且所有的颜色设置都丢失了(在终端配置文件中,我使用相同的配色方案,但是只是不显示颜色) 我不知道会发生什么(我也不知道如何搜索)。 它什么都没有改变,我正在使用Eclipse和Maven,打开了一个新终端,并且新终端没有颜色。 注意:我没有〜/ .bashrc文件,但是我有〜/ .bash_profile。

2
识别正在使用我刚替换的库的旧版本的正在运行的程序
在安装更新以解决CVE-2014-0160(OpenSSL Heartbleed错误)之后,我必须小心重启可能正在使用libssl的所有内容-许多服务(例如Apache和我的VPN软件)仍然加载了旧的易受攻击的libssl ,而我的包裹管理员没有尝试纠正这一问题。 这让我开始思考:更新共享库后,如何可靠地找出当前正在运行的程序中链接了旧版本的库?我确信必须有一种方法可以在链接器级别或文件描述符级别查询正在运行的进程,以确定它们已加载的给定共享库的实例与当前磁盘上的实例是否相同。

6
要安装最无害的软件包来测试yum?
我正在尝试从本地仓库测试yum是否在CentOS中工作。为此,我需要一个包装: 尚未随标准OS安装一起安装 体积小 几乎没有依赖 不会影响操作系统的日常运行或在后台执行任何操作 在标准仓库中可用 那么,我可以根据要求包装什么套餐?
9 centos  yum 

2
Docker容器内部的应用程序更新?
通常,在服务器上配置与安全相关的补丁程序的自动更新。因此,如果我正在运行MySQL 5.5并且发布了新的安全补丁,Ubuntu Server将应用升级并重新启动MySQL,以自动方式保护我。显然,可以禁用此功能,但这对那些懒惰的人很有帮助;) Docker容器内部是否存在这样的概念?如果我在Docker容器中运行MySQL,是否需要不断停止该容器,在其中打开一个外壳,然后更新和升级MySQL?
9 lxc  docker 

2
如何将网络文件输入到ffmpeg
我的问题是这个。我可以访问承载许多视频文件的服务器,其中大多数文件非常大且压缩得不好。我打算在本地计算机上制作质量降低,尺寸较小的副本,以便更好地访问。 问题是服务器没有ftp访问。我可以将文件压缩到我的计算机上,然后使用ffmpeg减小大小,但是如果我在本地复制所有文件,则会用完空间。 我正在寻找一种直接将网络文件输入到ffmpeg的方法,这样我就可以编写一个脚本,使脚本一整夜都可以缩小尺寸。
9 ssh  scp  ffmpeg 

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.