Questions tagged «linux»

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


3
根文件系统已满,没有大文件
因此,我是一个非常新的系统管理员,刚从学校毕业并从事实习。唯一的问题是,im是该位置上唯一的sysadmin,没有人向我展示工作。无论如何,这是一家非常小的公司,一台具有这种配置的CentOs服务器: Filesystem Size Used Avail Use% Mounted on /dev/sda3 184G 140G 35G 81% / tmpfs 2.3G 0 2.3G 0% /lib/init/rw udev 2.3G 212K 2.3G 1% /dev tmpfs 2.3G 0 2.3G 0% /dev/shm /dev/sda1 4.6G 156M 4.2G 4% /boot /dev/sda4 33G 176M 31G 1% /tmp /dev/sdb1 1.8T 1.8T 0 100% /media/backupInterne …

2
我正在尝试在EC2实例上使用“ aws s3 sync”。'--exclude'选项是否损坏?
我正在尝试使用预装在EC2实例上的Amazon官方工具将EC2实例备份到S3。我很难获得sync命令以从同步中排除目录。该文件使得它像它的使用“ -排除”选项易声。但是,我一直无法正常工作。 我正在运行yum提供的最新版本: [root@HOSTNAME ~]# aws --version aws-cli/1.1.1 Python/2.6.8 Linux/3.4.57-48.42.amzn1.x86_64 这是我遇到的命令: aws s3 sync /var/www s3://backup-bucket/var/www/ --exclude '*.git/*' 我想从同步中排除所有名为“ .git”的文件夹以及这些文件夹中的所有文件。 从文档来看,我给“-排除”的模式应该可以工作。但是,整个.git目录及其所有文件仍被同步。这是输出的示例行: upload: ../var/www/site/.git/objects/7b/e3cdf203d34a0d7eff30a96a78d20eacee8d77 to s3://backup-bucket/var/www/site/.git/objects/7b/e3cdf203d34a0d7eff30a96a78d20eacee8d77 我尝试了以下命令,但所有命令都未能排除名为“ .git”的文件夹: aws s3 sync /var/www s3://backup-bucket/var/www/ --exclude *.git/* aws s3 sync /var/www s3://backup-bucket/var/www/ --exclude */.git/* aws s3 sync /var/www s3://backup-bucket/var/www/ --exclude '.git' aws s3 …

4
使用Linux文件系统一次写入,多次读取(WORM)
我需要将文件写入Linux文件系统,该文件随后不能被覆盖,附加,以任何方式更新或删除。不是由sudo-er,root或任何人组成。我试图满足FINRA 17A-4记录保存金融服务法规的要求,该要求基本上要求将电子文档写入WORM(一次写入,多次读取)设备。我非常希望避免使用DVD或昂贵的EMC Centera设备。 是否有Linux文件系统,或者SELinux是否可以支持在写入后立即(或至少很快)使文件完全不可变的要求?还是有人知道我可以使用Linux权限等在现有文件系统上实施此方法? 我知道可以设置只读权限和不可变属性。但是我当然希望root用户可以取消设置那些。 我考虑过将数据存储到小型卷中,这些小型卷已卸装,然后以只读方式重新挂载,但随后,我认为root仍然可以卸装并重新挂载为可写状态。 我正在寻找任何聪明的主意,在最坏的情况下,我愿意做一些编码来“增强”现有文件系统来提供此功能。假设有一个很好的起点文件系统。并放置经过精心配置的Linux服务器充当此类网络存储设备,而无需执行其他操作。 毕竟,文件加密也将非常有用!

3
覆盖特定用户的二进制路径
我的问题似乎微不足道,但我没有找到任何对互联网有帮助的东西。我有一个二进制文件 /urs/bin/binary 但是它已经过时了,例如在某些安装架上有较新的版本 /mount/new_version/binary 有一个bash脚本,它以如下形式调用此二进制文件 binary -doSomething 我需要此脚本来调用二进制的新版本,而不是旧版本,但是我无权更改此脚本。是否有办法以某种方式覆盖它的路径,但仅适用于我的用户?任何帮助,将不胜感激。
8 linux  bash  scripting  path 

3
如何防止子树删除(`rm -rf`)使磁盘I / O的其他进程饿死?
对于繁忙的站点,我们有一个非常大的(多个GB)Nginx缓存目录,有时我们需要一次将其全部清除。过去,我已通过以下方法解决了该问题:将缓存文件夹移至新路径,在旧路径下创建一个新的缓存文件夹,然后rm -rf打开旧的缓存文件夹。 但是,近来,当我需要在一个繁忙的早晨清除缓存时rm -rf,由于Nginx及其所面向的服务器都是读取密集型的,因此I / O 使服务器的磁盘访问进程陷入饥饿。我可以观察到CPU闲置时的平均负载攀升,并rm -rf占用了98-99%的磁盘IO iotop。 ionice -c 3调用时rm,我已经尝试过了,但是它对观察到的行为似乎没有明显的影响。 有什么方法可以驯服rm -rf更多共享磁盘?我是否需要使用其他技术来借鉴ionice? 更新: 有问题的文件系统是一个AWS EC2实例存储(主磁盘是EBS)。该/etc/fstab条目如下所示: /dev/xvdb /mnt auto defaults,nobootwait,comment=cloudconfig 0 2
8 linux  hard-drive  io  rm  ionice 

1
窗口缩小
我运行了一个主要的媒体上传/下载网站,我注意到了这些: 这是由于文件大而引起的严重噪音还是背景噪音?我可以对/etc/sysctl.conf进行任何调整以改善和预防问题吗? [8822139.804040] TCP: Peer 177.47.116.196:53829/80 unexpectedly shrunk window 2513116350:2513136117 (repaired) [8822140.944041] TCP: Peer 177.47.116.196:53829/80 unexpectedly shrunk window 2513116350:2513136117 (repaired) [8822143.224052] TCP: Peer 177.47.116.196:53829/80 unexpectedly shrunk window 2513116350:2513136117 (repaired) [8822147.776079] TCP: Peer 177.47.116.196:53829/80 unexpectedly shrunk window 2513116350:2513136117 (repaired) [8822156.896049] TCP: Peer 177.47.116.196:53829/80 unexpectedly shrunk window 2513116350:2513136117 (repaired) [8822175.136049] TCP: Peer …

1
/ dev / disk / by-id下同一硬盘的scsi和ata条目
我正在尝试使用4个裸驱动器设置ZFS池,这些驱动器已通过SATA热插拔背板连接到Ubuntu系统。 这些是日立SATA驱动器。列出的内容时/dev/disk/by-id,每个驱动器都有两个条目: root@scorpius:/dev/disk/by-id# ls | grep Hitachi ata-Hitachi_HDS5C3030ALA630_MJ1323YNG0ZJ7C ata-Hitachi_HDS5C3030ALA630_MJ1323YNG1064C ata-Hitachi_HDS5C3030ALA630_MJ1323YNG190AC ata-Hitachi_HDS5C3030ALA630_MJ1323YNG1DGPC scsi-SATA_Hitachi_HDS5C30_MJ1323YNG0ZJ7C scsi-SATA_Hitachi_HDS5C30_MJ1323YNG1064C scsi-SATA_Hitachi_HDS5C30_MJ1323YNG190AC scsi-SATA_Hitachi_HDS5C30_MJ1323YNG1DGPC 我知道这些是相同的驱动器,因为我记下了序列号,并且该系统中的所有其他驱动器都是Seagate或WD。例如,第一个的序列号是YNG0ZJ7C。 为什么每个驱动器都有两个条目?更重要的是,当我创建ZFS池时,应该使用哪个池;在scsi-一个或ata-一个?
8 linux  zfs  sata  scsi 

1
将apache ssl端口与具有相同openssl端口443的其他端口绑定
我有一台服务器(基于Linux的服务器),其中安装了dotcms,它在端口80上运行,openssl在端口443上。两者均在运行过程中启动。最近我在服务器上安装了apache。当我启动apache时,它卡住了,因为apache上的默认ssl端口是443,而apache是​​80,两个都已经在运行了。仅出于我的任务,我仅在端口90上仅启动了不带ssl的apache。但是我也想在不同的端口上也启动了带有apache的ssl。可以将apache ssl与相同的openssl绑定吗? 我在运行过程中需要我的默认dotcms,无论如何我都无法停止它,如果需要Apache启动,我只能重新启动我的dotcms服务。但我需要dotcms和apache才能并行运行。 看到该链接上的图片(由于信誉降低,我无法上传图片) http://developers89.byethost14.com/images/ssl.png

3
如何在具有临时存储的Amazon EC2上创建交换分区?
这是输出df -k: Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvda1 10317860 7059008 2734732 73% / none 847584 0 847584 0% /dev/shm /dev/xvdb 153899044 192068 145889352 1% /mnt/ephemeral 我正在使用Centos EBS引导映像。 我已经阅读了有关此问题的各种问题,但它们告诉您安装新驱动器。但是我认为该驱动器已经安装在/dev/xvdb。我对么? 我可以使用这个吗: mkswap -f /dev/xvdb #add in /etc/fstab /dev/xvdb swap swap defaults 0 0 swapon /dev/xvdb 能行吗

3
了解RedHat推荐的调整配置文件
我们将在约1000台服务器上推出已调优(和numad)的服务器,其中大多数是NetApp或3Par存储上的VMware服务器。 根据RedHats文档,我们应该选择virtual-guest配置文件。它的作用可以在这里看到:tuned.conf 我们正在将IO调度程序更改为NOOP,因为VMware和NetApp / 3Par都应该为我们做足够的调度。 但是,经过一番调查后,我不确定它们为什么会增加vm.dirty_ratio和kernel.sched_min_granularity_ns。 据我所知,vm.dirty_ratio增加到40%意味着对于内存为20GB的服务器,除非先vm.dirty_writeback_centisecs被击中,否则在任何给定的时间8GB都可能是脏的。在刷新这8GB的空间时,该应用程序的所有IO都将被阻止,直到释放脏页为止。 由于现在我们拥有更大的缓存,增加dirty_ratio可能意味着在峰值时具有更高的写入性能,但是当缓存填满IO时,将再次阻塞更长的时间(几秒钟)。 另一个是为什么他们增加了sched_min_granularity_ns。如果我理解正确,则增加该值将减少每个epoch(sched_latency_ns)的时间片数量,这意味着正在运行的任务将有更多时间来完成其工作。我可以理解这对于线程很少的应用程序来说是一件好事,但是对于例如。apache或其他线程很多的进程会不会适得其反?

3
允许的Linux密码字符列表
不幸的是,我从事Linux管理已有很短的时间了,但我仍然不知道在哪里可以找到Linux密码允许使用的字符的完整列表。我的猜测是,这可能是因为根据配置不同,不同系统上的配置可能会有所不同,例如:passwd文件与Open LDAP。使用authz / passwd / shadow文件时,是否有允许的Linux凭据的完整列表?
8 linux  password 

2
Linux:针对某些应用程序/主机名阻止IPv6
问题与目标 我们没有从ISP获得IPv6,因此我有一个IPv6隧道,该隧道可以正常工作,但是速度不是很快。而且不是很可靠。我希望“以防万一”提供IPv6,但我希望某些主机(域)仅与IPv4连接。 默认协议 在我看来,所有应用程序都首先尝试IPv6。这可能是glibc设置。如果将此默认设置颠倒(对于所有应用程序),我会好的。 网络过滤器 使用Netfilter可以阻止IPv6地址/网络,但是存在两个问题: 在应用尝试IPv4之前,它会等待IPv6超时,这会导致延迟吗? 有些领域似乎很混乱,似乎有些混乱。如果可以避免,将google.com和youtube.com分开似乎是您不希望做的事情。 我只是注意到手册页中ip route提到了路由类型unreachable: 本地发件人收到EHOSTUNREACH错误。 Netfilter DROP或REJECT也会发生同样的情况吗?这样的错误不会引起相关的延迟。 DNS过滤 另一种解决方案(如果可能的话,则比较容易)是为某些域过滤AAAA记录。如果不能(轻松):是否可以连接DNS服务器和Netfilter,以便我知道“ IP地址X属于域Y”,以便可以将其添加到Netfilter?有什么比记录所有内容和重复记录更优雅的了吗? 要走的路? 有哪些(其他)可能性,最简单的是什么?

5
在Enter处添加尾部行为会减少空白行
我喜欢less,我可以使用它跟随带有+F标志(或ShiftF热键)的日志,前后搜索以及通常在文档中自由移动。 但是缺少一件事less:通常我在文件末尾,并且我想看到新的事情正在发生。在这里,tail -f我会打enter几下,而新的日志行会与旧的行明显分开。 是否可以将其添加到less?怎么样?
8 linux  tail  less 

3
通过LAN迁移原始磁盘映像
这是我的情况: 同一数据中心中的两个专用服务器之间具有千兆以太网。 这两个专用服务器都已启动到基于Debian Squeeze的救援环境中,并添加了额外的工具和实用程序。还有足够的tmp空间(两个盒子上都有32GB的RAM)用于下载软件,安装软件包和/或根据需要进行编译。 两台专用服务器都有大约 3TB的可用空间。 “源”服务器在硬件RAID-10中具有4个1.5TB磁盘,带有Adaptec 4端口控制器。 “目标”服务器在硬件RAID-1中具有2 x 3TB磁盘,带有Adaptec 2端口控制器-与另一代相同,但端口数量不同。 可用块的数量/dev/sda相差不到10 MB,但是由于某种原因,目标服务器的阵列要小几个兆。 两个RAID阵列均配置为使用所有组成磁盘的整个磁盘表面来创建一个单个RAID卷。 操作系统以MBR模式引导;不使用UEFI引导。 我想做的事: 在块层上,将整个OS映像(仅由GPT分区表,/ boot分区和/分区中的GRUB2引导程序组成)从“源”服务器复制到“目标”服务器。 如果可能的话,复制应“实时”进行:这意味着我没有足够的空间在目的地侧存储磁盘映像的适当文件,除非我将磁盘映像作为副本解压缩到硬盘上正在发生。服务器之间的千兆以太网连接足够可靠,我对此感到满意,并且我当然会fsck在两端(源和目标)上运行,以验证传输前后文件系统是否正常。 如果可能,请不要通过网络传输块,每个块中的组成文件系统都不会使用这些块(所有分区的格式都为ext4)。这是因为超过50%的“源”磁盘是/分区中的可用空间。 调整/分区的大小,以便在复制分区时将其大小调整为适合目标磁盘的大小。 复制成功后,安装每个卷并修复对静态IP的引用,以反映新服务器的IP。(无需任何其他帮助,就可以这样做) 我的问题: 我是否应该首先计算/dev/sda每个服务器上的大小之间的差异(以字节为单位),然后使用e2resize非破坏性地减小源端上/分区的大小,以使其适合目标端的空间? 我应该dd在原始块设备上运行,/dev/sda从源到目标(通过ssh),还是应该在目标上创建等效的分区布局并dd在每个分区上运行?请注意,一次处理一个分区给我留下了引导加载程序的问题,但是如果我一次不做一个分区,那么dd一旦它写入了目标可以容纳的字节数,就需要知道停止传输数据(希望它将“封闭” /最后一个块上分区的最末端,逻辑上在源分区布局中所有其他分区的“右边”)。 一些杂项。细节: 源代码框上的主机操作系统是运行多个OpenVZ来宾的Ubuntu Server 12.04 由于两个设备均已启动,因此可以直接进行磁盘访问,而不会期望运行的操作系统对基础数据进行任何更改。

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.