The bash history is a log file that contains all commands that the user executed on the Linux shell. When you use the "arrow up" key on our keyboard, then Bash will lookup the previous command from that file and display it on the screen, ready to be executed again.
OpenVZ is a Linux based Kernel virtualisation technology developed by SWSoft for its commercial product virtuozzo. The modified Linux Kernel and the system utilities are released under a OpenSource license. Vzdump is a shell based backup program for OpenVZ virtual machines. It is made for containers that use the traditional "simfs" filesystem, it can not be used for containers with "ploop" filesystem.
Centos 7 replaced the traditional IPTables Linux Kernel Firewall with the Firewalld service. There are still a lot of scripts available that require the use of IPTables. A common example is the software Fail2ban.
In this guide I will explain the installation of IPTables on Centos 7.x
The first step is to stop and mask the firewalld service:
systemctl stop firewalld systemctl mask firewalld
Then install the "iptables-services" package with the yum package installer:
yum install iptables-services
And enable the new service:
systemctl enable iptables
IPTables is now ready to be used on your server. For example you can block an external IP address now with the iptables command:
iptables -A INPUT -s 192.168.0.10 -j DROP
Rules that you set with iptables persist only until the next reboot. To save them permanently use the following command:
service iptables save
To get a list of all installed packages on a Debian or Ubuntu server, run the command:
This command will show you a rather long list. To save the list to a file, use this command:
dpkg --get-selections > /tmp/packages.txt
the list is saved then in the file /tmp/packages.txt.
If you seek for a specificy package, use the grep command:
dpkg --get-selections | grep nginx
will show you all packages that contain the word "nginx" in their name.
root@sv1:/# dpkg --get-selections | grep nginx nginx-common install nginx-extras install
The easiets way to change the hostname on CentOS 7 is to use the hostnamectl command.
First I will check the current hostname by running "hostnamectl status" on the shell of my server:
The output on my system is:
[root@server1 ~]# hostnamectl status Static hostname: server1.example.com Icon name: computer-vm Chassis: vm Machine ID: d89865d34b5a4637a9a4ff0ce0f6da02 Boot ID: 56d1685056d743b39e57a7b9cbfe467c Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-123.el7.x86_64 Architecture: x86_64
Then I change the hostname with the set-hostname option of the hostnamectl command to server2.example.com
hostnamectl set-hostname server2.example.com
Afterwats I check with the command hostname and hostname -f if the hostname change has succeeded.
The result should be:
[root@server1 ~]# hostname server2.example.com [root@server1 ~]# hostname -f server2.example.com
Instead of the hostname command you could also use the "hostnamectl status" command again to check if the new hostname has been set:
[root@server1 ~]# hostnamectl status Static hostname: server2.example.com Icon name: computer-vm Chassis: vm Machine ID: d89865d34b5a4637a9a4ff0ce0f6da02 Boot ID: 56d1685056d743b39e57a7b9cbfe467c Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-123.el7.x86_64 Architecture: x86_64
The Following command can be used to check and repair all MySQL databases on a Ubuntu or Debian Linux System.
sudo mysqlcheck --defaults-file=/etc/mysql/debian.cnf --auto-repair --optimize --all-databases
mysqlcheck --defaults-file=/etc/mysql/debian.cnf --auto-repair --optimize --all-databases
The benefot of the above comand is that it uses the debian-sys-maint login to MySQL which is available on every Debian and Ubuntu System, so you dont have to provide the MySQL root login details.
1.1 SCP Command Line-An Overview
The SCP command line is commonly used to copy files over SSH, and between popular Operating systems like Linux, Mac and Windows in a secure fashion. SCP is used to copy files to/from a remote server. It also allows you to copy files from one remote server to another remote server, without passing traffic through your PC.
When you get the error message "system-config-firewall: command not found" on your CentOS Server while trying to configure the firewall on the shell, then the text interface version of the firewall configuration utility is missing. Install it with this command:
yum install system-config-firewall-tui
If your mail server stops working (neither incoming nor outgoing email works) and you find the following error message in the mail.log file:
fatal: open database /var/lib/postfix/smtpd_scache.db: File exists
then the smtpd_scache.db might got corrupted. Postfix will recreate this file, if it does not exist. So it can be removed to solve the issue:
rm -f /var/lib/postfix/smtpd_scache.db
Thanks to Alexander Fox for sending me this FAQ.
Dovecot is watching the whole server filesystem for modifications and removed or added sub filesystems. If you get errors similar to this one on your server:
Aug 30 09:10:23 server1 dovecot: master: Warning: /var/www/clients/client1/web1/log is no longer mounted. If this is intentional, remove it with doveadm mount
(the directory path may vary), then you can fix it by excluding the path from being watched by dovecot. In my case, dovecot shall not watch my website directories as they do not contain any mailboxes
Run the following command on the shell as root user:
doveadm mount add '/var/www/*' ignore
To exclude all files and folders in /var/www from deovecot monitoring.