ESXi, CentOS, Ubuntu, Docker
Jump to navigation
Jump to search
Useful Commands
hostnamectl set-hostname "aws-webmin.rhomicom.com"
nano /etc/hosts
kill SIGNAL PID
kill -9 2117
sudo netstat -tulpn | grep LISTEN
sudo ss -tulpn | grep LISTEN
fuser -k 25/tcp
fuser -k 80/tcp
fuser -k 443/tcp
su - zimbra -c "zmcontrol start"
systemctl stop named
systemctl disable named
su - zimbra -c "zmcontrol restart"
nc mail.rhomicom.com 25
nc mail.rhomicom.com 587
telnet mail.rhomicom.com 25
telnet mail.rhomicom.com 587
lsblk -o name,rota
fdisk -l
du -s -B1 -h -c --apparent-size *
du -csh *
Extend Linux Partition
df -hT
sudo lsblk
sudo growpart /dev/nvme0n1 1
sudo lsblk
df -hT
sudo xfs_growfs -d /
df -hT
df -h
adduser rhouser passwd rhouser usermod -aG wheel rhouser su - rhouser
userdel rhouser userdel -r rhouser #del home dir
chkconfig --add httpd chkconfig httpd on
chkconfig httpd off chkconfig --del httpd
yum -y install which openssh openssh-server openssh-clients openssl-libs nano rsync unzip net-tools NetworkManager-tui sysstat perl-core libaio nmap-ncat libstdc++.so.6 wget tar
yum install epel-release dnf --enablerepo=epel -y install sshpass #Compress tar -czvf zimbkp23Aug2021.tar.gz /opt/zimbra #Extract/Deflate tar -xzvf zimbkp23Aug2021.tar.gz #Download rsync -avH [email protected]:/home/user/ --progress --human-readable /home/user/Downloads/ #UPLOAD# rsync -avH /home/richard/Downloads/ --progress --human-readable [email protected]:/home/user/ rsync -avHP /home/a_bkps.tar.gz --progress --human-readable -e "ssh -i some-key.pem" [email protected]:/home/user/
Docker Commands
docker ps
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id #GET CONTAINER IP ADDRESS)
docker inspect -f "{{ .Config.Env }}" <container_id>
docker commit --change "ENV DEBUG=true" <container_id> rhomicom/testimage:v1.0
docker inspect -f "{{ .Config.Env }}" <container_id>
docker push rhomicom/testimage:v1.0
docker build -t rhomicom/alpine_nodejs:v1.0 .
docker build -t tacms/php_nginx_lara:v1.0 .
docker exec -it tacms-mysql sh -c "cd /home/node/app/ && npm install -g npm && npm install --production=false --legacy-peer-deps && npm run build && exit"
# When you have your docker-compose file setup you can run a few Docker commands to build and run your containers:
docker-compose build <service-name>
docker-compose up <service-name>
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker && sudo systemctl enable docker
sudo docker run hello-world
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version
Docker Swarm
docker system info
docker swarm init
docker swarm join #Join existing Swarm Cluster
nano bb-stack.yaml
version: '3.7'
services:
bb-app:
image: bulletinboard:1.0
ports:
- "8000:8080"
docker stack deploy -c bb-stack.yaml demo #Deploy Apps to swarm
docker stack rm demo # Tear everything down
docker service create --name registry --publish published=5000,target=5000 registry:2 #Start Swarm Registry Image
docker-compose up
docker-compose ps -a
docker-compose down --volumes
docker-compose push
docker stack deploy --compose-file docker-compose.yml mystackname
docker stack services mystackname
docker service rm registry
docker swarm leave --force
Command Description
docker stack deploy #Deploy a new stack or update an existing stack
docker stack ls #List stacks
docker stack ps #List the tasks in the stack
docker stack rm #Remove one or more stacks
docker stack services #List the services in the stack
Command Description
docker service create #Create a new service
docker service inspect #Display detailed information on one or more services
docker service logs #Fetch the logs of a service or task
docker service ls #List services
docker service ps #List the tasks of one or more services
docker service rm #Remove one or more services
docker service rollback #Revert changes to a service’s configuration
docker service scale #Scale one or multiple replicated services
docker service update #Update a service
BackupPC
dnf update
dnf install epel-release
dnf info backuppc
dnf config-manager –set-enabled PowerTools
dnf install -y backuppc
nano /etc/BackupPC/config.pl
nano /etc/httpd/conf.d/BackupPC.conf
htpasswd -c /etc/BackupPC/.backuppc bkpadmin
chmod 666 /etc/BackupPC/.backuppc
yum -y install which openssh openssh-server openssh-clients openssl-libs nano rsync unzip net-tools NetworkManager-tui sysstat perl-core libaio nmap-ncat libstdc++.so.6 wget tar
dnf --enablerepo=epel -y install sshpass
nano /etc/httpd/conf/httpd.conf
mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.old
sed -i 's/Options Indexes FollowSymLinks/Options -Indexes +FollowSymLinks/' /etc/httpd/conf/httpd.conf
httpd -t
systemctl enable --now httpd
systemctl enable --now backuppc
systemctl status backuppc
sudo -u backuppc /usr/share/BackupPC/bin/BackupPC_serverMesg status info
sudo -u backuppc /usr/share/BackupPC/bin/BackupPC_serverMesg status hosts
sudo -u backuppc /usr/share/BackupPC/bin/BackupPC_serverMesg status jobs
firewall-cmd --add-service={http,https} --permanent
systemctl restart httpd
systecmctl restart backuppc
systemctl status backuppc
htpasswd -c /etc/BackupPC/.backuppc bkpadmin
nano /etc/httpd/conf.d/BackupPC.conf
Linux Rescue Mode
mkdir -p /media/sda
mount -o exec,barrier=0 /dev/sda /media/sda
mount -o remount,exec,barrier=0 /dev/sda /media/sda
cd /media/sda
mount -t proc proc proc/
mount -t sysfs sys sys/
mount -o bind /dev dev/
mount -t devpts pts dev/pts/
chroot /media/sda /bin/bash
#NB if /etc/shadow or /etc/passwd files are edited manually, you might need to disable SELINUX or restore their SELINUX settings
CentOS Networking
nano /etc/sysconfig/network
HOSTNAME=mail.bhandari.com
nano /etc/sysconfig/network-scripts/ifcfg-eth0
-----------------------------------------------------------------------
DEVICE="eth0"
IPADDR=192.168.1.221
NETMASK=255.255.255.0
HWADDR="00:16:D4:39:5B:6F"
NM_CONTROLLED="yes"
ONBOOT="yes"
-----------------------------------------------------------------------
#Restart Network Services..
service network restart
Amazon Linux 2
amazon-linux-extras install -y nginx1
yum install -y mod_ssl
amazon-linux-extras install -y epel
sudo systemctl start nginx
sudo systemctl enable nginx
yum -y install git which openssh openssh-server openssh-clients openssl-libs nano rsync unzip net-tools NetworkManager-tui sysstat perl-core libaio nmap-ncat libstdc++.so.6 wget tar
sudo yum update -y
sudo amazon-linux-extras install docker
sudo service docker start
sudo systemctl enable docker
sudo usermod -a -G docker ec2-user
sudo curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose
docker-compose version
iptables-save > IPtablesbackup.txt
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -L
service iptables save
iptables-restore < IPtablesbackup.txt
sudo amazon-linux-extras install epel -y
sudo systemctl stop nginx
sudo yum install yum-utils
sudo yum install -y certbot python-certbot-nginx python-certbot-apache
sudo yum remove -y python-certbot-apache
sudo certbot certonly --standalone --debug -d api.example.org
docker pull rhomicom/rho-erp-base:v1.1
docker pull adminer
docker pull mysql:5.7
sudo service docker restart
docker build -t rhomicom/rho-php-base:v1.0 .
mkdir -p /etc/ssl/certs/
mkdir -p /etc/ssl/private
openssl req -newkey rsa:4096 -nodes -keyout /etc/ssl/private/srvr.key -x509 -days 365 -out /etc/ssl/certs/srvr.crt -subj "/C=GH/ST=Greater Accra/L=Accra/O=Rhomicom Demo/OU=IT/CN=*.rhomicom.com/[email protected]"