我在本地networking上运行一台服务器,作为networking中计算机的路由器。 我现在要实现的是,对某些IP地址的传出TCP请求通过SSH连接进行隧道传输,而不会让networking中的人员使用该SSH隧道连接到任意主机。 我到现在为止的想法是在本地主机上监听一个redsocks实例,并将所有传出的请求redirect到我想转移到该redsocks实例的IP地址。 我添加了下面的iptables规则: iptables -t nat -A PREROUTING -p tcp -d 1.2.3.4 -j DNAT –to-destination 127.0.0.1:12345 显然,Linux内核将数据包从非127.0.0.0 / 8地址转换为127.0.0.0/8地址为“Martian数据包”并丢弃它们。 然而,有效的做法是让redsocks监听eth0而不是lo,然后将iptables DNAT转发给eth0地址(或使用REDIRECT规则)。 这个问题是,那么我的networking上的每台计算机都可以使用redsocks实例连接到互联网上的每台主机,但是我只想限制它的使用情况为一组特定的IP地址。 有没有办法使iptables的DNAT数据包到127.0.0.1? 否则,有没有人有一个想法,我怎么能实现我的目标,而不是开放给每个人的隧道? 更新:我也试图改变数据包的来源,没有任何成功: iptables -t nat -A POSTROUTING -p tcp -s 192.168.1.0/24 -d 1.2.3.4 -j SNAT –to-source 127.0.0.1 iptables -t nat -A POSTROUTING -p tcp -s 192.168.1.0/24 -d 127.0.0.1 -j SNAT –to-source […]
我有一个包含数百万个文件和子目录的目录,我需要更改整个目录及其文件的权限,并且需要花费很多时间来完成这个任务。 我想知道是否有一个比正常的chmod -R命令更快的方式吗?
我有一个Xen HVM vps,我试图在启动的时候提高没有人的软硬件文件限制。 我使用Ubuntu 10.04.3和/etc/security/limits.conf里面我有: nobody soft nofile 10000 nobody hard nofile 30000 但是,当我检查文件的限制仍然是默认的1024: su nobody -c 'ulimit -Hn' 1024 su nobody -c 'ulimit -Sn' 1024 提高Ubuntu文件限制的正确方法是什么?
我们目前有一个运行在Ubuntu的ColdFusion 9服务器。 它的硬件是运行raid 1的联想thinkserver。我们想把这个服务器移到不同的联想服务器(稍微不同的硬件),然后突袭1.我们可以处理一点点停机时间,但clonezilla给了我一个估计> 14个小时做这个工作。 有没有人有及时将服务器移动到新硬件的其他build议? ps的硬盘不能随它移动,他们保证每台机器。
我希望在一个文件系统上使用5到10个具有共享块设备(iSCSI)的服务器,GlusterFS和LustreFS似乎就是这样,但是他们没有提到共享块设备的支持 我们目前正在为我们的项目使用Debian 6
可能重复: Linux服务器空间不足 我删除了一个打开的文件,并没有减less磁盘使用量。 如果我删除/ proc / PID / fd / N中的链接,它会释放空间吗? 这个过程会发生什么(一般情况下)? 具体来说:服务器运行的是Zimbra,sync.log偶尔也疯狂地大了(这是Zimbra的bug)
我已经写了一个这样的udev规则: SUBSYSTEM=="usb", ACTION=="add", RUN+="//root/usbmon/usb add %b" SUBSYSTEM=="usb", ACTION=="remove", RUN+="//root/usbmon/usb remove %b" 现在这个USB脚本发送电子邮件每当USB连接和删除。 但问题是每次发送2封电子邮件。 这意味着规则正在执行2次。 这是我在日志中得到的 Apr 26 14:52:00 box2 sendEmail[3374]: Email was sent successfully! USB Added: Email sent to [email protected] Using Udev Rule at 04-26-14-52-00. Apr 26 14:52:00 box2 sendEmail[3394]: Email was sent successfully! USB Added: Email sent to [email protected] Using Udev Rule at 04-26-14-52-00. […]
我有一些麻烦让我的pxebooting kickstart过程工作。 已知该脚本通过DVD与本地媒体安装在磁盘上时工作。 我已经更新了脚本以与远程存储库一起工作,并且正在利用PXE引导,因此可以为我的企业充分利用。 该脚本执行良好,直到它开始下载包。 检查托pipe存储库的Web服务器上的日志文件,使用200 HTTP代码成功下载第一个文件。 但运行kickstart的服务器表明失败,并尝试再次下载该软件包。 我已经在Web服务器上证实了这一点,因为我看到重复的同一个包的多个请求,全部使用200个HTTP代码。 但kickstart表示下载失败。 我正在使用CentOS 5.我将整个第一张DVD(我不需要第二张OpenOffice套件)复制到networking服务器上的位置,所以重新数据已经存在。 我已经能够使用已经构build的其他系统成功地从该存储库下载软件。 在kickstarted服务器上find的任何日志文件中都没有出现错误,没有消息输出到屏幕上。 我一直没有find任何方法来debugging这个问题。 我希望这里的某个人可以提供关于如何获得更详细的debugging信息来解决这个问题的链接或信息。 先谢谢你。
我为程序员做了一个svn更新的脚本。 该脚本从bash工作正常。 程序员想从浏览器(通过他们的pipe理员站点)执行它。 脚本非常简单(它唯一的例子并不完全相同) #!/bin/bash echo "Start update…" cd /dir/with/site /usr/bin/svn update echo "Update ended." 在浏览器中,bash脚本是通过php文件启动的: echo system('/updatesvnscript.sh'); 在bash中执行它后,我可以看到从回声和svn应用程序的所有输出,脚本在bash中工作良好。 在浏览器中通过PHP启动脚本只给我输出从回声,像Start update… Update ended. ,但没有输出svn。 问题是,当我通过浏览器进行更新时,脚本也没有更新我的网站,所以我需要find问题出在哪里。 所以我想在浏览器中看到svn的输出,看看用svn通过浏览器是不是工作。 Bash脚本具有通过浏览器执行的适当权限,并且具有在站点目录中修改(更新)文件的适当权限。
为了创build定期备份,我将rsync和–link-dest一起使用,以便为未更改的文件创build硬链接。 例如: rsync -ax \ –partial –delete –delete-excluded –inplace \ –exclude-from=/tmp/temp_excludes \ –link-dest=/Volumes/Backup/current \ /Users /Volumes/Backup/2012-06-25 只要我从我的普通用户帐户开始这个过程,这很好。 尽pipe只要我使用sudo启动进程,它的performance就会比较随意,这意味着rsync 复制所有未更改的文件,而不是硬链接它们。 由于sudo修改环境,我已经尝试了sudo -E ,并确保sudoers文件具有相应的选项集。 那么,也没有工作。 所以,问题是,我如何使用sudo运行rsync ? 而上面的例子只显示了Users目录的备份,我还需要备份一些我只能以root用户身份访问的系统文件。