Articles of linux

capistrano的原型用户设置为在Linux上的tomcat部署

我对CD和DevOps主题相对比较陌生,我试图用capistrano来设置自动部署,这在我的本地特别testing环境中效果很好。 不过,我想知道如何在未来的目标环境中设置用户。 例如,Ubuntu Tomcat安装过程设置了拥有tomcat进程的tomcat(6 | 7)用户。 不过,使用这个用户不可能使用sshlogin,而对于capistrano,你需要用户使用ssh访问来运行所有的命令。 人们通常如何解决这个问题? 当然,我想到了我自己的解决scheme,但是我有兴趣听听是否有最佳做法。 最后还会有另一方build立我的目标环境,但是我可以有一个发言权,所以我想知道我在这里理想的要求。

使用Squid的带宽pipe理器

我正在尝试为ISP(互联网分销商或学校或其他类似组织)创build一个互联网发行软件 它将有限制和政策,以限制带宽/速度/持续时间等根据他们的互联网连接包。 此外,pipe理员应该能够监控他们的速度,并阻止/允许用户和续订软件包。 该架构如下所示: 非https客户端请求正常工作。 但是https请求正如期望的那样给SSL_ERROR。 我读了Squid无法处理透明代理模式下的https连接 ,但我不希望用户每次都在浏览器中设置代理。 有没有其他方法可以计算用户使用的所有stream量(包括encryptionstream量)并相应地调整stream量?

如何在启动时将二进制文件设置为像Apache一样启动(作为服务运行)

我试图设置PhantomJS作为服务运行。 我在/etc/init.d中find了这个框架文件,并且在Ubuntu 12.10上运行。 为了解决这个问题,我find了/etc/rc*.d目录下的符号链接,发现Apache运行在2到5的运行级别。 我的问题是我刚创build了一个名为S02phantomjs在2到5文件夹中的符号链接,并将其指向我放在/etc/init.d中的脚本? 或者我应该使用一些应用程序来configuration这个? 我担心的是我错过了一些东西。 而且这个数字部分的顺序有一个重要的意义,我不想搞乱。 此外,我不知道是否还有其他事情要做,不仅要确保每次启动都运行。 但是让它现在开始运行。 最后一个问题。 我的脚本,基于骨架,当我在terminal中运行时,它就像正常运行PhantomJS时一样坐着等待。 我想让它像Apache一样在后台运行。 为了完成这个,我需要做些什么? 谢谢大家!

了解从源代码构build之后创build/安装的文件

我有一个任务需要完成,包括使用configure; make; make install从源代码构build一系列库configure; make; make install configure; make; make install configure; make; make install 。 生成的库和misc文件将被放到与构build环境兼容的embedded式系统上。 我的问题是如何知道安装了哪些文件以及在哪里可以抓取它们并将它们移动到embedded式环境中? 是通过运行make install创build的日志? 或者,我只是将make install的输出发送到文件? build议,提示和技巧将不胜感激。

我怎样才能释放一个仍在使用但未绑定进程的端口?

我正在运行一个产生多个进程的Python应用程序。 它使用端口56008侦听客户端请求。 有时在closures它之后,它使用的端口仍然在使用中。 仍然有一些似乎在运行的python进程,但试图杀死他们似乎没有任何影响。 我怎样才能手动释放它,所以我可以重新启动我的应用程序? 更多信息: ps -C python输出 PID TTY TIME CMD 30118 pts/1 00:00:00 python 30131 pts/1 00:00:00 python *格式[pid] pts/1 00:00:00 python总共有大约30行 netstat -tulp输出(仅适用于相关行): Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 *:56008 *:* LISTEN –

使用无密码sudo的munin插件的“sudo:no tty present”

我正在为munin编写一个插件来监视我们的Ubuntu Linux服务器(位于Amazon EC2上)的某些内容。 该插件需要通过sudo运行程序/usr/sbin/rabbitmqctl 。 我在/etc/sudoers有以下行: munin ALL = NOPASSWD: /usr/sbin/rabbitmqctl list_queues 正如你所看到的, munin用户(即运行脚本的用户)可以通过sudo执行命令/usr/sbin/rabbitmqctl list_queues而不需要密码。 我已经通过sudo -u munin -s证实了这一点,并运行它。 然而在munin日志( /var/log/munin/munin-node.log )中,我得到了很多这样的插件输出: 2013/06/28-11:35:26 [28107] sudo: no tty present and no askpass program specified 图中没有数据。 在我的/etc/sudoers文件的最后,我有这个,这通常被认为是一个解决scheme: Defaults !requiretty 但是它不能解决它。 “取消/ etc / sudoers中该行的注释”这个共同的build议或者是因为该文件中没有任何东西。 有没有办法让我的munin插件通过sudo调用某些东西? 更新№1 :这个munin插件是由服务器上的munin-node执行的,这个是作为munin用户运行的,我不能把所有的munin都作为root来运行。

如何检测并重新启动使用100%CPU的程序?

程序autokey有一个非常恼人的错误,这使得它占用100%的CPU核心运行几天后。 如果我使用top并杀死与k的过程,然后重新启动,并罚款再过几天。 $ ps ax|grep autokey 1074 ? S 0:00 python /etc/rc2.d/S20autokey start 17606 pts/1 S+ 0:00 grep autokey 题 如何检测何时最大化CPU内核,然后从cron脚本重新启动?

如何匹配selinux规则/ transitions / labels / etc到模块

我需要匹配运行/加载的selinux规则/ transitions / labels / etc到定义它们的selinux策略模块(semodules -l)。 我需要这个,因为我想在上下文中学习一些selinux策略模块,我需要知道应该检查哪些模块。 有没有更简单的方法来做到这一点比下载所有selinux相关的“src”包,筛选出未使用的模块,并grep结果文件的信息?

“无法创buildIPv6套接字”postgresql备用错误

我正在尝试使用以下步骤创buildPostgresql 9.1热备份: configuration2个虚拟linux机器。 主人的ip:10.10.10.1,备用的ip:10.10.10.2。 平测通过。 在两者上恢复相同的数据库备份。 主编的pg_hba。 补充行: host replication postgres 10.10.10.2/32 md5 编辑硕士的postgresql.conf: listen_address = '*' wal_level = hot_standby max_wal_senders = 3 在Standby上创buildrecovery.conf: standby_mode = 'on' primary_conninfo = 'host=10.10.10.1' 添加recovery.conf后,我无法启动备用服务器。 在启动日志中,我得到一个错误: > could not create IPv6 socket 我错过了什么吗?

是否有可能中止或中断,然后继续lvconvert -m1操作?

我已经运行了这个命令 lvconvert -m1 rootvg/newroot /dev/sdb 将线性逻辑卷转换为镜像逻辑卷。 手术尚未完成; 我用ctrl-c中断了这个命令,大概在10%左右,但是这个操作似乎是在后台运行的。 有没有可能 1)中止lvconvert操作并恢复到之前的状态? (这将是我的首选选项) 2)安全地中断操作并稍后恢复?