Articles of shell

lockingSolaris Shell更改为普通用户

我有几十个Solaris(5.10)盒子。 默认情况下,他们使用ksh作为shell。 只有less数用户具有sudo权限。 其余的不。 我不希望我的普通用户改变到另一个shell。 这是我所做的: 最小的sudoers所以/ etc / passwd是不可能的。 最小的sudoers所以usermod -s是不可能的。 我还没有禁止访问/ bin或/ usr / bin中的shell,但是它会被完成 – 所以请忽略它尚未完成的事实。 所以,理论上他们可以编写启动脚本来执行它们,对吧? 我错过了什么吗?

新服务器中的目录复制

scheme是将Linux开发服务器中存在的所有目录,子目录,文件,符号链接复制到Linux QA服务器。 许多unix用户也被创build。 考虑一个unix用户 – edwprod ,这个文件夹/home/edwprod/里面有很多子目录和软链接。 -rwxrwxrwx 1 edwprod edwprod 0 Jan 25 13:23 ksh lrwxrwxrwx 1 edwprod edwprod 32 Jan 30 06:30 output -> /apps/application_scripts/output lrwxrwxrwx 1 edwprod edwprod 30 Jan 30 07:02 wp37 -> /apps/application_scripts/wp37 lrwxrwxrwx 1 edwprod edwprod 32 Jan 31 05:57 in_dir -> /apps/application_scripts/in_dir lrwxrwxrwx 1 edwprod edwprod 30 Jan […]

Apache打印语法错误到控制台而不是日志文件

我的一些Apacheconfiguration失败了,因为(因为控制面板中的错误,但我需要一个解决方法,直到这将得到解决): /etc/init.d/httpd start Starting httpd: Syntax error on line 30 of /home/apache/conf/domains/mydomain.conf: RUidGid takes two arguments, Minimal uid or gid file/dir, else set[ug]id to default (User,Group) [FAILED] 我想写一个脚本,会自动删除这样的configuration,但是当我input/etc/init.d/httpd start >> error.log没有写入文件。 当我尝试从/etc/init.d/httpd start | grep Syntax grep一行时, /etc/init.d/httpd start | grep Syntax发生同样的情况 /etc/init.d/httpd start | grep Syntax 。

rc.local不在启动Ubuntu上执行

我在Ubuntu 10.04。 我想在系统启动时执行脚本。 我把它添加到rc.local。 如果我手动执行rc.local,它工作正常。 如果我在恢复模式下启动系统(启动菜单中的第二个string),它也可以正常工作。 但是,如果我正常启动它不会被执行。 然而,我join睡眠20到我的脚本,并在启动过程结束暂停,但没有更多的执行。 谢谢 我认为,它依赖于脚本的内容,但无论如何 #!/bin/sh -e sleep 20 sudo service ssh start su -c 'service pgsql start' postgres sudo svnserve -d su -c 'hamachi start' root su -c 'hamachi login' root exit 0

linux + bash +将参数导出到数据文件的新文件中

我有Linux机器红帽5.1,我问以下问题 我的目标是根据data_file.txt从answer_file.txt创build新的output_file.txt文件 正如我们在这里看到的,我首先运行data_file.txt并从文件中导出所有参数,然后尝试将所有answer_file.txt打印到新文件output_file.txt 所以我会从data_file.txt得到这个新的参数文件,但我不成功 – 🙁 请指教如何将data_file.txt中的参数导出到answer_file.txt中,然后用正确的值创build新文件? 备注 – 我使用bash,而且我不想使用sed或awk来执行此任务,而且我不想更改原始data_file.txt或answer_file.txt的内容(我需要从bash shell执行Job的简单方法) [root@test1a /var/tmp]# more data_file.txt arg1=a arg2=b arg3=c [root@test1a /var/tmp]# more answer_file.txt param1=$arg1 param2=$arg2 param3=$arg3 [root@test1a /var/tmp]# . ./data_file.txt [root@test1a /var/tmp]# export arg1 arg2 arg3 [root@test1a /var/tmp]# cat ` . ./answer_file.txt ` >/var/tmp/output_file.txt -bash: ./answer_file.txt: line 4: unexpected EOF while looking for matching `'' -bash: […]

为什么我的Powershellconfiguration文件只能加载32位版本的PowerShell?

按照这个文档http://msdn.microsoft.com/en-us/library/bb613488(v=vs.85).aspx我已经创build了一个configuration文件: %windir%\system32\WindowsPowerShell\v1.0\ Microsoft.PowerShell_profile.ps1 当我运行64位版本的PowerShell时,configuration文件不会加载。 但是,当我运行x86版本的configuration文件加载正确。 如何让我的configuration文件在64位版本中正确加载。

我怎么知道是什么原因导致ssh连接启动延迟?

可能重复: 连接时ssh延迟 这是超级用户和serverfault之间的折腾,但我认为这是一个serverfaulty问题。 我在solaris盒子上开发… uname -a SunOS沙箱5.10 Generic_120011-14 sun4u sparc SUNW,UltraAX-i2 所以我经常通过腻子对它进行擦拭。 当我连接到它,我立即得到 使用用户名“stu”。 使用代理的公钥“imported-openssh-key”进行authentication 然后在我得到我的shell提示之前,它坐在那里10-20秒。 从来没有发生过,只是最近才开始使用Xvnc,但是我杀了所有的东西,在任何地方我都找不到任何错误。 当我看到/ var / adm / messages文件时,我得到了这个 5月15日14:16:10 sandbox sshd [15306]:[ID 800047 auth.info]从10.8.5.14端口3363 ssh2接受公共密钥 然后拖延,然后我得到我的提示。 我怎么才能知道发生了什么事情,这个过程需要很长时间才能启动?

AIX中“df -ki”的输出格式是什么?

我只想知道在AIX系统中运行命令df -ki时的输出格式(列顺序)。 我没有访问AIX系统,并且因为它不能在x86机器上运行,所以我不能在虚拟机中尝试它。 有人可以访问AIX回答AIX中COMMAND命令的实际输出吗? 我想运行这个命令作为脚本的一部分,并parsing特定字段的输出,因此需要输出格式。

Test-Path在64位和32位PowerShell中返回不同的结果

我正在开发一个应该在64和32Bit PowerShell下运行的脚本。 不幸的是,似乎Test-Path在64和32环境中返回不同的结果。 两个会话都在同一用户下运行,此用户对特定registry项具有完全访问权限。 64Bit Powershell >test-path HKLM:\SOFTWARE\Citrix\ProvisioningServices True 32Bit Powershell(x86) >test-path HKLM:\SOFTWARE\Citrix\ProvisioningServices False 任何想法?

按创build时间在服务器之间复制文件

我的bash脚本知识是非常薄弱的​​,这就是为什么我在这里求助。 什么是最有效的bash脚本根据性能来查找和复制文件从一个LINUX服务器到另一个使用规格说明如下。 我需要一个bash脚本,它只能在0到10分钟之间的时间间隔内,在名称为“Z”的目录中find在服务器A中创build的新文件。 然后将它们传输到服务器B.我认为这可以通过格式化查询并为每个创build的新文件执行“scp /X/Y…/Z/file root @ hostname:/ X / Y … / Z /“如果脚本在服务器B上找不到这样的远程path,它将继续复制第二个文件存在的目录。 文件应该复制权限,组,所有者和创build时间。 X / Y …是各种目录path。 我想设置一个cron作业来每10分钟执行一次这个脚本。 所以在这种情况下performance是非常重要的。 谢谢。