How do you install a Topshelf service in a remote machine? - topshelf

To install a Topshelf service, I normally simply do:
myservice.exe install
If I want to install the service on a remote machine, I can't just do:
\\server\c$\myservice.exe install
...because it would still install the service on my local machine.
How can I install a Topshelf service on a remote machine without having to log onto that machine and run the executable directly from there?

Microsoft provides a tool called PsExec. It has a whole bunch of feature one of which is to run command on remote machines.
Edit:
File Deployment: To get the files to the target machine you would have to do some sort of copy, whether that be manually or with some sort of script.
Install: Install psexec on your machine, it may need to be installed on the remote machine but I do not remember. Open command prompt on your machine, type
psexec \\remotecomputername -u admin#domain.com -p p#$$w0rd "c:\applications\myprogram\myprogram.bat"
In this case remotecomputername is the name of the computer your are targeting. If you need to login as another user, use the -u and -p switches in the example and finally, put the path to the exe "c:\applications..."

Related

Installing SSH on local windows machine for AWS configuration

I am configuring my AWS CLI and I am trying to setup SSH. Whenever type in anything (I am just trying the default "aws-eb" I always get the error "To use this command, SSH must be installed on your local machine and available from the command line.".
Amazon says I must have ssh-keygen as well as SSH installed but I can't really find where to install SSH onto my computer.
I have installed OpenSSH Client and OpenSSH server through windows settings but that doesn't work. Can anyone help?

How to install Redis on Windows 10 pc [duplicate]

How do I run Redis on Windows? The Redis download page just seems to offer *nix options.
Can I run Redis natively on Windows?
Historically, Microsoft had a Windows port of redis, which was released as Redis-64, which offers a full distribution of redis for Windows.
The Microsoft port is now deprecated, but some alternatives have sprung up to fill that void:
Memurai is the alternative officially recommended on the Redis-64 deprecation page; it is a commercial offering with free developer tier, maintained by Janea Systems
redis-windows is another unofficial port, which also exists
This release includes the redis-server.exe (memurai.exe on Memurai) application that runs a Redis instance as a service on your windows machine, as well as redis-cli.exe (memurai-cli.exe on Memurai) which you can use to interact with any Redis instance.
The RGL repository has historically been listed as an alternative Windows port for Redis, but this repository has not been maintained for some time and implements an older version of Redis than the Microsoft port.
Update
If you have Windows Subsystem for Linux (WSL), natively on Windows 10 and Windows Server 2019 you can do it per
Ogglas answer
Or follow these instructions to run a Redis database on Microsoft Windows
Turn on Windows Subsystem for Linux
In Windows 10, Microsoft replaced Command Prompt with PowerShell as the default shell. Open PowerShell as Administrator and run this command to enable Windows Subsystem for Linux (WSL):
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Reboot Windows after making the change — note that you only need to do this once.
Launch Microsoft Windows Store
start ms-windows-store:
Then search for Ubuntu, or your preferred distribution of Linux, and download the latest version.
Install Redis server
Installing Redis is simple and straightforward. The following example works with Ubuntu (you'll need to wait for initialization and create a login upon first use):
sudo apt-add-repository ppa:redislabs/redis
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install redis-server
Please note that the sudo command might or mightn't be required based on the user configuration of your system.
Restart the Redis server
Restart the Redis server as follows:
sudo service redis-server restart
Verify if your Redis server is running
Use the redis-cli command to test connectivity to the Redis database.
$ redis-cli
127.0.0.1:6379> set user:1 "Ben"
127.0.0.1:6379> get user:1
"Ben"
Please note: By default, Redis has 0-15 indexes for databases, you can change that number of databases NUMBER in redis.conf.
Stop the Redis Server
sudo service redis-server stop
Source :How to Install Redis on Windows
I found one more simple way to install Redis under Windows
Download the latest Redis .msi file from
https://github.com/MSOpenTech/redis/releases
after installation. The Redis service is installed, and we can operate it from Service manager
If you want to install MSOpenTech's latest port of Redis, on a Windows server, watched over by a Windows Service, without having to build anything yourself, read on.
MSOpenTech's seems to be the only port that is actively trying to keep up with the latest and greatest Redis. They claim it is production-ready, but they haven't exactly packaged it up neatly for installation on a server, especially if you want to run their RedisWatcher service to keep an eye on it, which is recommended. (I tried building RedisWatcher myself per their instructions, but the required Wix Toolset managed to mess up my system pretty good. I won't go into it.) Fortunately they've provided all the binaries you need, just not all in one place. From the README:
So far the RedisWatcher is not carried over to 2.6. However this
should not be affected by the Redis version, and the code in the 2.4
branch should work with the Redis 2.6 binaries.
So you'll need to download binaries from 2 branches in order to get all the necessary bits. Without further ado, here are the steps:
Download and extract the Redis binaries from the 2.6 branch
Copy all extracted binaries to c:\redis\bin
Create another folder at c:\redis\inst1
Download and extract the RedisWatcher binaries from the 2.4 branch
Run InstallWatcher.msi. This should create a Windows service called Redis watcher.
Open up the Windows Services console and start the Redis watcher service.
(optional) RedisWatcher should have installed to C:\Program Files (x86)\RedisWatcher. There you'll find a config file called watcher.conf, which you can edit to set up additional instances, use different paths than I specified in steps 2 & 3, etc. You will not need to restart the service for changes to take effect.
The most updated (only few minor releases behind) version of Redis can be found here. This repository provides you with 3.2.100 version (current is 3.2) whereas the most upvoted answer gives you only 2.4.6 version and the last update to the repo was 2 years ago.
The installation is straightforward: just copy everything from the archive to any folder and run redis-server.exe to run the server and redis-cli.exe to connect to this server through the shell.
To install Redis for Windows
You can choose either from these sources
https://github.com/MSOpenTech/redis/releases
or
https://github.com/rgl/redis/downloads
Personally I preferred the first option
Download Redis-x64-2.8.2104.zip
Extract the zip to prepared directory
run redis-server.exe or redis-server.exe --maxheap 2gb
then run redis-cli.exe
You can start using Redis now, please refer for commands
Maybe its a little Late but, I was able to run Redis on Windows 10 Aniversary Update.
Windows 10 Aniversary Update Comes with Bash on Ubuntu on Windows, simply, it comes with bash.
Below are the two tutorial that I followed:
1- How to Install and Use the Linux Bash Shell on Windows 10
2- How To Install and Use Redis
Below is the image of running Redis.
Enjoy :)
If you have Windows Subsystem for Linux (WSL), natively on Windows 10 and Windows Server 2019 you can do it like this:
Set up WSL:
To enable Windows Subsystem for Linux, follow the instructions on
Microsoft Docs. The short version is: In Windows 10, Microsoft
replaces Command Prompt with PowerShell as the default shell. Open
PowerShell as Administrator and run this command to enable Windows
Subsystem for Linux (WSL):
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Reboot Windows after making the change—note that you only need to do this one time.
Download and install one of the supported Linux distros from the Microsoft Store. Ubuntu works fine.
Note that Ubuntu 20.04 LTS may give you some trouble because of a known issue with the realtime clock (as of August 2020). Choosing Ubuntu 18.04 LTS instead avoids that issue.
Install and Test Redis:
Launch the installed distro from your Windows Store and then install redis-server. The following example works with Ubuntu (you’ll need to wait for initialization and create a login upon first use):
> sudo apt-get update
> sudo apt-get upgrade
> sudo apt-get install redis-server
> redis-cli -v
Restart the Redis server to make sure it is running:
> sudo service redis-server restart
Execute a simple Redis command to verify your Redis server is
running and available:
$ redis-cli
127.0.0.1:6379> set user:1 "Oscar"
127.0.0.1:6379> get user:1
"Oscar"
To stop your Redis server:
> sudo service redis-server stop
Source:
https://redislabs.com/blog/redis-on-windows-10/
https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux
Go to the releases and you can get a ZIP file containing the relevant files as well as a Word document called RedisService.docx with the following instructions:
Installing the Service
--service-install
This must be the first argument on the redis-server command line. Arguments after this are passed in the order they occur to Redis when the service is launched. The service will be configured as Autostart and will be launched as "NT AUTHORITY\NetworkService". Upon successful installation a success message will be displayed and Redis will exit.
This command does not start the service.
For instance:
redis-server --service-install redis.windows.conf --loglevel verbose
And then later, in the same document, another example:
The following would install and start three separate instances of Redis as a service:
redis-server --service-install -–service-name redisService1 –port 10001
redis-server --service-start --service-name redisService1
redis-server --service-install --service-name redisService2 –port 10002
redis-server --service-start --service-name redisService2
redis-server --service-install --service-name redisService3 –port 10003
redis-server --service-start --service-name redisService3
From what I can gather, this appears to be the new way forward rather than messing with a separate Windows service to monitor and restart the CLI.
Download redis from
Download Redis for windows
Then install it
open cmd with admin rights
run command net start redis
Thats it.
MS Open Tech recently made a version of Redis available for download on Github. They say that it isn't production ready yet, but keep an eye on it.
Github repo
Download releases as MSIs
You can use Memurai for Windows, a Redis-compatible cache and datastore for Windows, currently compatible with Redis 5. Memurai aims to fulfill the need for a supported Redis-compatible datastore on the Windows platform. At its core, it’s based on Redis source code, ported to run natively on Windows, and it’s designed to provide the level of reliability and performance required for production environments. Memurai is free for development and testing. You can learn more and download Memurai at https://www.memurai.com.
Alexis Campailla
CEO, Memurai
There are two ways. You can use MSI installation file or do it manually:
First download the msi or the zip file:
You can download both files from here:
https://github.com/MicrosoftArchive/redis/releases
Watch video tutorial (video covers example of both installations)
See this installation video tutorial: https://www.youtube.com/watch?v=ncFhlv-gBXQ
Instruction - for those who can not YT at work:
You can download a moderately out-of-date precompiled version of Redis for 32-bit
and 64-bit Windows thanks to Dusan Majkic from his GitHub page: https://github.com/dmajkic/redis/downloads. Go ahead and do that now.
After you download Redis, you’ll need to extract the executables from the zip file.
As long as you’re using a version of Windows more recent than Windows XP, you
should be able to extract Redis without any additional software. Do that now.
After you’ve extracted either the 32- or 64-bit version of Redis to a location of your
choice (depending on your platform and preferences; remember that 64-bit Windows
can run 32- or 64-bit Redis, but 32-bit Windows can only run 32-bit Redis), you can
start Redis by double-clicking on the redis-server executable. After Redis has
started, you should see a window similar to figure A.1.
src: https://redis.com/ebook/appendix-a/a-3-installing-on-windows/a-3-2-installing-redis-on-window/
Since MSOpenTech's port of Redis is no longer maintained - anyone interested in native port of Redis for Windows can now get the version 4.0.14 and 5.0.10 from here: https://github.com/tporadowski/redis/releases.
This fork is a merge of latest 3.2.100 version from MSOpenTech and 4.0.14/5.0.10 from antirez/redis with a couple of bugfixes.
I don't run redis on windows. There's too much hassle involved in keeping up with the ports, and they lag behind redis-stable by a version or two all the time.
Instead I run redis on a Vagrant virtual machine that runs redis for me. I've bundled up the whole thing into a simple github repo so everyone can get in on the fun without too much hassle. The whole thing is an automated build so there's no mess. I blogged about the details here.
To install Redis on Windows system follow the below steps:
Visit one of the below link:
https://github.com/MSOpenTech/redis/releases (recommended)
https://github.com/rgl/redis/downloads
Download MSI file.
Follow the installation Wizard and install the program on your system. (do not change the installation path that is "C:\Program Files\Redis")
Search for "Edit system environment variable" on your start menu
Click on "Environment Variable" button
Select "Path" and click on "Edit"
Now click on "New"
Paste C:\Program Files\Redis (or the path in case you have changed while installing)
Click on "Okay", "Okay" and "Okay"
Now open your Terminal (command prompt) and run redis-cli
Well I am getting some error to open redis-server (It was working fine till now but not sure what's wrong so figuring out and will update this answer)
I think these is the two most simple ways to run Redis on Windows
1 - Native (and updated) port for Windows
As described here on Option 3) Running Microsoft's native port of Redis:
Download the redis-latest.zip native 64bit Windows port of redis
wget https://github.com/ServiceStack/redis-windows/raw/master/downloads/redis-latest.zip
Extract redis64-latest.zip in any folder, e.g. in c:\redis
Run the redis-server.exe using the local configuration
cd c:\redis
redis-server.exe redis.conf
Run redis-cli.exe to connect to your redis instance
cd c:\redis
redis-cli.exe
2 - With Vagrant
You can use Redis on Windows with Vagrant, as described here:
Install Vagrant on Windows
Download the vagrant-redis.zip vagrant configuration
wget https://raw.github.com/ServiceStack/redis-windows/master/downloads/vagrant-redis.zip
Extract vagrant-redis.zip in any folder, e.g. in c:\vagrant-redis
Launch the Virtual Box VM with vagrant up:
cd c:\vagrant-redis
vagrant up
This will launch a new Ubuntu VM instance inside Virtual Box that will
automatically install and start the latest stable version of redis.
If you're happy with a bit of Powershell, you can also get very up-to-date Windows binaries using Powershell and chocolatey.
First, add chocolatey to Powershell following the instructions here (one simple command line as admin): https://chocolatey.org/
#powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin
Then, use Powershell to get the redis package from chocolatey: http://chocolatey.org/packages/redis-64
choco install redis-64
Redis will be installed in something like C:\ProgramData\chocolatey\lib\redis-64.2.8.9
Windows PowerShell Copyright (C) 2013 Microsoft Corporation. All
rights reserved.
PS C:\windows\system32> choco install redis-64 Chocolatey (v0.9.8.27)
is installing 'redis-64' and dependencies. By installing you accept
the license for 'redis-64' an d each dependency you are installing.
redis-64 v2.8.9 Added
C:\ProgramData\chocolatey\bin\redis-benchmark.exe shim pointed to
'..\lib\redis-64.2.8.9\redis-benchmark.exe'. Added
C:\ProgramData\chocolatey\bin\redis-check-aof.exe shim pointed to
'..\lib\redis-64.2.8.9\redis-check-aof.exe'. Added
C:\ProgramData\chocolatey\bin\redis-check-dump.exe shim pointed to
'..\lib\redis-64.2.8.9\redis-check-dump.exe'. Added
C:\ProgramData\chocolatey\bin\redis-cli.exe shim pointed to
'..\lib\redis-64.2.8.9\redis-cli.exe'. Added
C:\ProgramData\chocolatey\bin\redis-server.exe shim pointed to
'..\lib\redis-64.2.8.9\redis-server.exe'. Finished installing
'redis-64' and dependencies - if errors not shown in console, none
detected. Check log for errors if unsure
Then run the server with
redis-server
Or the CLI with
redis-cli
Follow the instructions in C:\ProgramData\chocolatey\lib\redis-64.2.8.9\RedisService.docx to install the redis service
The Redis download page now has links to some unofficial Windows ports. The dmajkic one seems to be the most popular/complete.
More detailed answer: How to run Redis as a service under Windows
One of the most easy way to run Redis on windows host is to use Docker Redis container. Just fire up Hyper-V, Download Docker and run Redis
I am using Memurai which is Redis-compatible cache and datastore for Windows. It is also recommended by Microsoft open tech as it written on their former project here.
This project is no longer being actively maintained. If you are
looking for a Windows version of Redis, you may want to check out
Memurai. Please note that Microsoft is not officially endorsing this
product in any way.
you can install Redis by following this article:
https://github.com/ServiceStack/redis-windows
but for going straight, you can download it by this link:
https://github.com/ServiceStack/redis-windows/raw/master/downloads/redis-latest.zip
after downloading, go to the directory which you like to put your files,then extract the zip file, then open a command prompt and go to the directory where you extracted your file, then type "redis-server" and hit enter(for opening redis-cli open command and route to redis directory, but instead of "redis-server" execute "redis-cli").
I've provided installation instructions and downloads for the 2 most popular ways of running Redis on windows at: https://github.com/mythz/redis-windows that shows how to:
Use Vagrant to run the latest stable version of Redis inside a
VirtualBox VM.
Download and run Microsoft's Native Windows port of Redis
Using Windows 10?
https://learn.microsoft.com/en-us/windows/wsl/install-win10
/etc/apt/sources.list
(Debian 10 Buster/Bullseye)
Installs latest stable Redis (5.0.6 at time of posting)
deb https://deb.debian.org/debian bullseye main
deb https://deb.debian.org/debian bullseye-updates main
deb http://security.debian.org/debian-security/ buster/updates main
deb http://ftp.debian.org/debian bullseye-backports main
apt install redis-server
Today I know these 4 options:
The first is an open source fork that is on tporadowski/redis that offers compatibility with version 5 (version 6 in development).
The second is memurai (paid), compatible with version 5, has support and a free version for development.
The third is the zkteco-home/redis-windows recently, which offers compatibility with version 7, but is not open source.
There is also the option to run via WSL. But I don't recommend it in production environments.
You can try out baboonstack, which includes redis and also a node.js and mongoDB version manager. And it's cross platform.
The redis version on windows was published by microsoft open tech team But recently this project has been archived to https://github.com/MicrosoftArchive/redis read-only and will not update. Has stopped development
Here are my steps to install Redis 4.0.8 on Windows 10 Pro (1709) via Windows Subsystem for Linux:
in home/user/
01 wget http://download.redis.io/releases/redis-4.0.8.tar.gz
02 tar xzf redis-4.0.8.tar.gz
03 cd redis-4.0.8/
04 sudo apt-get install make
05 sudo apt-get update
06 sudo apt-get install gcc
07 cd deps
08 make hiredis jemalloc linenoise lua geohash-int
09 cd ..
10 make
You can skip several steps if you have an up-to-date environment.
The MSOpenTech-Redis project is no longer being actively maintained. If you are looking for a Windows version of Redis, you may want to check out Memurai. Please note that Microsoft is not officially endorsing this product in any way. More details in https://github.com/microsoftarchive/redis
To install & setup Redis Server on Windows 10 https://redislabs.com/blog/redis-on-windows-10
To install & setup Redis Server on macOS & Linux https://redis.io/download
Also, you may install & setup Redis Server on Linux via the package manager
For quick Redis Server Installation & Setup Guide for macOS https://github.com/rahamath18/Redis-on-MacOS
You can go through the below steps and get setup redis in windows.
Download the Redis zip file. Click here!
Extract the zip file to the prepared directory.
Run redis-server.exe, you can either directly run redis-server.exe by clicking or run via command prompt.
Run redis-cli.exe, after successfully running the redis-server. You can access it and test commands by running redis-cli.exe Test
PING command is used to test if a connection is still alive.
Reading about some users running Redis in a VM, it brought to my mind the recommendations from Redis team :
Redis runs slower on a VM. Virtualization toll is quite high because for many common operations. (...) Prefer to run Redis on a physical box, especially if you favor deterministic latencies. On a state-of-the-art hypervisor (VMWare), result of redis-benchmark on a VM through the physical network is almost divided by 2 compared to the physical machine, with some significant CPU time spent in system and interruptions.

Silent/Automated Homebrew Install

I am trying to get homebrew installed remotely on a machine without a terminal open and without ssh access to the machine. Our company uses a Directory-as-a-Service which allows us to remotely push shell scripts to our computers which is great, but it requires the scripts to have no interactivity.
Is there a way to automate the installer and remove the “Press enter to continue” prompt in the install process?
Thanks,
Zach S
The env variable CI seems to silence this prompt:
export CI=1

Why Rethinkdb don't have binary for windows?

I am interested in Rethinkdb and would like to develop/test on it, but main problem is: it don't have package for windows operating system. I tried to compile from source code, that was also not possible as there was no any instruction.
What makes it so difficult to make executable for windows? Is there any alternative way to install Rethinkdb in windows OS? even very small and not that famous application has windows binary but not Rethinkdb. It is quite surprise for me. Another surprising is there are many community executable for other OS but not windows.
Thank you for understanding and waiting for good answer.
Rethinkdb just announced that it started development for Windows. Please follow
[1] https://github.com/rethinkdb/rethinkdb/issues/1100
[2] https://twitter.com/segphault/status/590633792781611009
Update:
RethinkDB announced in Windows :
[3] https://rethinkdb.com/docs/install/windows/
Cross-platform development isn't that easy. RethinkDB uses some features under the covers which makes porting it to Windows a difficult job, f.e. a Unix toolchain for the builds and Unix syscalls. For more information on that have a look at this GitHub issue. It states that Windows support is planned, but with low priority.
As a quick fix, you could RethinkDB run in a virtual machine or in Microsoft Azure. For the second one, I wrote a blog post a few weeks ago.
RethinkDB has already started development for Windows. While it's not released yet, this is how you can run it through Vagrant. See: https://github.com/gearz-lab/rethinkdb-vagrant
I'm using Chocolatey, feel free to skip steps if they don't apply.
Installing Chocolatey
Open Powershell as an administrator and run this command:
iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
... now you should have Chocolatey installed. We're gonna use to install the others.
Installing Vagrant
Run this as an administrator:
choco install vagrant -y
Installing VirtualBox
Vagrant relies on a virtualization application that it calls a "provider". The default one is VirtualBox so let's install it. Run cmd as administrator and run this:
choco install virtualbox -y
Now you should be able to run the vboxmanage command. If it doesn't work, make sure C:\Program Files\Oracle\VirtualBox is in your PATH.
Installing Cygwin
We're gonna log on a virtual machine using SSH, so we need a SSH enabled terminal. For that, let's use Cygwin.
choco install cyg-get -y
Installing Cygwin packages
There'are two Cygwin packages we need to install, openssh, because Cygwin doesn't have SSH support by default, and rsync so Vagrant can use it to synchronize files between the host and the guest machines.
On PowerShell, running as an administrator, let's run these commands:
cyg-get openssh
cyg-get rsync
Cloning rethinkdb-vagrant
Open the Cygwin64 Terminal. You should now be in your Cygwin home folder, which should look like C:\tools\cygwin\home\[YOUR_USER].
Make sure you have git installed. If you don't just choco install git -y. Now, clone rethyinkdb-vagrant:
git clone https://github.com/gearz-lab/rethinkdb-vagrant.git
Now you should have a directory like this: C:\tools\cygwin\home\[YOUR_USER]\rethinkdb-vagrant.
Starting Vagrant and useful commands
From inside the Cygwin64 Terminal home directory (described in the last step), type cd rethinkdb-vagrant, now, any Vagrant commands will target cd rethinkdb-vagrant.
To setup and boot the machine: vagrant up (After this, RethinkDB is available, see next step).
To access the machine's terminal: vagrant ssh.
To destroy the machine (every RethinkDB data will be lost): vagrant destroy.
To suspend the machine: vagrant suspend.
To resume a suspended machine: vagrant resume.
Accessing RethinkDB.
Make sure you have vagrant up from the last step. Now:
For accessing the web administration tool: http://localhost:8080.
For accessing RethinkDB from a client app, the port is 28015.

Run a windows xp bat script remotely from a ubuntu machine

Is it possible to run a windows xp bat script remotely from a ubuntu machine via command line?
This is possible if you have an ssh server running on the WinXP machine. It is trivial to set up such a server if you have installed Cygwin. This is well described here.
Then from an Ubuntu command line (or cron job) you run
ssh user#winxp command
Make sure your .bat has executable permissions.
I think that the technology you are after is WMI. I see that there is an ubuntu package called wmi-client, which you can sudo apt-get install and attempt to you. Some quick searches and I'm unable to find details, but maybe that will get you somewhere....
You would probably use something like remote desktop, and if you did it that way, it would work, but your question isn't very specific

Resources