Questions tagged «linux»

Linux是基于Linux内核的类UNIX开源操作系统的通用术语。

4
AWS VPC + IPtables + NAT:端口转发不起作用
昨天,我在这里发表了一个问题,但我认为我的话还不够清楚。顺便说一句,这个问题不是重复的。 我有如下的AWS VPC设置。 目标/问题:从Internet SSH到服务器A。而且它不起作用。 服务器A位于私有子网中,因此我想在NAT实例上启用iptables NAT,以便可以直接从Internet SSH到服务器A 我下面这个和这个 我在NAT实例上运行以下命令: NAT# iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to-destination 10.0.1.243:22 在NAT实例上启用IP转发: NAT# sysctl -p net.ipv4.ip_forward = 1 MASQUERADE在NAT实例上运行: NAT# iptables -t nat -vnL POSTROUTING Chain POSTROUTING (policy ACCEPT 6 packets, 312 bytes) pkts bytes target prot …

1
数百万个小文件的块大小
我在Debian Wheezy的硬件RAID1中有2个4TB磁盘(可能是LSI MegaRaid)。物理块大小为4kB。我将存储150-200百万个小文件(3到10kB之间)。我并不是在要求性能,而是在寻求最佳文件系统和块大小以节省存储空间。我已经将8200字节的文件复制到块大小为4kB的ext4上。这占用了32kB的磁盘!是记日记的原因吗?那么,有哪些选项可以为此类小文件节省大部分存储空间?

5
Nagios服务器最佳做法?
我运行中型Nagios服务器。它目前监视着约40台具有180种服务的服务器,并且每天都在增长。 我从旧的Nagios设置迁移而来,该设置以非常深奥的方式配置,迫使我从头开始重新配置所有内容。 既然服务器已经在运行并且可以满足我们所需的大部分功能,我正在研究使其更具可扩展性。当前,每个主机是中的自己文件/etc/nagios/hosts/,每个主机在同一文件中具有所有服务。这显然不是最佳选择,但也不能将我的所有配置混淆到数百个不同的文件中。 所以我的问题是:对于任何经验丰富的Nagios管理员而言,在不使配置过于复杂的情况下利用主机组/服务组的最佳方法是什么?

1
来自主机但不来自名称空间的基于Macvlan的接口ping
[编辑] 生产系统当前是基于物理和ESXi的混合系统。显然,即使在预生产环境中,我们也绝对不会使用virtualbox!它仅在此处用于直接在我的桌面上快速缩小问题范围。 感谢您对meta的“保留”的解释! [/编辑] 我的设置: 专用网络vboxnet110.0.7.0/24 1个主机,ubuntu桌面 1个VM,Ubuntu服务器(VirtualBox) 地址布局: 主机:10.7.0.1 虚拟机:10.0.7.101 VM MAC名称空间:10.0.7.102 在上VM,我运行了以下命令: ip netns add mac # create a new nmespace ip link add link eth0 mac0 type macvlan # create a new macvlan interface ip link set mac0 netns mac 在mac名称空间中,在VM内部: ip link set lo up ip …

3
我不小心压缩了整个服务器
好吧,如果有人想扮演上帝并创造奇迹,我会失望的。 因此,我的任务是制作一个脚本,该脚本可以找到6个月以上的文件,将其压缩然后删除。在制作该脚本的过程中,我运行了此命令: find / -type f -mtime -400 ! -mtime -180 | xargs gzip blablabla 这给每个单文件一个.gz扩展名。现在我一发现就撤消了,但是为时已晚。命令完成后,我的bash命令都不起作用,因为$ PATH变量已清空。在意识到问题所在之前,我尝试了很多事情。 因此,请解压缩我仍然无法启动的所有内容。在遵循网上指示进行以下操作后,我设法使其得以抢救: root (hd0,0) setup (hd0) kernel (hd0,0)/boot/vml[...] initrd (hd0,0)/boot/initrd.im[...] 在将我的Linux部分启动之后,却给我以下错误: Begin : Running /scripts/init-bottom ... mount : mounting /dev on /root/dev failed : No such file or directory mount: mounting /sys/ on /root/sys …
10 linux  boot  gzip 

2
将虚拟机(无用)公开到本地Wifi
我已经使用Vagrant(www.vagrantup.com)设置了本地虚拟机(ubuntu 12.4),并且需要在本地wifi网络上共享其资源。它基本上运行着一个Web服务器,该服务器应该可由本地网络上的其他计算机访问。 我的本地wifi适配器从路由器获取动态IP地址。 我当前的配置如下所示,但是我无法使用IP从另一台计算机访问该计算机: config.vm.network :private_network, ip: "192.168.56.101" config.vm.network :forwarded_port, guest: 80, host: 8080 我怎样才能做到这一点?任何帮助深表感谢!


4
OpenVPN,非常缓慢地转发数据包
我重新启动了服务器,一个奇怪的问题出来了。我在ArchLinux上运行,客户端是Ubuntu,Android和Mac。 问题在于,通过客户端访问Internet的速度很慢,大约为2ko / s,然后逐渐停止。 但是,从服务器直接下载某些内容到客户端是全速的。而且,很明显,来自服务器的Internet处于全速状态(40mo / s)。 我不知道重新启动后发生了什么,但是此问题在所有客户端上都存在,并且仅与将openvpn转发到Internet的流量有关。 编辑:尝试与tcp,没有解决。编辑:测试了各种片段/ mtu设置,没有更改。 这是我的所有conf: ╭─<root@Alduin>-</etc/openvpn>-<1:45:07>-◇ ╰─➤ cat Alduin.conf ccd/Thunderaan local 212.83.129.104 port 1194 proto udp dev tun ca keys/ca.crt cert keys/Alduin.crt key keys/Alduin.key dh keys/dh1024.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "dhcp-option DNS 10.8.0.1" client-to-client keepalive 5 60 ping-timer-rem comp-lzo persist-key persist-tun status …

6
我如何找出为什么我的php5-fpm无法启动?
当我尝试到达服务器时,我收到504网关超时,一小笔支票未在php5-fpm日志中找到任何日志,但是只是为了确保,我尝试重新启动它。当我尝试重新启动它时: sudo service php5-fpm restart 我得到[fail] 但是当我做 sudo service php5-fpm stop sudo service php5-fpm start 我没有错。 如果没有日志,我该如何调查?我能做什么?
10 linux  php  php-fpm 

3
Linux cron Jobs是按顺序执行还是并行执行?
可以说我创建了两个cron作业: Cron Job A,每天8:00 AM运行 Cron Job B,每天8:05 AM运行 但是,Cron Job A需要12个小时才能运行(不要问为什么,这是一个示例)。 Cron Job B会在上午8:05运行吗,还是Cron作业一次只能执行一次? 如果先前正在运行的Cron作业被系统重新启动/重新启动中断了,它将在随后的启动后再次继续/运行吗?
10 linux  cron 

1
如何查询影响类型的所有selinux规则/默认文件上下文/等
我需要了解正在运行的系统当前规则下与selinux类型相关的所有信息: 允许,允许审核,不审核规则。 使用类型标记了上下文的文件。 过渡。 ...以及其他任何信息。 是否可以使用任何命令查询该信息,还是应该下载所有与selinux相关的“ src”软件包,过滤掉未使用的模块,并对该信息的每个文件进行grep?必须有一种更简单的方法来做到这一点。

3
为什么内存受限的LXC容器中的应用程序将大文件写入磁盘会被OOM杀死?
EDIT2:此问题在3.8.0-25-通用#37-Ubuntu SMP下似乎也存在 编辑:我修改了原始标题为“为什么用dd写入文件会触发Linux内存不足管理器”的问题?为了更好地反映出我对以下所述的一般问题感到担忧: 我遇到一个麻烦的情况,当我写一个大小超过内存限制(设置为300MB)的文件时,OOM杀手正在我的LXC容器中强行杀死进程。当我在实际上只有512 MB RAM的Xen虚拟机(EC2 t1.micro)上运行应用程序时,不会发生此问题,因此在尊重容器内存限制的情况下文件缓冲似乎存在一些问题。 作为一个简单的示例,我可以演示dd写入的大文件将如何引起问题。同样,此问题困扰着所有应用程序。我正在寻找解决应用程序缓存过大的一般问题。我了解如何使“ dd”工作。 场景: 我有一个LXC容器,其中memory.limit_in_bytes设置为300 MB。 我尝试将dd添加到约500 MB的文件,如下所示: dd if=/dev/zero of=test2 bs=100k count=5010 大约20%的时间,Linux OOM管理器由该命令触发,并且进程被杀死。不用说,这是非常意想不到的行为。dd旨在模拟容器中运行的程序编写的实际“有用”文件。 详细信息:虽然文件缓存变大(260 MB),但rss和文件映射似乎仍然很低。这是一个在写入过程中memory.stat可能看起来像的示例: cache 278667264 rss 20971520 mapped_file 24576 pgpgin 138147 pgpgout 64993 swap 0 pgfault 55054 pgmajfault 2 inactive_anon 10637312 active_anon 10342400 inactive_file 278339584 active_file 319488 unevictable 0 hierarchical_memory_limit …
10 linux  ubuntu  lxc  oom  cgroup 

2
使用并行运行脚本而无需输入
我正在尝试与GNU并行运行脚本的许多实例,但是脚本不带参数。 如果我只是执行“ parallel foo.sh”,则会得到以下信息: parallel: Warning: Input is read from the terminal. Only experts do this on purpose. Press CTRL-D to exit.
10 linux  gnu 


2
Linux网络端口耗尽
在不深入研究内核源代码的情况下,我已经尽了最大的努力。关于该主题似乎有大量虚假信息/错误信息,所以我希望这能为我和其他人一劳永逸地回答这个问题。 严格说来IPv4,端口耗尽实际上有可能吗?让我解释: 似乎有65535个端口可以使用。0不可用。 我读过端口耗尽要求(src ip,src端口,dst ip,dst端口)元组是唯一的。 为了清楚起见,并假设我可以通过sysctl net.ipv4.ip_local_port_range设置使用100%的临时端口 这就是问题:这是如何工作的? 我可以从127.0.0.1:(x)到127.0.0.1:80有65k个连接 我可以从127.0.0.1:(x)到127.0.0.1:555有65k个连接 基本上再一次,问题是(srcip,srcport,dstip,dstport)必须是唯一的,对吗? 我无法打开从 IP“ A”到IP“ B”,端口“ N”的超过65k个连接 同样,单个IP不能在xxxx:80处打开到我的Web服务器的超过65k的连接,但是,只要它们来自不同的源IP,我就可以总体支持超过65k的连接。 最后,我对正在侦听的(传出)临时端口和传入端口有些困惑。我意识到,一旦建立了连接,连接的每一端都是对等的,并且相等,但是在此之前发生了: 例如,如果确实(srcip,srcport,dstip,dstport)元组必须是唯一的,那么如果启用,为什么会这样呢? net.ipv4.ip_local_port_range = 1024 65535 这允许使用1024-65535的临时端口,如果我有绑定在端口3306上的服务(例如,mySQL),则由于使用该端口,有时它们将无法启动。 这是否与以下事实有关:(这是我要验证的声明): (srcip,srcport,dstip,dstport)对于端口范围为1-65535的每个连接都必须是唯一的(不注意操作系统对临时端口的使用) 但是,对于要绑定的套接字,可以将其视为(srcip,srcport,*,*)。换一种说法,IP是否一定出于某种原因不能使用该端口? 我可以验证上述行为,即使用上面的确切sysctl行,由于这个原因,我将mySQL移到了一个低于1024的端口,因为它偶尔会非常随机地失败,因为假设操作系统正在使用该端口(3306)临时港口。

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.