How to Send Unix/Linux Executables through Microsoft Teams


In this article, we will see how to transfer Unix/Linux executables through Microsoft Teams. Many times you might have seen a scenario where you need to send some executable file quickly through Microsoft Teams chat but unable to due to different organization policies and permissions in place that blocks the sending and receiving of any executable file. This can make task even more difficult when you know you don't have any choice but to send through Teams only. You might be thinking you need to follow some lengthy and difficult steps to get solve this problem but in reality you just have to follow few simple steps to accomplish this task.


How to Send Unix/Linux Executables through Microsoft Teams

How to Send Unix/Linux Executables through Microsoft Teams

Also Read: How to Update Google Chrome to Latest Version on Ubuntu/Debian


Step 1: Prerequisites

a) You should have a valid Microsoft Teams Account.

b) You should have access to send file through Microsoft Teams.


c) There should be no security restrictions in sending a normal file.


Step 2: Copy Executable

Since most of the time due to permission issue, it is difficult to upload the executable file from system or user defined binary path, it is always better to copy the executable first in some local user path from where you can easily upload. For example, here we are going to send kubectl executable through Microsoft Teams to one of the receiver. So we are going to first copy the executable to /Users/cyberithub from /usr/local/bin directory using cp /usr/local/bin/kubectl /Users/cyberithub command as shown below.

sender@macos1066 ~ % cp /usr/local/bin/kubectl /Users/cyberithub


Step 3: Remove Execute Permission

Once you copied the executable file then next you need to remove execute permission from the file by using chmod -x kubectl command as shown below.

sender@macos1066 ~ % chmod -x kubectl

You can verify the permission by using ls -ltr kubectl command as shown below. You can see that the execute permission is now removed. This will make it just a normal file which you can send now through Microsoft Teams.

sender@macos1066 ~ % ls -ltr kubectl
-rw-r--r--@ 1 common common 53099120 Jul  3 15:03 kubectl


Step 4: Send File

To send the file, you can go to receiver chat on Microsoft Teams and click on Attach Icon. You will see an option called Upload from this device or Upload from my computer as shown below. Click on it and then browse to the location where you kept the file. Select that file and upload.

How to Send Unix/Linux Executables through Microsoft Teams 2


Step 5: Add Execute Permission

On the receiver's end, file needs to be first downloaded in the local system and then provide the execute permission using chmod +x kubectl command to make it executable again as shown below.

receiver@macos1066 ~ % chmod +x kubectl

You can verify the permission by using same ls -ltr kubectl command as shown below.

receiver@macos1066 ~ % ls -ltr kubectl
-rwxr--r--@ 1 common common 53099120 Jul 3 15:10 kubectl


Step 6: Place the Executable

After making the file executable, you need to place it to either system defined or user defined binary path to detect the executable. In our case, we are placing it to same /usr/local/bin directory by using cp kubectl /usr/local/bin command from current working directory where kubectl utility is placed.

receiver@macos1066 ~ % cp kubectl /usr/local/bin

Now if you check the executable by running kubectl version command then you will see it is working fine as expected.

receiver@macos1066 ~ % kubectl version
Client Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.0", GitCommit:"ab69524f7965c4357a66702dff53f3c3ebab74", GitTreeState:"clean", BuildDate:"2021-12-07T18:16:20Z", GoVersion:"go1.17.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.17", GitCommit:"953be8927218ec8067e1af2641e540238ffd7", GitTreeState:"clean", BuildDate:"2022-02-22T13:16:46Z", GoVersion:"go1.19.6", Compiler:"gc", Platform:"linux/amd64"}

Leave a Comment