Questions tagged «automation»

将任何手动流程转换为可以大部分或完全“免提”运行的手动流程的领域

9
如何使用密码自动进行SSH登录?
如何使用密码自动进行SSH登录?我正在配置我的测试VM,因此不考虑高安全性。选择SSH可以通过最少的配置获得可接受的安全性。 例如) echo password | ssh id@server 这行不通。 我记得我是用有人指导我的一些技巧来做到这一点的,但现在我不记得我曾经使用过的技巧了。
419 ssh  password  automation 

2
在Ubuntu上自动安装postfix
我的系统配置脚本执行“ apt-get install -y postfix”。不幸的是,当后缀安装程序显示配置屏幕时,脚本被暂停。有没有一种方法可以强制postfix在安装过程中使用默认值,以便自动脚本可以继续运行到最后? postfix安装程序是否可以检查/ etc / postfix中的现有配置,如果存在,则不会在配置屏幕上打扰用户?

6
自动配置新计算机
我的公司正在将所有用户从旧的Windows XP计算机升级到较新的四核Win7计算机。这是一件好事-早就应该升级我们的工作站-但我现在花了大量时间配置新计算机。有什么办法可以自动化这个过程? 我几乎对每台计算机执行的步骤: 运行Win7安装过程(我们主要使用惠普,因此我们得到了愚蠢的“计算机又是个人的”东西。 卸载bloatware(诺顿,必应栏,roxio等) 安装更新 添加到域并配置网络设置 安装Office和其他公司特定的应用程序 配置重要的快捷方式(任务栏上的Outlook) 在那之后我还有其他几件事可以自动化,但是由于许可证密钥,密码等原因不太可能。 配置Outlook 使用轻松传输向导提取文件/设置 映射网络驱动器 我知道可以创建完整的计算机映像,但是如何在不同的硬件/驱动程序下工作?那Win7许可证密钥呢?如果有办法做到这一点,那么有什么最好的(最好是免费/开源)软件来做到这一点?

5
Linux管理员如何提高他们的Shell脚本和自动化技能?
在我的组织中,我与一组NOC员工,刚起步的初级工程师和少数高级工程师一起工作。所有的重点都放在Linux上。公司培养人才的一个有趣步骤是,从NOC到高级工程师队伍之间存在一条道路。将人才库视为一个相对较新的人才,我发现技能组中的差异会随着时间的流逝而逐渐增加... 有些工程师非常了解一种或几种特定技术,并且经常沉浸其中……例如,MySQL,防火墙,SAN存储,负载均衡器... 还有其他一些通才,可以使用多种技术。 所有人都学习了足够的Linux(命令,进程)以执行他们每天需要和使用的内容。 一些员工之间的一个区别因素是他们对脚本,自动化和配置管理方法的接受程度。例如,我们有两名工程师负责大部分Amazon AWS CloudFormation工作,另一名工程师负责处理大部分Puppet基础架构。也许有四分之一的工程师精通BASH Shell脚本。 在上下文看着这个令人难以置信的高要求在就业市场上的DevOps技能,我很好奇其他组织如何培养这些技能的发展和壮大自己的内部人才。脚本似乎不是一个特别可教的概念。 系统管理员如何改善其Shell脚本? 对于那些不/不能跟上DevOps范例的工程师,还有地方吗? 我们是否只是简单地假设随着这些技术的发展就会有人落后?这样可以吗?

4
如何在不使用Jobs的情况下并行运行PowerShell脚本?
如果我有一个脚本需要在多台计算机上运行,​​或者需要使用多个不同的参数运行,那么我该如何并行执行该脚本,而又不会产生使用生成新PSJobStart-Job的开销? 例如,我想在所有域成员上重新同步时间,如下所示: $computers = Get-ADComputer -filter * |Select-Object -ExpandProperty dnsHostName $creds = Get-Credential domain\user foreach($computer in $computers) { $session = New-PSSession -ComputerName $computer -Credential $creds Invoke-Command -Session $session -ScriptBlock { w32tm /resync /nowait /rediscover } } 但是我不想等待每个PSSession连接并调用命令。没有乔布斯,如何并行完成此任务?

5
SSH,在登录时运行命令,然后保持登录状态?
我以期望的方式尝试了此操作,但未成功:最后关闭了连接。 我们是否可以通过ssh运行脚本,该脚本将登录到远程计算机,运行命令而不断开连接? 因此,将ssh放入一台计算机中,将cd插入该目录,然后运行命令,并保持登录状态。 乔纳森 (我曾经用过) #!/usr/bin/expect -f set password [lrange $argv 0 0] spawn ssh root@marlboro "cd /tmp; ls -altr | tail" expect "?assword:*" send -- "$password\r" send -- "\r" interact

7
自动化服务器部署
我发现我经常为许多客户设置几乎相同的服务器和VPS,这可能非常耗时。通常,每个部署之间唯一发生变化的就是要提供服务的不同网站。是否有一种简单的方法可以自动完成所有这些工作,并采取无聊的单调方式来设置56个相同的服务器? 到目前为止,我已经部署的服务器仅是Ubuntu,但我可能开始使用其他Linux操作系统甚至Windows。到目前为止,我已经看过Capistrano,但它似乎只专注于编写小红宝石程序来完成这项工作,而且我一点也不了解


6
Ansible:如果满足特定条件,则在vars文件中有条件地定义变量
根据在group_vars中定义的变量的值(真/假),我尝试在vars文件中定义一些变量。它们的值取决于var组的值。 我当前的var文件如下所示: {% if my_group_var %} test: var1: value var2: value ... varn: value {% else %} test: var1: other_value var2: other_value ... varn: other_value {% endif %} 对于我的每个角色,我都使用在此文件中定义的变量。 我的测试剧本如下所示: - name: blabla hosts: blabla vars_files: - <path>/test_vars.yml roles: blabla 运行剧本后收到的错误是: {% if my_group_var %} ^ here exception type: <class …

9
如何在启动时为服务设置ulimit?
我需要让mysql使用大页面来设置ulimit-我已经在limits.conf中做到了。但是,limits.conf(pam_limits.so)不会为init读入,仅对于“真实” shell才读入。我通过在初始脚本启动函数中添加“ ulimit -l”来解决此问题。我现在需要某种可重复的方式来执行此操作,因为这些框是由厨师管理的,并且我们不希望接管RPM实际拥有的文件。

4
在MySQL所有表的所有列中更改字符集和排序规则
我需要在所有表的所有列中执行这些语句。 alter table table_name charset=utf8; alter table table_name alter column column_name charset=utf8; 是否可以在MySQL内部以任何方式自动执行此操作?我宁愿避免mysqldump 更新:理查德·布罗诺斯基向我展示了方式:-) 我需要在每个表中执行的查询: alter table DBname.DBfield CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; 疯狂查询以生成所有其他查询: SELECT distinct CONCAT( 'alter table ', TABLE_SCHEMA, '.', TABLE_NAME, ' CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;' ) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'DBname'; …
18 mysql  automation  sql 

1
运行Ansible的pip模块时,如何在PATH前面添加?
我正在尝试使用Ansible的pip模块将psycopg2安装到Python virtualenv中,但是我需要在PATH前面添加一个条目才能正确构建(它需要知道包含的目录的路径pg_config)。我知道可以传递environment给该pip模块,但是我不确定如何添加而不是覆盖PATH。 在这里,我试图在路径前添加必要的目录,但是它将覆盖virtualenv PATH并失败: - pip: name: psycopg2 virtualenv: /path/to/my/venv environment: PATH: /usr/pgsql-9.3/bin:$PATH

8
将Powershell脚本与非Windows工作流程集成的方法?
我喜欢早晨新机器的气味。 我正在自动化一个机器创建工作流程,该工作流程涉及整个基础架构中的多个独立系统,其中一些系统涉及Solaris主机上15年之久的perl脚本,PXE引导Linux系统以及Windows Server 2008上的Powershell。 我可以编写各个部分的脚本,并且将Linux和Unix自动化集成在一起非常简单,但是我对如何可靠地将Powershell脚本与其余过程结合在一起感到困惑。 我希望该过程是在Linux主机上开始的,因为我以为它会以驻留在Apache服务器上的Web应用程序的形式结束,但是如果它需要在Windows上开始,那么我很犹豫。 理想情况下,我希望psexec可以使Linux在Windows上运行,但是Cygwin似乎在朝着这个方向做出了回答,尽管我很欣赏他们付出的所有辛勤劳动,但从来没有感觉到这种错误,如果你明白我的意思。它非常适合台式机并提供许多功能,但是我觉得Windows服务器应被视为Windows服务器,而不是混混的Unix计算机(顺便说一句,我也反对OSX服务器,它们实际上是 Unix) 。无论如何,除非这是最后一个也是唯一的选择,否则我不想与Cygwin一起使用。 因此,我想问的是,是否有一种方法可以在Linux的Windows计算机上执行作业。没有Cygwin。我乐于接受各种想法和建议,包括“白痴,每个人都使用Cygwin,所以请认真对待并加以处理”。提前致谢!


4
git clone-失败,而不是提示输入凭据
在自动化工具-Web前端,CI系统中克隆git存储库时,有时git clone调用会打开提示询问用户名和密码(例如,在克隆不存在的Github存储库或缺少ssh密钥的新节点上时) )。 我如何使git失败(最好是显示明智的错误消息和退出代码),而不是等待服务器进程为其提供用户名和密码?
14 git  automation 

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.