Articles of linux

在GNU / Linux上自动更新较新的JRE

如何设置GNU / Linux机器来自动更新较新版本的Java Runtime Environment(JRE)? 目前的困难是想要使用更新版本的Java(Java 7,目前),并且还要合理地更新错误修正,尤其是安全更新,而不需要过多的手动工作。 你可以依靠O / S分发,但是它们自然是保守的,因此只提供一个旧的Java版本的bug修复版本。 在RedHat 6上没有Java 7。 您可以从Oracle网站手动下载JRE,并将您的JAVA_HOME环境variables设置为指向它。 但是,如果您希望更新企业中的多台计算机,这是不切实际的。 例如,在RedHat 6上使用Java 7并自动(或半自动)更新Java 7 JRE作为Oracle发行版缺陷修复程序时,是否有实际的方法?

Windows 7 Samba的问题

我们有一个奇怪的samba问题只影响一个用户。 我们的桑巴设置如下: 红帽企业Linux服务器版本5.4(Tikanga) – Samba服务器 Samba版本3.0.33-3.14.el5 – Samba版本 域控制器WIN2008R2标准 – Windows DC Windows 7 64位 – 客户端电脑 网友提到他几星期前强行closures电脑后面临这个问题。 对于所有用户,当我们访问Windows中的\\sambaservername时,它将显示samba服务器中的所有共享,但是对于此用户,一旦他启动了他的PC,他将无法访问\\sambaservername ,错误消息 Windows无法访问\\sambaservername 解决问题的当前解决方法: 尝试访问\\sambaservername一个共享,例如\\sambaservername\sharedfolder1 。 但即使这样做,它也会在开始时提示错误,错误信息如下 login失败:未知的用户名或密码错误。 用户需要再次input凭据,他可以访问共享。 此后,他将能够访问\\sambaservername没有任何问题。 但是一旦他重新启动电脑,问题将会持续。 目前为止所做的故障排除 确保以下设置: 转到:控制面板→pipe理工具→本地安全策略select:本地策略→安全选项 “networking安全:LAN Manager身份validation级别”→发送LM和NTLM响应“NTLM SSP的最低会话安全性”→取消选中:需要128位encryption build议用户重置密码并重试,但问题仍然存在 在用户的个人电脑上试用我的帐户,没有问题。 尝试了包括我的其他Windows 7 PC上的用户帐户,但问题仍然存在。 Windows XP没有这个问题。 确保在Windows 7 PC上没有存储的crendentials。 检查控制面板中的凭据pipe理器以及键入此命令rundll32.exe keymgr.dll, KRShowKeyMgr 在samba服务器上重新启动winbindd守护进程,但无济于事。 我怀疑这是由于一些caching问题,但不知道问题在哪里。 每当用户访问\\sambaservername发生错误,以下错误将被logging在samba服务器中: [2012/10/10 17:10:26, 1] smbd/sesssetup.c:reply_spnego_kerberos(316) […]

如何通过AWS上的CloudInit更改默认用户(ubuntu)

我正在使用CloudInit在AWS上自动启动我的实例。 我遵循http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/annotate/head%3A/doc/examples/cloud-config.txt中的(稀缺)文档和关于/usr/share/doc/cloud-init ,但仍然没有想出如何更改默认的用户名(ubuntu,id:1000)。 我知道我可以创build一个脚本来手动删除默认的ubuntu并添加我的用户,但似乎反直觉鉴于CloudInit存在完全自动化的初始设置。 有任何想法吗?

在使用22TB导出的JFS文件系统运行NFS的Debian服务器上的写入性能不佳

我正在运行一个debian服务器,通过NFS(nfs-kernel-server)导出一个大的JFS文件系统(22TB)。当试图写入NFS共享时,性能非常差。 22TB磁盘坐在使用iSCSI安装的NAS上。 它会在预计的线速度附近爆发片刻,然后闲置几秒钟。 在低kb /秒时测量的stream量非常less。 等待偷看写。 从NFS安装读取时,系统以预期的速度(11MB / sec)运行。 使用SFTP,rsync或本地应对(非nfs)时不会发生此问题。 这个问题在稳定和testing版本之间依然存在。 在同一台机器上,我有一个14TB的ext4文件系统使用完全相同的导出configuration,不会共享问题。 这个份额不是经常使用,因此不会消耗资源。 NFS服务器: cat /etc/exports /data2 10.1.20.86(rw,no_subtree_check,async,all_squash) cat /sys/block/sdb/queue/scheduler noop [deadline] cfq cat /etc/default/nfs-kernel-server RPCNFSDCOUNT=8 RPCNFSDPRIORITY=0 RPCMOUNTDOPTS=–manage-gids NEED_SVCGSSD= RPCSVCGSSDOPTS= NFS客户端: cat /etc/fstab 10.1.20.100:/data2 /root/incoming nfs rw,noatime,soft,intr,noacl 0 2 cat /sys/block/sdb/queue/scheduler noop [deadline] cfq cat /proc/mounts 10.1.20.100:/data2/ /root/incoming nfs4 rw,noatime,vers=4,rsize=262144,wsize=262144,namlen=255,soft,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.1.20.86,minorversion=0,addr=10.1.20.100 0 0 这个问题让我非常难过。 任何帮助将非常欢迎。 谢谢。

e2fsck极其缓慢,尽pipe存在足够的内存

我有这个外部的USB磁盘: kaefert@blechmobil:~$ lsusb -s 2:3 Bus 002 Device 003: ID 0bc2:3320 Seagate RSS LLC 在这个dmesg输出中可以看到,有一些问题可以防止磁盘被挂载: kaefert@blechmobil:~$ dmesg … [ 113.084079] usb 2-1: new high-speed USB device number 3 using ehci_hcd [ 113.217783] usb 2-1: New USB device found, idVendor=0bc2, idProduct=3320 [ 113.217787] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1 [ 113.217790] usb 2-1: […]

高系统CPU负载(%sys)导致的高负载平均值

我们有高stream量的网站服务器。 最近我们搬走了 2 x 4核心服务器(/ proc / cpuinfo中的8个核心),32 GB RAM,运行CentOS 5.x 2个4核心服务器(16个核心在/ proc / cpuinfo中),32 GB RAM,运行CentOS 6.3 运行nginx作为代理的服务器,mysql服务器和sphinx-search。 stream量很高,但是mysql和sphinx-search数据库相对较小,而且通常情况下所有的工作都非常快。 今天,服务器的负载平均值为100 ++。 看上面和sar,我们注意到(%sys)是非常高的 – 50到70%。 磁盘利用率不到1%。 我们尝试重新启动,但重新启动后存在问题。 在任何时候,服务器至less有3-4 GB的可用内存。 只有dmesg显示的消息是“端口80上可能发生SYN洪泛。发送cookie”。 这里是sar的片段 11:00:01 CPU %user %nice %system %iowait %steal %idle 11:10:01 all 21.60 0.00 66.38 0.03 0.00 11.99 我们知道这是交通问题,但是我们不知道如何着手未来以及在哪里检查解决scheme。 有没有一种方法可以find那些“66.38%”的确切位置。 任何build议,将不胜感激。 更新:今天的平均负载为“正常”,“sys%”也可以〜4%。 但是今天的交通比昨天less了20-30%。 这让我想到昨天的问题是因为TCP的一些内核设置。

Linux软件RAID6:重build速度慢

我正试图find重build软件raid6的瓶颈。 ## Pause rebuilding when measuring raw I/O performance # echo 1 > /proc/sys/dev/raid/speed_limit_min # echo 1 > /proc/sys/dev/raid/speed_limit_max ## Drop caches so that does not interfere with measuring # sync ; echo 3 | tee /proc/sys/vm/drop_caches >/dev/null # time parallel -j0 "dd if=/dev/{} bs=256k count=4000 | cat >/dev/null" ::: sdbd sdbc sdbf sdbm sdbl […]

如何用expect命令创build一个else语句?

如果一个已知的主机不存在,我有以下期望的脚本添加一个已知的主机。 #!/usr/bin/expect spawn ssh user@domain "cd /home/user" expect "Are you sure you want to continue connecting (yes/no)?" send "yes\r" interact 这个脚本在我第一次进入设备的时候工作的很好,但是如果我第一次进入设备的时候会抛出一个错误 send: spawn id exp6 not open while executing "send "yes\r"" (file "./testing_spawn.sh" line 4) 大概是因为它继续期待的stringAre you sure you want to continue connecting (yes/no)? 如果该消息不显示,我如何才能告诉脚本进行interact ?

扩展运行Linux的RAID 1(HP SmartArray P410i)

我接手了一个相当简单的服务器设置,运行Ubuntu 11.10(Kernel 3.0.0-12-server x86_64): => ctrl all show config Smart Array P410i in Slot 0 (Embedded) (sn: removed) array A (SAS, Unused Space: 1335535 MB) logicaldrive 1 (279.4 GB, RAID 1, OK) physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 1 TB, OK) physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 1 TB, OK) 最初有两个300GB磁盘被1TB磁盘取代,我现在必须扩展逻辑卷以使用额外的空间。 但是,当试图这样做时,我得到以下警告: => […]

nginx代理+ ssl + clr“400错误请求”错误

这里有一个情况 – 有一个处理SSL证书的nginx代理,在我们决定添加一个撤销列表pipe理之前,这个代理是安全的。 这是当“ssl_crl”行进场,并拧紧了一切。 server { listen 80; rewrite ^ https://$host$request_uri permanent; } server { listen 443 ssl; server_name example.com; ssl on; ssl_certificate /home/netadmin/keys/tid.crt; ssl_certificate_key /home/netadmin/keys/tid.key; ssl_session_cache shared:SSL:10m; ssl_client_certificate /home/netadmin/keys/personchain.pem; ssl_crl /home/netadmin/keys/personlist.crl; ssl_verify_client on; ssl_verify_depth 2; error_log /var/log/nginx/debug.log debug; location / { proxy_pass http://111.111.111.111:80; } 每当用户尝试使用SSL进行身份validation时,服务器将始终提供“400错误请求”错误。 请注意,完全相似(不同,因为语法)configuration在Apache中完美工作。 现在证书是完美无瑕的,这已经被多次certificate了,例如validation检查 openssl crl -CAfile personchain.pem -inform PEM -in […]