Articles of linux

更改cron脚本中的runlevel是否安全?

我想每晚做一个服务器A的“热克隆”到服务器B.build议服务器B在这个动作期间运行最小的守护进程,所以我想创build一个“最小”的运行级别,几乎只运行sshd并切换到/从那中级脚本运行级别,即: # do some stuff … # take services down telinit 2 # do backup … # bring services back up telinit 3 # do post-backup stuff … 我想做一个运行级别的开关,而不是明确地启动/停止服务,这样我就可以在许多不同的configuration的机器上使用相同的脚本(不同的服务,一些在systemv上的systemv-init上)。 我想保持它在一个脚本的可维护性,而不是创build一堆新的initd / systemd启动/停止脚本。 所以问题的本质是:* telinit会停止脚本(假设cron在运行级别)? * telinit是否等待完成或立即返回? *如果上述工作是“安全”的,或者是这种方法的潜在问题? *是否有一个更好的方法可以使用一个单一的脚本(同样我宁愿避免安装一堆新的init脚本,所以这个东西在很大程度上是“独立的”和便携的)

rsync:getcwd():没有这样的文件或目录(2)

我想将Server1和Server2的日志同步到LogServer 。 对于Server1 : rsync -avz -e 'ssh -p 2188' user@server1:/usr/local/servers/logs/* /usr/local/logs/ 这一个工程,但对于Server2 : rsync -avz -e 'ssh -p 2188' user@server2:/usr/local/servers/logs/* /usr/local/logs/ 它失败: shell-init: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory job-working-directory: error […]

将交换文件存储在Azure上的临时磁盘上是否安全?

我有一个在Microsoft Azure上运行的虚拟Linux服务器。 该机器的磁盘/dev/sdb1挂载到/mnt 。 此文件夹包含一个文件DATALOSS_WARNING_README.txt ,其中包含以下内容: 警告:这是一个临时磁盘。 存储在此驱动器上的任何数据都将受到损失,并且无法恢复。 请勿使用此磁盘存储任何个人或应用程序数据。 有关更多详细信息,请参阅以下MSDN文档: http : //msdn.microsoft.com/en-us/library/windowsazure/jj672979.aspx 我想知道是否可以安全地将我的Linux服务器的交换文件存储在这个磁盘上? 或者这可能导致问题?

低内存应用优先级

我在内存有限的计算机上运行Debian,并且没有添加交换空间的选项。 该机器可用作Web和数据库服务器。 我看到的问题是,当多个Web请求进来时,我的数据库停止接受连接,有时甚至崩溃,因为系统没有更多的可用内存。 是否有可能告诉Linux杀死特定的进程(在我的情况下,Apache),以防另一个进程(在我的情况下,火鸟)请求内存,并没有足够的? 如果本地不可能做到,也许有一些工具可以帮助我实现这个目标?

为什么会在strace输出brk()需要几秒钟?

迁移到Ubuntu Hardy(amd64)时,我们发现其中一个应用程序的速度显着下降。 它在Debian Sarge i386上运行得非常好。 对(Apache 1.3)httpd进程运行'strace -r'显示了以下令人不安的部分: 0.000083 poll([{fd = 8,events = POLLIN | POLLERR,revents = POLLIN}],1,-1)= 1 0.000026 recvfrom(8,“_323-412D \ 0 \ 0 \ 0000 \ 0 \ 2 \ 0 \ 0 \ 0 \ 17recueil-cours”…,32727,0,NULL,NULL)= 8192 0.000061 poll([{fd = 8,events = POLLIN | POLLERR,revents = POLLIN}],1,-1)= 1 0.000026 recvfrom(8,“\ 0 \ […]

让Ubuntu在无需login的情况下自动连接到无线AP

我们有一个Ubuntu的盒子设置做一些监测,但由于放置无法运行CAT5到盒本身。 我有一个Atheros PCI卡,只要有人login到Gnome,它就可以很好的工作,并且在那段时间内不会与AP断开连接。 有没有办法让Ubuntu在启动时连接到AP,并且如果从指定的AP发现信号,总是重新连接? 该盒子将具有静态IP,并且只使用WEP连接到特定的AP。

如何使用bonding驱动程序在Linux上实现2GB的总吞吐量?

对于这个应用程序,我并不关心高吞吐量,而是总吞吐量。 我在服务器端有一个IP地址,我希望能够从服务器发送超过1千兆的stream量。 服务器有两个1千兆位卡,并连接到一对交换机。 该应用程序涉及世界各地的数千个远程客户端连接到服务器(即不是本地networking)。 目前,使用模式5(balance-tlb)build立绑定,但是每个端口的吞吐量不会超过500Mbit / s。 我怎样才能超过这个限制? 请假设我没有访问交换机,所以我不能实现802.3ad。 (我希望添加“绑定”标签,但我不能添加新的标签,所以“团队”)。

让Apache识别没有扩展名的MIMEtypes的文件

我有一些其他人创build的旧HTML文件。 他们中的许多人由于某种原因不具备扩展名.html。 如果可能的话,我不想修改它们,但由于某种原因,Apache似乎无法通过MIME的魔法来找出它们的文件types。 我已经启用了mime_magic mod,以及在网站部分的以下内容: MimeMagicFile /etc/magic 我应该注意到,我在这台机器上使用了Debian Linux。

NAS的OpenSolaris ZFS准系统

我的任务是为我们的老化文件服务器提供NAS替代服务,目前正在使用XFS运行Linux(使用LVM)。 我们是一个非常小的5人公司,所以我们使用商品硬件(2GhzCore2,8GbRAM和大约4TB价值的硬盘为新的版本)。 我正在研究OpenSolaris(我来自Debian / RHEL背景),并且非常喜欢我所看到的ZFS,但是我想安装OpenSolaris的无头版本的基本版本。 这意味着没有X,Gnome或任何gui的应用程序,但我无法find一个办法。 从本质上讲,我们使用这个“一体式”框来说明以下内容: NAS / FileServer,现在大约2TB,我们所有的Win32主机(很多大的PSD / Premier文件! Subversion托pipe我们的源文件 VMWare服务器(现在1.0)用作Windows 2003和其他操作系统的部署。 另一个盒子是我们的网关(OpenBSD),可以处理DHCP等,我只需要这个盒子来托pipe我们的内容,在几个虚拟机(单独的Glassfish安装)中运行我们的持续集成(TeamCity,Confluence和Jira),并运行Windows 2003 instancese SQL Server。 您是否认为我可以安装OpenSolaris(而不是Nextena)的削减版本,并将其用于ZFS的爱和设置Xen作为我们的虚拟需求的虚拟化pipe理器? 我意识到8Gb内存可能不够,它会很快被撞到16。 我只是有点迷失在想知道为什么我们必须有GNOME的OpenSolaris安装:(

什么是一个PHP的Web服务器最好的Linux发行版?

我们计划升级我们的硬件,同时我们计划从新的操作系统重新安装我们的所有networking服务器。 目前我们的networking服务器在专用服务器上运行在CentOS 4.7上。 我们使用Apache,Mysql,PHP,SVN,FTP和通过SSHpipe理的Web服务器所需的所有工具。 我们计划为新的Web服务器使用云服务器。 我不知道要为这个新服务器采用哪种Linux发行版。 我应该留在Centos,只是采取最新版本5.4,或者我应该切换到其他的东西像Debian基地发行版(Ubuntu服务器)? 我不喜欢CentOS的东西是在Yum上没有最新版本的PHP和Apache的可用性。 这使我们的networking服务器更新与最新的技术更难… 谢谢你的帮助!