我们想在批处理文件中使用这个简单的命令: msiexec /package "\path\package.msi" /quiet /norestart
我们希望将其部署到所有用户及其机器上。我们希望它只安装一次,我们怀疑如果我们只在批处理脚本中保留这个命令(而不是添加一些 IF 和 ELSE),那么可能会发生一些意想不到的事情,例如每次用户登录时都会重复安装等等。
如果我们在脚本中只保留这个命令,并且已经安装了这个包的用户登录,然后脚本执行,实际上会发生什么?
长话短说 - 我必须通过网络在 PC 上远程安装任意 Linux 发行版。这不是服务器,我将安装桌面环境。
问题是我无法物理访问这台机器,它也没有显示器、键盘或鼠标——所以我能从那些机器的人那里得到的唯一帮助就是将它插入网络并打开它在。最重要的是,PC 是全新的,因此它没有现有的操作系统。
从好的方面来说,我可以通过 root SSH 访问与 PC 位于同一本地网络中的 Linux 服务器......
在远程完成整个过程的同时,我将如何安装操作系统?
提前致谢!
我有兴趣学习一种修改 Linux 发行版安装 ISO 的好方法,以便:
我不确定实现这一目标的最佳方法。我已经阅读了一些关于使用 debian 的预置功能的内容,但似乎预置仅限于自动回答安装过程中提出的问题。
我将修改这个 ISO(最有可能是 debian 风格的)以用于通过 KVM 安装新的虚拟机。
我正在调查 Windows Server Update Service (WSUS),要更新的软件列表看起来非常固定。是否可以将第三方软件添加到列表中?
如果没有,有哪些可能的选择?Microsoft SMS(认为它现在称为系统中心)?还要别的吗?
当我在 linux 上使用 yum installer 安装一些东西时,我得到这样的东西:
可以吗 [y/d/N]: _
那么……什么是“D”选项?
我有 50 多台机器运行 CentOS 6.4 或 6.8。我希望使用配置脚本(例如,使用“基本服务器”模板并根据硬件 ID 设置主机名/静态 IP),使用位于公共 NFS 和/或 CIFS 共享上的安装介质,使用 CentOS 7 重新安装这些机器在我的本地网络上。后来,我打算用 Ansible 远程控制这些机器,所以我也想运行一个安装后脚本。
我如何远程(通过 SSH)触发此重新安装?
基于 Iain 的回答并进行了一些谷歌搜索,以下是从 CentOS 7 执行此类安装的方法:
将 vmlinuz 和 initrd.img 下载到引导中:
sudo curl -o /boot/vmlinuz http://mirror.zetup.net/CentOS/7/os/x86_64/isolinux/vmlinuz
sudo curl -o /boot/initrd.img http://mirror.zetup.net/CentOS/7/os/x86_64/isolinux/initrd.img
Run Code Online (Sandbox Code Playgroud)
将自定义菜单条目添加到/etc/grub.d/40_custom:
menuentry "My custom boot entry" {
set root=(hd0,1)
linux /vmlinuz ks=http://my-server/ks.cfg
initrd /initrd.img
}
Run Code Online (Sandbox Code Playgroud)
在linux上面的行中添加任何其他选项。
将自定义条目设为 中的默认选择/etc/default/grub:
GRUB_DEFAULT="My custom boot entry"
Run Code Online (Sandbox Code Playgroud)
然后运行:
grub2-mkconfig --output=/boot/grub2/grub.cfg
Run Code Online (Sandbox Code Playgroud)
喝杯咖啡并重新启动:
reboot
Run Code Online (Sandbox Code Playgroud) 我已经完成了http://www.ricocheting.com/server/php.html中给出的以下程序来安装 PHP 和 Apache。当我启动 Apache 服务器时,它显示“无效的命令 PHPIniDir”。我该如何解决这个问题?
我想学习PHP。当我开始安装时,我遇到了这个问题。
编辑 Apache Conf 文件
使用记事本打开 httpd.conf(应该是开始菜单快捷方式“Apache HTTP Server 2.2 > 配置 Apache 服务器 > 编辑 Apache httpd.conf 配置文件”)。在文件的开头或结尾添加以下几行:(注意:务必将 C:/php 部分更改为您安装 PHP 的目录)
LoadModule php5_module "C:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"
Run Code Online (Sandbox Code Playgroud) 我将 PHP 配置为在 /etc/php5/apache2 中查找 php.ini 文件。phpinfo() 的输出表示路径设置正确,但也表示未加载配置文件。我暂时将 php.ini 权限更改为 777 以测试该问题,而权限不是问题。还有什么问题?
当我编译 php 时,我做了:
sudo ./configure --with-apxs2=/usr/sbin/apxs --with-mysql --enable-so --with-config-file-path=/etc/php5/apache2 --sysconfdir=/etc/php5 --with-config-file-scan-dir=/etc/php5/conf.d
Run Code Online (Sandbox Code Playgroud)
phpinfo() 说:
Configuration File (php.ini) Path /etc/php5/apache2
Loaded Configuration File (none)
Scan this dir for additional .ini files (none)
Additional .ini files parsed (none)
Run Code Online (Sandbox Code Playgroud)
另外 php --ini 说:配置文件 (php.ini) 路径:/usr/local/lib 加载的配置文件:/etc/php5/apache2/php.ini 扫描其他 .ini 文件:(无)其他 .ini解析的文件:(无)
如果我将 php.ini 放在 /usr/local/lib 中,则配置文件加载正常(尽管不会加载额外的 .ini 文件)。我不确定为什么会发生这种情况,因为我在编译 PHP 时设置了选项。
第一次安装 Server 2008 时,我心想:“我不记得被要求设置密码。” 所以我第二次安装了它,现在确定它必须要求输入默认密码。
$ sudo aptitude install sun-java6-jdk
[sudo] password for fal:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
No candidate version found for sun-java6-jdk
No candidate version found for sun-java6-jdk
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 41 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Writing extended state information... Done
Reading package …Run Code Online (Sandbox Code Playgroud) installation ×10
deployment ×2
php ×2
apache-2.2 ×1
aptitude ×1
centos ×1
debian ×1
group-policy ×1
grub2 ×1
java ×1
linux ×1
msi ×1
options ×1
password ×1
unix ×1
update ×1
windows ×1
yum ×1