SCP file transfer between two linux machine in command line

SCP (Secure Copy) is a command line tool for Linux systems to securely transfer files from local to remote server or vice a versa. SCP uses SSH protocol for transferring files between two systems which is more secure than ftp.

Syntax: (Local to Remote)

scp /path/to/local/file.txt user@

Syntax: (Remote to Local)

scp user@ /path/to/local/

SCP command required password of remote system. In case you need to configure scp command in script and run with scheduler, you need to configure key based ssh login.

Transfer File Local to Remote Server
Following command will copy myfile.txt from current directory of local system to remote server’s /opt directory using root authentication. We are assuming remote server hostname is

$ scp myfile.txt

Transfer File Remote Server to Local
Following command will copy /opt/myfile.txt from remote system to local system’s /opt directory.

$ scp /opt/

Define Port with SCP Command
In case SSH is running on different port on remote server, use -P switch followed by port number with scp command.

$ scp -P 2344 myfile.txt

Transfer Directory Local to Remote Server Recursively
Following command will copy /opt/mydir directory from local system to remote system’s /opt directory recursively.

$ scp -r /opt/mydir

Transfer Directory Remote Server to Local Recursively
Following command will copy /opt/mydir directory from remote system to remote system’s /opt directory recursively.

$ scp -r /opt/


CentOS 7 no interface, no internet! installed on VMware workstation.

Job for network.service failed because the control process exited with error code.

This is what CentOS 7 says while you are trying to restart network.servce. New bees always runs into this problem i think atleast once. Because it was me too. So here i’m writing an easy solution.

When you ran into this problem your “ifconfig” command will only show you “l0” and/or “virbr0” in the list. There is no “eth0” or “eno16777736” device there. Then it must be giving big pain to your head.

Use below command …

dhclient -v

It will bound some IP address to the interface, its taking IP from DHCP, output will look something similar like below…

[root@localhost Desktop]# dhclient -v
Internet Systems Consortium DHCP Client 4.2.5
Copyright 2004-2013 Internet Systems Consortium.
All rights reserved.
For info, please visit

Listening on LPF/virbr0-nic/52:54:00:2e:2f:5f
Sending on LPF/virbr0-nic/52:54:00:2e:2f:5f
Listening on LPF/virbr0/52:54:00:2e:2f:5f
Sending on LPF/virbr0/52:54:00:2e:2f:5f
Listening on LPF/eno16777736/00:0c:29:bd:5c:3f
Sending on LPF/eno16777736/00:0c:29:bd:5c:3f
Sending on Socket/fallback
DHCPDISCOVER on virbr0-nic to port 67 interval 4 (xid=0x7cc5ba1e)
DHCPDISCOVER on virbr0 to port 67 interval 3 (xid=0x47fa961e)
DHCPREQUEST on eno16777736 to port 67 (xid=0x426c09a9)
DHCPACK from (xid=0x426c09a9)
bound to -- renewal in 683 seconds.

And Boom!!! your VM machine will have internet again… you can create a file with this command and make it auto start in boot. then you dont have to do this again and again…


Break Root Password

How to break root password in Linux (RedHat/CentOS)

Its actually very easy to break a linux server’s root password if you have access to the physical server. Security is actually an illusion, just you need to make your server secure from any kind of threat that is coming from your environment and also your friends.

Here i will describe how to break a linux server’s password in a easy way, if you anyhow forget your root password it can be recovered just some few steps and commands. lets begin…

Step-1: Reboot your system by hard switch or pressing ‘Ctrl+Alt+Del’ or any other way you want. And don’t allow your server to load the OS again, i mean before loading just press arrow keys.

Step-2: Now you need to edit the current entry by pressing ‘e’ button. It will open some scripts in your window.

Step-3: Find the line that starts with ‘linux16’ and navigate your cursor to the end of the line. You can do this by pressing the ‘End’ button or by pressing right arrow until the last character. Now add or append ‘rd.break’ after a space at the end of the line. And press ‘Ctrl+x’ to boot using the modified config.

Step-4: System will appear with command link viewing something like below.


Now you need to remount /sysroot file and give read/write permission.

switch_root:/# mount -o remount,rw /sysroot


switch_root:/# chroot /sysroot

‘chroot’ runs a command or an interactive shell from another directory, and treats that directory as root. It will take you to a new shell like below.



Here you need to give the ‘passwd’ command to give it a new password. it will prompt twice.

sh-4.2# passwd [press enter]

: ******* (123456)
: ******* (123456)


After all these steps the last step is to create a autorelabel executable file which the OS will take to relabel the configuration file. Next just exit from both shell and it will take some time(like 2min) to boot and you can enter with the new password.

sh-4.2# touch /.autorelabel
sh-4.2# exit

switch_root:/# exit

Wait for 2 minute and Login… Hurreeeh…!!! now access the root with your new password and you can change this with any password you want.