tag:blogger.com,1999:blog-902479856976522742024-03-20T09:40:03.122+01:00...linux tweaks by morphus.dkUnfortunately, no one can be told what the Matrix is.
You have to see it for yourself.
by MORPHUS.DKUnknownnoreply@blogger.comBlogger105125tag:blogger.com,1999:blog-90247985697652274.post-57705742366703239932018-10-08T23:53:00.001+02:002018-10-19T21:30:02.878+02:00How to clear the yum cache on CentOS ?..<h2>
How to clear the yum cache... CentOS, Fedora, Redhat..</h2>
<br /><div>
<div>
<span style="font-family: "verdana" , sans-serif;">When a package is downloaded, installed and is removed there is a chance that the package may still be saved/stored in the yum's cache. So to clean all the cached packages from the enabled repository cache directory, login as root and execute the following:</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"># yum clean packages</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;">2: To purge the old package information completely, execute the following command:</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"># yum clean headers</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;">3: To clean any cached xml metadata from any enabled repository, execute the following</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"># yum clean metadata</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;">4: but if you wish to clean all the cached files from any enabled repository at once, execute the following command:</span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"><br /></span></div>
<div>
<span style="font-family: "verdana" , sans-serif;"># yum clean all</span></div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-48676961707728230232017-12-06T12:27:00.000+01:002017-12-06T12:39:52.882+01:00#How_Do_I_Find_Out_Linux_Gateway / #Router_IP_Address?<span style="font-family: Verdana, sans-serif;">How do I find out my #gateway IP for a #computer or a #network device that allows or controls access to another computer or network under #Linux / #UNIX operating systems?<br />The ansver is almost simple for unix users...<br /><br />A gateway is a network point that acts as an entrance to another network. On the Internet, a node or stopping point can be either a gateway node or a host (end-point) node. Both the computers of Internet users and the computers that serve pages to users are host nodes. The computers that control traffic within your company’s network or at your local Internet service provider (ISP) are gateway nodes. In the network for an enterprise, a computer server acting as a gateway node is often also acting as a proxy server and a firewall server. A gateway is often associated with both a router, which knows where to direct a given packet of data that arrives at the gateway, and a switch, which furnishes the actual path in and out of the gateway for a given packet.<br /><br />You need to use route command. Open an Terminal and type this command will show you #IP_routing_tables. It can be also use to print gateway / router IP address. Type the following command to see #default_gateway:<br /><br /><b>$ route -n</b><br /></span><div>
<span style="font-family: Verdana, sans-serif;">Output:<br /><br />Kernel IP routing table<br />Destination <b> Gateway</b> Genmask Flags Metric Ref Use Iface<br />0.0.0.0 <b>192.168.1.1</b> 0.0.0.0 UG 100 0 0 enp5s0<br />192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 enp5s0<br /><br />192.168.1.1 is gateway IP address for our computer. <br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">The flag:<br /><b>U</b> indicates that route is up <br /><b>G</b> indicates that it is gateway.</span></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-91937583336231286202016-12-01T00:11:00.000+01:002018-10-09T23:41:57.949+02:00How To Install Linux, Nginx, MySQL, PHP (LEMP) stack On CentOS 7<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdt8mEZZmOj8j1PR8IaaLtcFtsT2lLZft3ZV5en5AXae6zxExEsKnblbBW3X_gvaA-ADvu_ZV8FeCVKbmK0uLn_Z7s4aLn3SEGjA9XRRrf1zwOxi93n0FlzwaIn8M5rLGjPALGhcbpX70/s1600/Install_LAMP-twitter.png"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdt8mEZZmOj8j1PR8IaaLtcFtsT2lLZft3ZV5en5AXae6zxExEsKnblbBW3X_gvaA-ADvu_ZV8FeCVKbmK0uLn_Z7s4aLn3SEGjA9XRRrf1zwOxi93n0FlzwaIn8M5rLGjPALGhcbpX70/s320/Install_LAMP-twitter.png" /></a><br />
<br />
<br />
<b><i>Introduction</i></b><br />
<br />
A LEMP software stack is a group of open source software that is typically installed together to enable a server to host dynamic websites and web apps. This term is actually an acronym which represents theLinux operating system, with the ENginx web server (which replaces the Apache component of a LAMP stack). The site data is stored in a MySQL database (using MariaDB), and dynamic content is processed byPHP.<br />
<br />
In this guide, we'll get a LEMP stack installed on an CentOS 7 server.<br />
CentOS will fullfill our first requirement: a Linux operating system.<br />
<br />
Prerequisites<br />
Before you begin with this guide, you should have a separate, non-root user account set up on your server. You can learn how to do this by completing steps 1-4 in the <a href="https://www.digitalocean.com/community/articles/initial-server-setup-with-centos-7">initial server setup for CentOS 7</a>.<br />
<br />
Note about SELinux: If you run into issues with Nginx not running, make sure the SELinux context of your Nginx configuration files is correct or change the SELinux mode to permissive or disabled.<br />
<br />
<br />
<b><i><span style="font-family: "verdana" , sans-serif;">Step 1 — Install Nginx</span></i></b><br />
<br />
In order to display web pages to our site visitors, we are going to employ Nginx, a modern, efficient web server.<br />
To add the CentOS 7 EPEL repository, open terminal and use the following command:<br />
<br />
<i><b><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo yum install epel-release
</span></b></i><br />
<br />
Since we are using a sudo command, these operations get executed with root privileges. It will ask you for your regular user's password to verify that you have permission to run commands with root privileges.<br />
<br />
Now that the Nginx repository is installed on your server, install Nginx using the following yum command:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo yum install nginx
</span></i></b><br />
<br />
Afterwards, your web server is installed.<br />
Once it is installed, you can start Nginx on your server:<br />
<br />
<i><b><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo systemctl start nginx
</span></b></i><br />
<br />
You can do a spot check right away to verify that everything went as planned by visiting your server's public IP address in your web browser (see the note under the next heading to find out what your public IP address is if you do not have this information already):<br />
<br />
Open in a web browser:<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><i># http://server_domain_name_or_IP/
</i></span><br />
<span style="font-family: "verdana" , sans-serif;"><i>or write </i></span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><i># localhost</i></span><br />
<br />
You will see the default CentOS 7 Nginx web page, which is there for informational and testing purposes. It should look something like this:<br />
<br />
<img height="148" src="https://assets.digitalocean.com/articles/lemp_1404/nginx_default.png" width="400" /><br />
<i>! If you see this page, then your web server is now correctly installed.</i><br />
<br />
<br />
Before continuing, you will want to do is enable Nginx to start on boot. Use the following command to do so:
<br />
<br />
<i><b><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo systemctl enable nginx
</span></b></i><br />
<br />
How To Find Your Server's Public IP Address<br />
<br />
If you do not know what your server's public IP address is, there are a number of ways you can find it. Usually, this is the address you use to connect to your server through SSH.<br />
<br />
From the command line, you can find this a few ways. First, you can use the iproute2 tools to get your address by typing this:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
</span></i></b><br />
<br />
This will give you one or two lines back. They are both correct addresses, but your computer may only be able to use one of them, so feel free to try each one.<br />
<br />
An alternative method is to use an outside party to tell you how it sees your server. You can do this by asking a specific server what your IP address is:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># curl http://icanhazip.com
</span></i></b><br />
<br />
Regardless of the method you use to get your IP address, you can type it into your web browser's address bar to get to your server.<br />
<br />
--- end of step 1.......<br />
<br />
<b><i><span style="font-family: "verdana" , sans-serif;">Step 2 — Install MySQL (MariaDB)</span></i></b><br />
<br />
Now that we have our web server up and running, it is time to install MariaDB, a MySQL drop-in replacement. MariaDB is a community-developed fork of the MySQL relational database management system. Basically, it will organize and provide access to databases where our site can store information.<br />
<br />
Again, we can use yum to acquire and install our software. This time, we'll also install some other "helper" packages that will assist us in getting our components to communicate with each other:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo yum install mariadb-server mariadb
</span></i></b><br />
<br />
When the installation is complete, we need to start MariaDB with the following command:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo systemctl start mariadb
</span></i></b><br />
<br />
Now that our MySQL database is running, we want to run a simple security script that will remove some dangerous defaults and lock down access to our database system a little bit. Start the interactive script by running:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo mysql_secure_installation
</span></i></b><br />
<br />
The prompt will ask you for your current root password. Since you just installed MySQL, you most likely won’t have one, so leave it blank by pressing enter. Then the prompt will ask you if you want to set a root password. Go ahead and enter Y, and follow the instuctions:<br />
<br />
mysql_secure_installation prompts:<br />
Enter current password for root (enter for none):
OK,<br />
successfully used password, moving on...<br />
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.<br />
New password: password<br />
Re-enter new password: password
Password updated successfully!<br />
Reloading privilege tables..
... Success!<br />
<br />
For the rest of the questions, you should simply hit the "ENTER" key through each prompt to accept the default values. This will remove some sample users and databases, disable remote root logins, and load these new rules so that MySQL immediately respects the changes we have made.<br />
<br />
The last thing you will want to do is enable MariaDB to start on boot. Use the following command to do so:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo systemctl enable mariadb
</span></i></b><br />
<br />
At this point, your database system is now set up and we can move on.<br />
<br />
--- end of step 2....<br />
<br />
<br />
<b><i><span style="font-family: "verdana" , sans-serif;">Step 3 — Install PHP</span></i></b><br />
<br />
PHP is the component of our setup that will process code to display dynamic content. It can run scripts, connect to our MySQL databases to get information, and hand the processed content over to our web server to display.<br />
<br />
We can once again leverage the yum system to install our components. We're going to include the php-mysql and php-fpm packages as well:
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo yum install php php-mysql php-fpm
</span></i></b><br />
<br />
Configure the PHP Processor<br />
<br />
We now have our PHP components installed, but we need to make a slight configuration change to make our setup more secure.<br />
<br />
Open the main php-fpm configuration file with root privileges:
<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># sudo nano /etc/php.ini
</i></b></span><br />
<br />
What we are looking for in this file is the parameter that sets cgi.fix_pathinfo. This will be commented out with a semi-colon (;) and set to "1" by default.<br />
<br />
This is an extremely insecure setting because it tells PHP to attempt to execute the closest file it can find if a PHP file does not match exactly. This basically would allow users to craft PHP requests in a way that would allow them to execute scripts that they shouldn't be allowed to execute.<br />
<br />
We will change both of these conditions by uncommenting the line and setting it to "0" like this:<br />
<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo nano /etc/php.ini </span></i></b><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b style="font-style: italic;"> </b>find & change to..<b style="font-style: italic;"> cgi.fix_pathinfo=0
</b></span><br />
<br />
Save and close the file when you are finished.<br />
Next, open the php-fpm configuration file www.conf:<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># sudo nano /etc/php-fpm.d/www.conf
</i></b></span><br />
<br />
Find the line that specifies the listen parameter, and change it so it looks like the following:<br />
<br />
1/3<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># sudo nano /etc/php-php.d/www.conf</i></b></span><br />
<div style="text-align: right;">
<b><i><span style="font-family: "courier new" , "courier" , monospace;">listen = /var/run/php-fpm/php-fpm.sock</span></i></b></div>
<div style="text-align: right;">
<br /></div>
Next, find the lines that set the listen.owner and listen.group and uncomment them. They should look like this:<br />
<br />
2/3<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo nano /etc/php-php.d/www.conf </span></i></b><br />
<span style="font-family: "courier new" , "courier" , monospace;"></span><br />
<div style="text-align: right;">
<span style="font-family: "courier new" , "courier" , monospace;"><b><i>listen.owner = nobody </i></b></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><b><i>listen.group = nobody </i></b></span></div>
<span style="font-family: "courier new" , "courier" , monospace;">
</span>
<br />
<div style="text-align: right;">
<br /></div>
<br />
Lastly, find the lines that set the user and group and change their values from "apache" to "nginx":<br />
<br />
3/3<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># sudo nano /etc/php-php.d/www.conf</i></b></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"></span><br />
<div style="text-align: right;">
<span style="font-family: "courier new" , "courier" , monospace;"><b><i>user = nginx </i></b></span><br />
<span style="font-family: "courier new" , "courier" , monospace;"><b><i>group = nginx </i></b></span></div>
<span style="font-family: "courier new" , "courier" , monospace;">
</span>
<br />
<div style="text-align: right;">
<br /></div>
Then save and quit.<br />
Now, we just need to start our PHP processor by typing:<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># systemctl start php-fpm
</i></b></span><br />
<br />
This will implement the change that we made.<br />
Next, enable php-fpm to start on boot:<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># systemctl enable php-fpm
</i></b></span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i><br /></i></b></span>
----- end step 3.....<br />
<br />
<br />
<span style="font-family: "verdana" , sans-serif;"><b><i>Step 4 — Configure Nginx to Process PHP Pages</i></b></span><br />
<br />
Now, we have all of the required components installed. The only configuration change we still need to do is tell Nginx to use our PHP processor for dynamic content.<br />
<br />
We do this on the server block level (server blocks are similar to Apache's virtual hosts). Open the default Nginx server block configuration file by typing:
<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b><i># sudo nano /etc/nginx/conf.d/default.conf
</i></b></span><br />
<br />
Currently, with the comments removed, the Nginx default server block looks like this:<br />
<br />
/etc/nginx/conf.d/default.conf — originalserver<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">{ </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> listen 80; </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> server_name localhost; </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> location / </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> { </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> root /usr/share/nginx/html; </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> index index.html index.htm;
}</span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><br /></span>
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> error_page 500 502 503 504 /50x.html; </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> location = /50x.html {
root /usr/share/nginx/html; </span><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">} </span><br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">}</span><br />
<br />
<br />
<br />
We need to make some changes to this file for our site. <br />
First, we need to add an index.php option as the first value of our index directive to allow PHP index files to be served when a directory is requested <br />
We also need to modify the server_name directive to point to our server's domain name or public IP address <br />
The actual configuration file includes some commented out lines that define error processing routines. We will uncomment those to include that functionality <br />
For the actual PHP processing, we will need to uncomment a portion of another section. We will also need to add a try_files directive to make sure Nginx doesn't pass bad requests to our PHP processor <br />
<br />
<br />
The changes that you need to make are in red in the text below. If you prefer, you may just copy and paste everything, then replace the value of server_name with the appropriate domain name or IP address:<br />
<br />
# /etc/nginx/conf.d/default.conf — updatedserver<br />
{<br />
listen 80;<br />
server_name server_domain_name_or_IP;<br />
<br />
# note that these lines are originally from the "location /" block
root /usr/share/nginx/html;<br />
<br />
index index.php index.html index.htm;<br />
location / {
try_files $uri $uri/ =404;
}<br />
error_page 404 /404.html;<br />
error_page 500 502 503 504 /50x.html;<br />
location = /50x.html {
root /usr/share/nginx/html;<br />
}<br />
location ~ \.php$ {
try_files $uri =404;
<br />
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;<br />
fastcgi_index index.php;<br />
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;<br />
include fastcgi_params;<br />
}<br />
}<br />
<br />
<br />
When you've made the above changes, you can save and close the file.<br />
<br />
!! Restart Nginx to make the necessary changes:<br />
<br />
<b><i><span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"># sudo systemctl restart nginx
</span></i></b><br />
<br />
--- end step 4...<br />
<br />
<br />
<span style="font-family: "verdana" , sans-serif;"><b><i>Step 5 — Test PHP Processing on your Web Server</i></b></span><br />
<br />
In order to test that our system is configured properly for PHP, we can create a very basic PHP script.<br />
<br />
<br />
We will call this script info.php. In order for Apache to find the file and serve it correctly, it must be saved to a very specific directory, which is called the "web root".<br />
<br />
<br />
In CentOS 7, this directory is located at /usr/share/nginx/html/. We can create the file at that location by typing:
<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"><b><i># sudo vi /usr/share/nginx/html/info.php
</i></b></span><br />
<br />
This will open a blank file. We want to put the following text, which is valid PHP code, inside the file:<br />
<br />
<br />
Test PHP Script
<br />
<br />
When you are finished, save and close the file.<br />
Now we can test whether our web server can correctly display content generated by a PHP script. To try this out, we just have to visit this page in our web browser. You'll need your server's public IP address again.<br />
<br />
The address you want to visit will be:<br />
<br />
Open in a web browser:<br />
<br />
<b><i><span style="font-family: "verdana" , sans-serif;">## http://your_server_IP_address/info.php
</span></i></b><br />
<br />
The page that you come to should look something like this:<br />
<br />
<img height="370" src="https://assets.digitalocean.com/articles/lamp_c7/default_php_fpm.png" width="400" /><br />
<br />
<br />
This page basically gives you information about your server from the perspective of PHP. It is useful for debugging and to ensure that your settings are being applied correctly.<br />
<br />
<br />
If this was successful, then your PHP is working as expected.<br />
<br />
<br />
You probably want to remove this file after this test because it could actually give information about your server to unauthorized users. To do this, you can type this:
<br />
sudo rm /usr/share/nginx/html/info.php
<br />
<br />
You can always recreate this page if you need to access the information again later.<br />
<br />
Conclusion<br />
Now that you have a LEMP stack installed, you have many choices for what to do next. Basically, you've installed a platform that will allow you to install most kinds of websites and web software on your server.<br />
<br />
--- end step 5...<br />
... you are finish... Good luck...<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-87333437626443676452016-07-22T17:12:00.000+02:002016-10-12T21:56:26.329+02:00Install Flash Player for Vivaldi on Linux UBUNTU<span style="font-family: Verdana, sans-serif;">How to install Adobe Flash Player in Vivaldi browser on Linux Ubuntu.<br /><br />Open terminal and type:<br /><br />If Google Chrome is not installed on your system, to get Vivaldi browser to use the Google Chrome Pepper Flash plugin, you can install a package called "pepperflashplugin-nonfree".</span><br /><br /><pre class="linux-code" style="background: url("lincode2.gif") 0px 0px no-repeat scroll rgb(248, 236, 236); border-color: rgb(155, 5, 5); border-style: solid; border-width: 1px 1px 1px 20px; font-family: "UbuntuBeta Mono", "Ubuntu Mono", "Courier New", Courier, monospace; font-size: 13px; line-height: 22.4px; margin: 10px; max-height: 500px; min-height: 16px; overflow: auto; padding: 28px 10px 10px; z-index: 10000;"><code>sudo apt-get install pepperflashplugin-nonfree</code></pre>
<br />Then restart Vivaldi. That's it!<br /><br />Important note: since Google Chrome is now only available for 64bit on Linux, it means that its Pepper Flash plugin is also only available on 64bit. So the instructions below only work on 64bit! Flash might work on Vivaldi 32bit if you have an old Google Chrome for 32bit installed, but it won't receive any updates so you shouldn't use it.<br /><br />Vivaldi supports the Google Chrome built-in Pepper Flash plugin, but it doesn't come bundled with it. If you have Google Chrome installed on your system, Vivaldi should already be using its Pepper Flash plugin, so there's nothing you need to do.<br /><br /><b>Check Flash plugin</b> shows PPAPI setting after install by visiting <b>vivaldi://plugins</b>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-80778704385898800762016-04-22T14:35:00.003+02:002016-04-22T14:55:39.699+02:00Commannd line update...<span style="font-family: "verdana" , sans-serif;">Bash shell script for update your ubuntu debian box.</span><br />
<span style="font-family: "verdana" , sans-serif;"><br />
</span> <span style="font-family: "verdana" , sans-serif;">I make a little shell script that will update your ubuntu by command line [ cli ], easier..</span><br />
<span style="font-family: "verdana" , sans-serif;"><br />
</span> <span style="font-family: "verdana" , sans-serif;">you are welocome to ad some ideas to that script and post it on my blog...</span><br />
<br />
<br />
<span style="font-family: "courier new" , "courier" , monospace; font-size: xx-small;"><i><br /><br /> #!/bin/bash<br /><br />clear<br /><br />echo ""<br />echo " Script will update Operating System"<br />echo ""<br />echo " Welcome, $USER! "<br />echo " .. now apt-get will run update "<br />echo ""<br />sleep 5s;<br />sudo apt-get update &&<br />clear &&<br /><br /> echo ""<br />echo " .. now apt-get will upgrade "<br />echo ""<br />sleep 5s;<br />sudo apt-get upgrade -y &&<br />clear &&<br /><br />echo ""<br />echo " .. now apt-get will remove and clean "<br />echo ""<br />sleep 5s;<br />sudo apt-get autoremove -y &&<br />clear &&<br /><br />echo ""<br />read -p " Updating GRUB $foo? [y/n] " answer<br />echo ""<br /># run 'yes' command<br />if [[ $answer = y ]] ; then<br />sudo update-grub ;<br /># run 'no' command<br /><br />fi<br /><br />clear<br />echo ""<br />echo " Your box is up to date.."<br />echo ""<br />sleep 5s;<br /><br />echo ""<br />read -p "Reboot your system $foo? [y/n] " answer<br />echo ""<br /><br /> # run 'yes' command<br /><br /> if [[ $answer = y ]] ; then<br />sudo init 6 ;<br />echo ""<br />echo " ... rebooting... "<br />echo ""<br />sleep 5s;<br /><br />fi<br /><br />clear<br />echo ""<br />echo " bye..., $USER! "<br />echo ""<br /><br /></i></span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-28775193398725603912016-02-03T00:38:00.003+01:002016-02-03T01:05:33.053+01:00How to remove VirtualBox on Ubuntu Linux<span style="font-family: "arial" , "helvetica" , sans-serif;">To remove VirtualBox, I actually recommend running this command and not replacing * with anything (just run it exactly like so):</span><br />
<div>
<pre style="border: 0px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><span style="background-color: #eeeeee; color: #111111; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , "courier new" , monospace , sans-serif; font-size: 13px; white-space: inherit;"># sudo apt-get remove virtualbox-\*</span></pre>
<div>
<span style="font-family: arial, helvetica, sans-serif;">If you want to remove global configuration files too (this does not remove your virtual machines), run exactly this instead:</span></div>
<div>
<pre style="border: 0px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><span style="background-color: #eeeeee; color: #111111; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , "courier new" , monospace , sans-serif; font-size: 13px; white-space: inherit;"># sudo apt-get purge virtualbox-\*</span></pre>
</div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-10314128242538693342016-01-24T00:33:00.002+01:002016-01-24T00:35:35.338+01:00How to secure your phpMyAdmin site with NGINX<h2 class="western">
<i>Secure your phpMyAdmin</i></h2>
The phpMyAdmin instance installed on our server should be
completely usable at this point. However, by installing a web
interface, we have exposed our MySQL system to the outside world.<br />
Even with the included authentication screen, this is quite a
problem. Because of phpMyAdmin's popularity combined with the large
amount of data it provides access to, installations like these are
common targets for attackers.<br />
We will implement two simple strategies to lessen the chances of
our installation being targeted and compromised. We will change the
location of the interface from <code class="western">/phpmyadmin</code> to
something else to sidestep some of the automated bot brute-force
attempts. We will also create an additional, web server-level
authentication gateway that must be passed before even getting to the
phpMyAdmin login screen.<br />
<h3 class="western">
<i><a href="https://www.blogger.com/null" name="changing-the-application-39-s-access-location"></a>
Changing the Application's Access Location</i></h3>
In order for our Nginx web server to find and serve our phpMyAdmin
files, we created a symbolic link from the phpMyAdmin directory to
our document root in an earlier step.<br />
To change the URL where our phpMyAdmin interface can be accessed,
we simply need to rename the symbolic link. Move into the Nginx
document root directory to get a better idea of what we are doing:<br />
<pre class="western"><code class="western">$ cd /usr/share/nginx/html</code>
<code class="western">$ ls -l</code>
<code class="western">total 8</code>
<code class="western">-rw-r--r-- 1 root root 537 Mar 4 06:46 50x.html</code>
<code class="western">-rw-r--r-- 1 root root 612 Mar 4 06:46 index.html</code>
<code class="western">lrwxrwxrwx 1 root root 21 Aug 6 10:50 phpmyadmin -> /usr/share/phpmyadmin</code></pre>
<br />
<br />
As you can see, we have a symbolic link called <code class="western">phpmyadmin</code> in
this directory. We can change this link name to whatever we would
like. This will change the location where phpMyAdmin can be accessed
from a browser, which can help obscure the access point from
hard-coded bots.<br />
Choose a name that does not indicate the purpose of the location.
In this guide, we will name our access location <code class="western">/nothingtosee</code>.
To accomplish this, we will just rename the link:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">$ sudo mv phpmyadmin nothingtosee</code></pre>
<pre class="western">$ ls -l
</pre>
<pre class="western"><code class="western">total 8</code>
<code class="western">-rw-r--r-- 1 root root 537 Mar 4 06:46 50x.html</code>
<code class="western">-rw-r--r-- 1 root root 612 Mar 4 06:46 index.html</code>
<code class="western">lrwxrwxrwx 1 root root 21 Aug 6 10:50 nothingtosee -> /usr/share/phpmyadmin</code></pre>
<br />
<br />
Now, if you go to the previous location of your phpMyAdmin
installation, you will get a 404 error:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">http://server_domain_or_IP/phpmyadmin</code></pre>
<br />
<br />
<br />
<img align="bottom" alt="phpMyAdmin 404 error" border="0" height="99" name="Image1" src="data:image/png;base64,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" width="234" />
<br />
<br />
<br />
<br />
<br />
However, your phpMyAdmin interface will be available at the new
location we selected:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">http://server_domain_or_IP/nothingtosee</code></pre>
<br />
<br />
<img align="bottom" alt="phpMyAdmin login screen" border="0" height="490" name="Image2" src="data:image/png;base64,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" width="456" />
<br />
<h3 class="western">
<i><br /></i></h3>
<h3 class="western">
<i><br /></i></h3>
<h3 class="western">
<i><a href="https://www.blogger.com/null" name="setting-up-a-web-server-authentication-gate"></a>
Setting up a Web Server Authentication Gate</i></h3>
The next feature we wanted for our installation was an
authentication prompt that a user would be required to pass before
ever seeing the phpMyAdmin login screen.<br />
Fortunately, most web servers, including Nginx, provide this
capability natively. We will just need to modify our Nginx
configuration file with the details.<br />
Before we do this, we will create a password file that will store
our the authentication credentials. Nginx requires that passwords be
encrypted using the <code class="western">crypt()</code> function.
The OpenSSL suite, which should already be installed on your server,
includes this functionality.<br />
To create an encrypted password, type:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">$ openssl passwd</code></pre>
<br />
<br />
You will be prompted to enter and confirm the password that you
wish to use. The utility will then display an encrypted version of
the password that will look something like this:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">O5az.RSPzd.HE</code></pre>
<br />
<br />
Copy this value, as you will need to paste it into the
authentication file we will be creating.<br />
Now, create an authentication file. We will call this
file <code class="western">pma_pass</code> and place it in
the Nginx configuration directory:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">$ sudo nano /etc/nginx/pma_pass</code></pre>
<br />
<br />
Within this file, you simply need to specify the username you
would like to use, followed by a colon (:), followed by the encrypted
version of your password you received from the <code class="western">openssl
passwd</code> utility.<br />
<br />
We are going to name our user <code class="western">demo</code>,
but you should choose a different username. The file for this guide
looks like this:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">demo:O5az.RSPzd.HE</code></pre>
<br />
Save and close the file when you are finished.<br />
Now, we are ready to modify our Nginx configuration file. Open
this file in your text editor to get started:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">$ sudo nano /etc/nginx/sites-available/default</code></pre>
<br />
Within this file, we need to add a new location section. This will
target the location we chose for our phpMyAdmin interface (we
selected <code class="western">/nothingtosee</code> in this
guide).<br />
Create this section within the <code class="western">server</code> block,
but outside of any other blocks. We will put our new location block
below the <code class="western">location /</code> block in
our example:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">server {</code>
<code class="western"> </code><code class="western">. . .</code>
<code class="western"> </code><code class="western">location / {</code>
<code class="western"> </code><code class="western">try_files $uri $uri/ =404;</code>
<code class="western"> </code><code class="western">}</code>
<code class="western"> </code><code class="western">location /nothingtosee {</code>
<code class="western"> </code><code class="western">}</code>
<code class="western"> </code><code class="western">. . .</code>
<code class="western">}</code></pre>
<br />
Within this block, we need to set the value of a directive
called <code class="western">auth_basic</code> to an
authentication message that our prompt will display to users. We do
not want to indicate to unauthenticated users what we are protecting,
so do not give specific details. We will just use "Admin Login"
in our example.<br />
<br />
We then need to use a directive called <code class="western">auth_basic_user_file</code> to
point our web server to the authentication file that we created.
Nginx will prompt the user for authentication details and check that
the inputted values match what it finds in the specified file.<br />
After we are finished, the file should look like this:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">server {</code>
<code class="western"> </code><code class="western">. . .</code>
<code class="western"> </code><code class="western">location / {</code>
<code class="western"> </code><code class="western">try_files $uri $uri/ =404;</code>
<code class="western"> </code><code class="western">}</code>
<code class="western"> </code><code class="western">location /nothingtosee {</code>
<code class="western"> </code><code class="western">auth_basic "Admin Login";</code>
<code class="western"> </code><code class="western">auth_basic_user_file /etc/nginx/pma_pass;</code>
<code class="western"> </code><code class="western">}</code>
<code class="western"> </code><code class="western">. . .</code>
<code class="western">}</code></pre>
<br />
Save and close the file when you are finished.<br />
To implement our new authentication gate, we must restart the web
server:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western">$ sudo service nginx restart</code></pre>
<br />
Now, if we visit our phpMyAdmin location in our web browser (you may
have to clear your cache or use a different browser session if you
have already been using phpMyAdmin), you should be prompted for the
username and password you added to the <code class="western">pma_pass</code> file:<br />
<pre class="western"><code class="western">
</code></pre>
<pre class="western"><code class="western"><b>http://server_domain_or_IP/nothingtosee</b></code>
</pre>
<br />
<img align="bottom" alt="Nginx authentication page" border="0" height="273" name="Image3" src="data:image/png;base64,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" width="350" />
<br />
<br />
<br />
Once you enter your credentials, you will be taken to the normal
phpMyAdmin login page. This added layer of protection will help keep
your MySQL logs clean of authentication attempts in addition to the
added security benefit.<br />
<h4>
Conclusion</h4>
<h2 class="western">
<a href="https://www.blogger.com/null" name="conclusion"></a></h2>
<br />
You can now manage your MySQL databases from a reasonably secure
web interface. This UI exposes most of the functionality that is
available from the MySQL command prompt. You can view databases and
schema, execute queries, and create new data sets and structures.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-25244356644369277372016-01-23T16:31:00.001+01:002016-02-03T01:03:01.103+01:00Easy WebServer setup NGINX, PHP-FPM, MariaDB on Debian 8WEB-SERVER on Debian 8 easy setup<br />
<br />
Debian, MariaDB SQL set up guide<br />
<br />
This guide will show you how to correctly install and configure an "alternative" LAMP stack on Debian 8 utilizing NGINX, PHP Fast Process Manager, and MariaDB.<br />
<br />
<b><i>NGINX</i></b><br />
<br />
NGINX is a "reverse proxy first, web server second". It is a popular and growing alternative to Apache, offering greater flexibility and better performance in many instances. In this tutorial, we will be using it as our web server.<br />
Fire up your favorite SSH client and login to your server. For Windows users, "PuTTY" is a free and lightweight SSH client. Linux and Mac users can use the terminal included by default with their operating system. For this tutorial, we will assume that you are logged in to your server as the "root" user.<br />
<br />
For starters, let's just make sure everything is up to date. Type the following to check for and then install updates.<br />
<br />
$apt-get update && apt-get upgrade<br />
<br />
We'll be editing our configuration files in vim. Vim is not installed by default, so let's install it!<br />
<br />
$ apt-get install vim<br />
<br />
Now it's time to install NGINX. We'll want to install the latest version of NGINX from the official NGINX Debian repository.<br />
<br />
$ wget http://nginx.org/keys/nginx_signing.key<br />
$ apt-key add nginx_signing.key<br />
$ echo 'deb http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list<br />
$ echo 'deb-src http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list<br />
$ apt-get update && apt-get install nginx<br />
<br />
Now we need to tweak the NGINX configuration some. Navigate to the configuration directory.<br />
<br />
$ cd /etc/nginx<br />
<br />
A quick vim lesson<br />
Use the arrow keys to navigate the text document. To begin making edits, press the "insert" button on your keyboard. If your keyboard doesn't have an insert button, then press the "i" key. Towards the bottom of vim you'll notice it now says "INSERT". Insert mode will let you delete via backspace or insert new characters by typing them.<br />
<br />
Let's open up our nginx.conf and poke around:<br />
<br />
$ vi nginx.conf<br />
<br />
Let's change the default user, check the number of worker processes, and turn off the access log.<br />
The directives "user" and "worker_processes" are near the top. Try the values below:<br />
Note that you'll want to set "worker_processes" to the number of CPU cores available on your server. In this example, we have 1, which is the NGINX default.<br />
<br />
/user www-data;<br />
/worker_processes 1;<br />
<br />
We'll also want to disable the access log, for sake of improving I/O performance. Navigate downwards with the arrow keys until you find "access_log". Modify it to the following:<br />
<br />
/access_log off;<br />
<br />
And lastly, we'll set the "client_max_body_size" to correspond with some changes made to PHP later on. Let's save the trouble and do it now. Add just below "access_log":<br />
<br />
client_max_body_size 12m;<br />
<br />
When you've finished up editing, press "Esc" on your keyboard. Vim will no longer say "INSERT" towards the bottom of the file.<br />
<br />
To save our changes and quit vim, press the following key sequence:<br />
SHIFT :(colon)<br />
wq<br />
Press "Enter"<br />
The above vim kung fu will write your changes to disk and exit vim, dropping you back into the bash shell.<br />
<br />
Now, we need to make a site-specific configuration for our example! We'll also delete the other example configurations. Try the following:<br />
<br />
$ cd conf.d<br />
$ rm example_ssl.conf default.conf<br />
$ vi my_site.conf<br />
<br />
We'll make a short and simple default.conf based loosely on the default NGINX configuration, but with a few tweaks. Press insert and you can copy/paste the below example.<br />
Don't forget to edit the "root" directive to point to the root directory of your website, and "server_name" to correspond to your domain.<br />
<br />
server {<br />
listen 80;<br />
<br />
root /path/to/your/website;<br />
index index.php index.html index.htm;<br />
<br />
server_name mydomainname.com www.mydomainname.com;<br />
<br />
location / {<br />
try_files $uri $uri/ /index.php;<br />
}<br />
<br />
location ~ \.php$ {<br />
try_files $uri =404;<br />
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;<br />
include fastcgi_params;<br />
fastcgi_pass unix:/var/run/php5-fpm.sock;<br />
}<br />
}<br />
<br />
<br />
Now we're done with the NGINX configuration section of this tutorial. We'll restart NGINX in a little bit, right after we install PHP.<br />
<br />
<br />
<b><i>PHP-FPM</i></b><br />
<br />
PHP-FPM is the PHP Fast Process Manager. It's required when using NGINX, because unlike Apache, NGINX doesn't run PHP as a module. This was done to reduce NGINX's memory footprint. Remember that part about NGINX being a reverse proxy first and foremost? Here's where that comes into play; PHP requests sent to NGINX are fed to PHP-FPM to do the heavy lifting.<br />
<br />
Let's install PHP-FPM.<br />
<br />
$ apt-get install php5-fpm php5-mysqlnd<br />
<br />
Note that depending on what your PHP scripts require, you may have to install other PHP modules not included by default. Popular ones are php5-gd and php5-mcrypt. You can install these with the following command.<br />
<br />
$ apt-get install php5-module_name_here<br />
<br />
Now that we've got PHP-FPM installed, we'll want to make a few quick edits to enhance security and functionality.<br />
<br />
$ cd /etc/php5/fpm<br />
$ vi php.ini<br />
<br />
Time for another quick vim lesson! The php.ini file is absolutely huge. Looking for a few key values will take all day. So since we know what we're looking for, we'll search. Type the following:<br />
<br />
/upload_max_filesize<br />
<br />
This, by default, is set to 2 megabytes. If you want to allow users to upload files to your PHP applications greater than 2 megabytes, you will need to change this. 10M is probably a safe bet for now, but higher values are also acceptable. This setting will vary among configurations. For sake of tutorial:<br />
<br />
/upload_max_filesize = 10M<br />
<br />
One more glaring security flaw. Scroll down a little further or search. We need to turn "allow_url_fopen" to "Off". This will prevent PHP from running PHP files hosted REMOTELY, otherwise known as RFI (Remote File Inclusion). Many servers are hacked this way.<br />
<br />
/allow_url_fopen = Off<br />
<br />
And because we changed "upload_max_filesize", we now have to change "post_max_size". This value should be a little bigger than "upload_max_filesize", because we have to take into account the overhead associated with our requests processed by PHP.<br />
<br />
Let's search one more time with "/post_max_size".<br />
<br />
/post_max_size = 12M<br />
<br />
Note that you'll have to go back to your NGINX configuration and edit "client_max_body_size" if you decide to go with larger values than these examples for your PHP file sizes.<br />
That's about it for now. Make sure you aren't in edit mode by pressing "Esc". Save and exit vim.<br />
SHIFT :(colon)<br />
wq<br />
Press 'Enter'<br />
PHP-FPM setup is complete.<br />
<br />
<br />
<b><i>MariaDB (SQL)</i></b><br />
<br />
Even in a world continuously moving towards NoSQL or MongoDB, some of us still find it easier to just stick with MySQL. This is especially true for many web applications. Fortunately, there now exist a number of "drop-in" replacements for Oracle MySQL. Debian 8 now includes the ever popular MariaDB. MariaDB is a fork of Oracle MySQL based on version 5.5. MariaDB, for all intents and purposes, calls this MariaDB 10. It is considered a FULL replacement for Oracle MySQL. Think of it as MySQL at heart, sans the Oracle branding, and some new features.<br />
<br />
$ apt-get install mariadb-server<br />
<br />
IMPORTANT: You absolutely, positively, need to pick a strong root password for MariaDB. Save it somewhere secure. You'll need to enter it twice during the MariaDB installation.<br />
<br />
Let's tweak the MariaDB configuration slightly. We're going to disable MariaDB listening via the network interface. Instead, as with PHP-FPM earlier, we'll stick only to a UNIX socket. Most PHP applications should support connecting to the database server via a UNIX socket instead of the local loopback interface.<br />
<br />
$ cd /etc/mysql<br />
$ vi my.cnf<br />
<br />
Look for "bind-address = 127.0.0.1". Comment that line out. Above or below it add "skip-networking".<br />
<br />
/ #bind-address = 127.0.0.1<br />
/skip-networking<br />
<br />
We're done with MariaDB! Eventually, you may want to tweak your MariaDB configuration depending on if you'll be using primarily the MyISAM or InnoDB storage engines, but also for the number of CPU cores and RAM available to your server. The defaults will get us up and running in the mean time.<br />
<br />
Let's restart each of the services for which configuration files were modified in this tutorial.<br />
<br />
$ systemctl restart nginx.service<br />
$ systemctl restart php5-fpm.service<br />
$ systemctl restart mysql.service<br />
<br />
<b><i><br /></i></b>
<b><i>Install phpMyAdmin</i></b><br />
<br />
if you wanna install phpMyAdmin use this command:<br />
<br />
$ sudo apt-get install phpmyadmin<br />
<br />
when the phpMyAdmin installation has been completed,<br />
Create a symbolic link between phpMyAdmin and the website root directory.<br />
Here will be website root document directory /usr/share/nginx/html/.<br />
<br />
$ sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/html<br />
<br />
Restart nginx server again<br />
with command:<br />
<br />
$ sudo service nginx restart<br />
<br />
Now manage your databases from phpMyAdmin web interface.<br />
<br />
That's it - we're all done. At this point, you have a fully functional LNMP ( LEMP ) server online!<br />
<br />
This guide was to serve as a general rule of thumb for getting started with with the above services with minimal tweaking. For further information, read the documentation for the above packages. While this example setup should work well right "out of the box", adjustments can, and most likely will need to be made to better suit your needs.<br />
<div>
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-53657403331341629212015-12-12T00:52:00.003+01:002015-12-13T22:50:24.844+01:00How to turn off / on NetworkManager from terminal?<span style="font-family: Verdana, sans-serif;">If you don't want to have your inteface make a DHCP request, simply edit it (right on network manager applet, choose "Edit Connections", click on the interface in question, then choose the IPv4 tab and change "Automatic (DHCP)" to "Manual" and specify your settings manually.<br /><br />If you need to turn off network manager regardless, use</span><pre style="background-color: #eeeeee; border: 0px; color: #111111; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><span style="background-color: #eeeeee; color: #111111; font-family: consolas, menlo, monaco, 'lucida console', 'liberation mono', 'dejavu sans mono', 'bitstream vera sans mono', 'courier new', monospace, sans-serif; font-size: 13px; white-space: inherit;">sudo service network-manager stop</span></pre>
<span style="font-family: Verdana, sans-serif;">You can specify stop, start or restart for most services.<br />ends commands you can use: stop, start and restart </span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-41101934937881431112015-11-20T17:46:00.000+01:002015-11-20T17:54:24.217+01:00ESXi shutdown and reboot commands thru SSH<span style="font-family: Verdana, sans-serif;">When virtual machines are running, ESXi/ESX might not clear the RAID controller's cache if you shut down or reboot the ESXi/ESX host using these commands on the service console:</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<ul>
<li><span style="font-family: Verdana, sans-serif;">reboot -f</span></li>
<li><span style="font-family: Verdana, sans-serif;">halt</span></li>
<li><span style="font-family: Verdana, sans-serif;">shutdown</span></li>
</ul>
<br />
<div class="doccontent cc_Details" style="background-color: white; border: 0px none; color: #666666; font-family: Arial, Helvetica, sans-serif; font-size: 12px; font-stretch: inherit; margin: 0px 10px 0px 11px; padding: 5px 0px 10px; vertical-align: baseline;">
<ul style="font-stretch: normal;">
</ul>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-80527359555044393472015-11-15T23:11:00.003+01:002018-02-19T13:28:29.436+01:00HowTo: Find Linux distribution name and version#How to check release on Linux / Debian / Ubuntu??<br />
<br />
You can use any one of the following method to find out your Linux
distribution and name:<br />
<br />
#1.] <kbd class="western">/etc/*-release </kbd>file.<br />
<br />
#2.] <kbd class="western">lsb_release </kbd>command.<br />
<br />
#3.] <kbd class="western">/proc/version </kbd>file.<br />
<h2 class="western">
Method #1: /etc/*-release file</h2>
To find out what version of Linux (distro) you are running, enter
the following command at the shell prompt:<br />
<code class="western">$ cat /etc/*-release</code><br />
Sample output from my RHEL v5.x server:<br />
<pre class="western">Red Hat Enterprise Linux Server release 5 (Tikanga)</pre>
Sample outputs from my Ubuntu Linux v7.10 server:<br />
<pre class="western">DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=7.10
DISTRIB_CODENAME=gutsy
DISTRIB_DESCRIPTION="Ubuntu 7.10"</pre>
<h2 class="western">
Method #2: lsb_release Command To Find Out Linux Distribution
Name/Version</h2>
The lsb_release command displays certain LSB (Linux Standard Base)
and distribution-specific information. Type the following command:<br />
<code class="western"><br /></code>
<code class="western">$ lsb_release -a</code><br />
<br />
Sample outputs:<br />
<pre class="western">
</pre>
<pre class="western">No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 6.0.1 (squeeze)
Release: 6.0.1
Codename: squeeze</pre>
<h2 class="western">
How Do I Find Out My Kernel Version?</h2>
Type the following command:<br />
<code class="western">$ uname -a</code><br />
OR<br />
<code class="western">$ uname -mrs</code><br />
Sample outputs:<br />
<pre class="western">Linux 2.6.32-5-amd64 x86_64</pre>
Where,<br />
<ol>
<li>
<strong>Linux </strong>- Kernel name<br />
</li>
<li>
<strong>2.6.32-5-amd64 </strong>- Kernel version number<br />
</li>
<li>
<strong>x86_64 </strong>- Machine hardware name (64 bit)<br />
</li>
</ol>
<h2 class="western">
<br /></h2>
<h2 class="western">
Method #3: /proc/version</h2>
Type the following command to see kernel version and gcc version
used to build the same:<br />
<code class="western"><br /></code>
<code class="western">$ cat /proc/version</code><br />
<br />
Sample outputs:<br />
Linux version 3.2.0-0.bpo.1-amd64 (Debian 3.2.4-1~bpo60+1) (ben@decadent.org.uk) (gcc version 4.4.5 (Debian 4.4.5-8) ) #1 SMP Sat Feb 11 08:41:32 UTC 2012Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-71637824617109481552015-11-15T22:47:00.001+01:002018-02-19T13:21:48.107+01:00Setting up MariaDB RepositoriesIf you wanna new installation of opensource SQL, i prefer MariaDB, is better develop than MySQL.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://downloads.mariadb.org/mariadb/repositories/#mirror=lund" target="_blank">Setting up MariaDB choose your distro..</a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheX7ptPcYrEVgMpK_y4Oe6CjimOQE8Gl8PFmcyQYvP2nA1man4yrJeQdvrwZ5g3pYHZQftuemPaKR2m7tk2WV6haBGN5vPzzE96p45X6kAx72LxLITJ1pcDGnxf3QG0FPrsVvfVrznYqU/s1600/Mariadb_logo1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="140" data-original-width="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheX7ptPcYrEVgMpK_y4Oe6CjimOQE8Gl8PFmcyQYvP2nA1man4yrJeQdvrwZ5g3pYHZQftuemPaKR2m7tk2WV6haBGN5vPzzE96p45X6kAx72LxLITJ1pcDGnxf3QG0FPrsVvfVrznYqU/s1600/Mariadb_logo1.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<br />
MariaDB is a drop-in replacement for MySQL<br />
<br />
MariaDB strives to be the logical choice for database professionals looking for a robust, scalable, and reliable SQL server. To accomplish this, the MariaDB Foundation work closely and cooperatively with the larger community of users and developers in the true spirit of Free and open source software, and release software in a manner that balances predictability with reliability.<br />
<div>
<br /></div>
<div>
<a href="https://mariadb.com/kb/en/mariadb/mariadb-vs-mysql-features/" target="_blank">MariaDB versus MySQL - Features</a></div>
<div>
<br /></div>
<div>
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-88206334959091291382015-11-11T20:50:00.000+01:002015-11-11T22:46:13.358+01:00Installing ESXI v.6 VMware Tools on Debian Linux<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">VMware Tools ESXI server v.6 Easy installing steps,</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There is no official deb installer available, <b><br /></b></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b>ESXI Server v. 6 VMware Tools</b> on Debian Linux.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Instead you need to install it manually.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Here is some idea how could you do it and it works.... :)</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz15L2SKEEiCsvl9iX-o1FiNH8eftNopC1YUUMaV_aHdTOjraXkmyb2lLKfFq4_1FtsndPqNVytqNQYOBy3FGFtdg1v0LWOubKKQx5uKjHgI6WHmjzSPt7TSDm3jLx_7YhZNoFyByhThM/s1600/esxi-server-mod.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="166" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz15L2SKEEiCsvl9iX-o1FiNH8eftNopC1YUUMaV_aHdTOjraXkmyb2lLKfFq4_1FtsndPqNVytqNQYOBy3FGFtdg1v0LWOubKKQx5uKjHgI6WHmjzSPt7TSDm3jLx_7YhZNoFyByhThM/s320/esxi-server-mod.png" width="320" /></a></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In vSphere Client, use the command <b>Guest – Install/Upgrade VMware Tools</b> (it “inserts” the VMware Tools ISO in the CD drive of the guest)</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"></span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Open console/SSH to the guest as root (or use sudo as needed)</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">mount /dev/cdrom /mnt</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">tar xzf /mnt/VMwareTools*</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">umount /mnt</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">apt-get update</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">apt-get install gcc make linux-headers-$(uname -r)</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">cd vmware-tools-distrib</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">./vmware-install.pl4096</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">cd</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">rm -rf vmware-tools-distrib</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">reboot</span></span></li>
</ul>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-14910251959840481382015-10-25T01:01:00.001+02:002016-01-24T01:13:39.858+01:00how to protect a file from being deleted even by root?<div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;">How
to prevent/protect a file from being deleted even by root?</span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;">There
is only one way to protect file from being deleted,</span><br />
<span style="font-family: inherit;">with one command
in your terminal.</span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;">Yes,
you can change the attributes of the file to read-only.</span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;"><br /></span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;">The
command is:</span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><b><i>$
chattr +i filename</i></b></span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;"><br /></span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;">And
to disable it:</span></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><b><i>$
chattr -i filename</i></b></span></div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-72306240451936554272015-09-15T18:36:00.000+02:002015-10-23T20:26:34.107+02:00How do you empty the buffers and cache on a Linux ?<h3>
Emptying the buffers cache</h3>
If you ever want to empty it you can use this chain of commands.<br />
<pre><code># free && sync && echo 3 > /proc/sys/vm/drop_caches && free
<span style="font-size: x-small;"> total used free shared buffers cached
Mem: 1018916 980832 38084 0 46924 355764
-/+ buffers/cache: 578144 440772</span></code></pre>
<pre><code><span style="font-size: x-small;">Swap: 2064376 128 2064248
total used free shared buffers cached
Mem: 1018916 685008 333908 0 224 108252
-/+ buffers/cache: 576532 442384
Swap: 2064376 128 2064248</span>
</code></pre>
You can signal the Linux Kernel to drop various aspects of cached items by changing the numeric argument to the above command.<br />
<ul>
<li>To free pagecache:<br />
<pre><code># echo 1 > /proc/sys/vm/drop_caches
</code></pre>
</li>
<li>To free dentries and inodes:<br />
<pre><code># echo 2 > /proc/sys/vm/drop_caches
</code></pre>
</li>
<li>To free pagecache, dentries and inodes:<br />
<pre><code># echo 3 > /proc/sys/vm/drop_caches
</code></pre>
</li>
</ul>
The above are meant to be run as root. If you're trying to do them using <code>sudo</code> then you'll need to change the syntax slightly to something like these:<br />
<pre><code> </code></pre>
<pre><code>$ sudo sh -c 'echo 1 >/proc/sys/vm/drop_caches'
$ sudo sh -c 'echo 2 >/proc/sys/vm/drop_caches'
$ sudo sh -c 'echo 3 >/proc/sys/vm/drop_caches'
</code></pre>
<br />
<strong>NOTE:</strong> There's a more esoteric version of the above command if you're into that:<br />
<pre><code> </code></pre>
<pre><code>$ echo "echo 1 > /proc/sys/vm/drop_caches" | sudo sh
</code></pre>
<br />
Why the change in syntax? The <code>/bin/echo</code> program is running as root, because of <code>sudo</code>,
but the shell that's redirecting echo's output to the root-only file is
still running as you. Your current shell does the redirection <em>before</em> <code>sudo</code> starts.<br />
<br />
<h3>
Swap</h3>
If you want to clear out your swap you can use the following commands.<br />
<pre><code>$ free
total used free shared buffers cached
Mem: 7987492 7298164 689328 0 30416 457936
-/+ buffers/cache: 6809812 1177680
Swap: 5963772 609452 5354320
</code></pre>
<br />
Then use this command to disable swap:<br />
<pre><code>$ swapoff -a
</code></pre>
<br />
You can confirm that it's now empty:<br />
<pre><code>$ free
total used free shared buffers cached
Mem: 7987492 7777912 209580 0 39332 489864
-/+ buffers/cache: 7248716 738776
Swap: 0 0 0
</code></pre>
<br />
And to re-enable it:<br />
<pre><code>$ swapon -a
</code></pre>
<br />
And now reconfirm with <code>free</code>:<br />
<pre><code>$ free
total used free shared buffers cached
Mem: 7987492 7785572 201920 0 41556 491508
-/+ buffers/cache: 7252508 734984
Swap: 5963772 0 5963772
</code></pre>
<br />
<br />
<div class="post-text" itemprop="text">
A more hammer and nail approach:<br />
<br />
<code>cat /dev/zero > /tmp/cache.cleaner ; rm -f /tmp/cache.cleaner</code><br />
<br />
<strong>This even doesn't need root access!</strong><br />
(Assuming your /tmp is mounted as tmpfs with max size)</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-16409806595453368502015-09-10T22:32:00.000+02:002015-09-10T22:38:06.941+02:00NMAP scan your networkNmap exempels<br />
quick scan of your network <br />
<br />
nmap -T Aggressive -v -n 192.168.0.100-200<br />
<br />
<br />
will look like this scan...<br />
<br />
....<br />
Discovered open port 9001/tcp on 192.168.0.31<br />
Discovered open port 6200/tcp on 192.168.0.34<br />
Discovered open port 3151/tcp on 192.168.0.37<br />
Discovered open port 261/tcp on 192.168.0.2<br />
Discovered open port 991/tcp on 192.168.0.13<br />
SYN Stealth Scan Timing: About 32.42% done; ETC: 20:05 (0:01:05 remaining)<br />
Discovered open port 7000/tcp on 192.168.0.123<br />
Discovered open port 3322/tcp on 192.168.0.159<br />
Discovered open port 6005/tcp on 192.168.0.142<br />
Discovered open port 89152/tcp on 192.168.0.183<br />
...<br />
<br />
Nmap scan report for 192.168.0.168<br />
Host is up (0.00062s latency).<br />
Not shown: 997 closed ports<br />
PORT STATE SERVICE<br />
23/tcp open telnet<br />
53/tcp open domain<br />
80/tcp open http<br />
MAC Address: 00:00:00:00:00:00 (Cisco-Linksys)<br />
<br />
Nmap scan report for 192.168.0.177<br />
Host is up (0.0051s latency).<br />
All 1000 scanned ports on 192.168.0.177 are closed<br />
MAC Address: 0C:71XXXXXXX (Samsung Electronics Co.)<br />
<br />
Initiating SYN Stealth Scan at 20:05<br />
Scanning 192.168.0.14 [1000 ports]<br />
Discovered open port 139/tcp on 192.168.0.14<br />
Discovered open port 445/tcp on 192.168.0.14<br />
Completed SYN Stealth Scan at 20:05, 1.67s elapsed (1000 total ports)<br />
Nmap scan report for 192.168.0.14<br />
Host is up (0.0000070s latency).Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-30946001781206087802015-07-25T23:13:00.000+02:002015-07-25T23:17:38.057+02:00<div class="headline_area">
<h1 class="headline" itemprop="name">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ubuntu Linux: Creating ethernet alias for eth0 network device</span></span></h1>
<div class="byline small">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span class="post_author_intro"></span><span class="post_date" title="2006-06-17"><br /></span></span></span></div>
</div>
<div style="float: right; margin-left: 5px; margin-top: 0px;">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><a href="http://www.cyberciti.biz/tips/category/ubuntu-linux" title="See all Ubuntu Linux related FAQ"><img border="0" src="http://figs.cyberciti.biz/3rdparty/ubuntu-logo.jpg" /></a></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> how to create alias for eth0 so that I can have multiple IP address?</span></span><br />
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To create alias for eth0 use ifconfig command. </span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">It is use to configure a network interface and aliases.</span></span><br />
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Assuming
that your eth0 IP is 192.168.1.10 </span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">and you would like to create an alias
eth0:0</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">with IP 192.168.1.11.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Type the following command:</span></span><br />
<div class="code">
<br /></div>
<div class="code">
<i><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">#sudo ifconfig eth0:0 192.168.1.11 up</span></span></i></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">or</span></span><br />
<div class="code">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><i>#sudo /sbin/ifconfig eth0:0 192.168.1.11 up</i></span></span></div>
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Verify that alias is up and running using following two command(s):</span></span><br />
<div class="code">
<br /></div>
<div class="code">
<i><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">#/sbin/ifconfig<br /> #ping 192.168.1.11<br /> #ping your-getway-ip</span></span></i></div>
<h3>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> </span></span></h3>
<h3>
<span style="font-family: Verdana,sans-serif; font-size: large;">Permanent configuration</span></h3>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Your
ethernet configuration is located in a file called
/etc/network/interfaces.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If you reboot system you will lost your alias.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To make it permanent you need to add it network configuration file:</span></span><br />
<div class="code">
<br /></div>
<div class="code">
<i><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">#sudo nano /etc/network/interfaces</span></span></i></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">on Debian as root:</span></span><br />
<div class="code">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"># nano /etc/network/interfaces</span></span></div>
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Append the following configuration:</span></span><br />
<div class="code">
<br /></div>
<div class="code">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">auto eth0:0<br /> iface eth0:0 inet static<br /> name Ethernet alias LAN card<br /> address 192.168.1.11<br /> netmask 255.255.255.0<br /> broadcast 192.168.1.255<br /> network 192.168.1.0</span></span></div>
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Save the file and restart system or restart the network:</span></span><br />
<div class="code">
<br /></div>
<div class="code">
<i><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">#sudo /etc/init.d/networking restart</span></span></i></div>
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Please note that you can also use graphical tools located at <b><span style="color: #996633;"> </span></b></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b><span style="color: #996633;">System > Administration > Networking</span></b> menu. </span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Or use the following GUI tool to setup aliases, hostname, dns settings etc:</span></span><br />
<div class="code">
<br /></div>
<div class="code">
<i><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">#sudo network-admin</span></span></i></div>
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If you want more network aliases, use eth0:1, eth0:2, eth0:N (max upto 254).</span></span><br />
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">#Perfect Server Setup </span></span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-41937284673797885042015-07-25T23:01:00.002+02:002015-07-25T23:01:56.556+02:00how to check release on Ubuntu, Debian ?<div class="_xXc">
<div class="_zXc">
<span style="font-family: Verdana,sans-serif;"><b>To check your Ubuntu version using the command line:</b></span></div>
<div class="_yXc">
<ol class="_jYe">
<li class="_AXc"><span style="font-family: Verdana,sans-serif;">Open a Terminal by pressing Ctrl + Alt + T .</span></li>
<li class="_AXc"><span style="font-family: Verdana,sans-serif;">Type: lsb_release -a and press Enter.</span></li>
</ol>
</div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-47633005029923743262015-07-25T18:54:00.001+02:002015-07-25T18:57:51.704+02:00TIME synchronize on server with NTP<h2 id="-synchronize-the-system-clock">
<span style="font-family: Verdana,sans-serif;">Synchronize the System Clock</span></h2>
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">It is a good idea to synchronize the system clock with an </span><br />
<span style="font-family: Verdana,sans-serif;">NTP (<b>n</b>etwork <b>t</b>ime <b>p</b>rotocol) server over the Internet. </span><br />
<br />
<span style="font-family: Verdana,sans-serif;">Simply run</span><br />
<span style="font-family: Verdana,sans-serif;">
</span>
<br />
<div class="command">
<b><i><span style="font-family: "Courier New",Courier,monospace;">#apt-get install ntp ntpdate</span></i></b></div>
<span style="font-family: Verdana,sans-serif;">
</span>
<br />
<span style="font-family: Verdana,sans-serif;">and your system time will always be in sync.</span><br />
<br />
<br />
<span style="font-family: Verdana,sans-serif;"><span style="font-size: small;"><br />
</span><span style="font-size: x-small;"><span style="font-size: small;"><i>#Perfect server set up</i></span></span></span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-20028132481437567062015-07-25T17:42:00.002+02:002015-07-25T20:31:08.698+02:00how to prevent laptop from sleeping when closing lid ?<div class="reduced-margins">
</div>
<div class="reduced-margins">
<span style="font-family: Verdana,sans-serif; font-size: small;"><b>Stop Going to Sleep When Closing the Laptop</b></span></div>
<br />
<span style="font-family: Verdana,sans-serif; font-size: small;">#how_to_disable_lid_on_laptop_in_terminal</span><br />
<br />
<ul>
<li><span style="font-family: Verdana,sans-serif;">Open Terminal</span></li>
<li><span style="font-family: Verdana,sans-serif;">type in the command below (as root)</span></li>
</ul>
<span style="font-family: Verdana,sans-serif;">
</span>
<br />
<pre><code><b>sudo gedit /etc/systemd/logind.conf</b></code></pre>
<ul>
<li><span style="font-family: Verdana,sans-serif;">Now the logind.conf file will open in Gedit text editor</span></li>
<li><span style="font-family: Verdana,sans-serif;">set the variable “<b>HandleLidSwitch</b>” to “ignore”, as in the example below:</span></li>
</ul>
<pre> </pre>
<pre>[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#Controllers=
#ResetControllers=cpu
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
<b>HandleLidSwitch=ignore</b>
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#LidSwitchIgnoreInhibited=yes
</pre>
<ul>
<li><span style="font-family: Verdana,sans-serif;">Now reboot</span></li>
</ul>
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">With this change, reboot your system and feel free to close your
laptop lid that it will no longer go to sleep. Now you are done!</span><br />
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;"><b>Enjoy!</b></span><br />
<br />
<br />
i'm using that to create server on my Laptop,<br />
less power consumptions and recycle old computer.. <br />
<br />
<br />
#Perfect server set upUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-55323725367518964352015-05-20T23:42:00.000+02:002015-05-20T23:56:48.080+02:00 ffmpeg audio format conversions<div class="item-page">
<div class="page-header">
<h2>
How to Convert Audio format in linux.. </h2>
<h2>
Audio</h2>
</div>
<h2 id="h1-1-wav-waveform-audio-file-format">
1.1. WAV - Waveform Audio File Format</h2>
<h3 id="h1-1-1-wav-to-mp3">
1.1.1. wav to mp3</h3>
Convert wav to mp3 with ffmpeg:<br />
<pre style="width: 400px;">ffmpeg -i audio.wav -acodec libmp3lame audio.mp3
</pre>
<h3 id="h1-1-2-wav-to-ogg">
1.1.2. wav to ogg</h3>
Convert wav to ogg with ffmpeg:<br />
<pre style="width: 400px;">ffmpeg -i audio.wav -acodec libvorbis audio.ogg</pre>
<h3 id="h1-1-3-wav-to-aac">
1.1.3. wav to aac</h3>
Convert wav to acc with ffmpeg:<br />
<pre style="width: 400px;">ffmpeg -i audio.wav -acodec libfaac audio.aac
</pre>
<h3 id="h1-1-4-wav-to-ac3">
1.1.4. wav to ac3</h3>
Convert wav to ac3 with ffmpeg:<br />
<pre style="width: 400px;">ffmpeg -i audio.wav -acodec ac3 audio.mp3
</pre>
<h2 id="h1-2-ogg-free-open-standard-container">
1.2. OGG - Free, open standard container</h2>
<h3 id="h1-2-1-ogg-to-mp3">
1.2.1. ogg to mp3</h3>
Convert ogg to mp3 with ffmpeg:<br />
<pre>ffmpeg -i audio.ogg -acodec libmp3lame audio.mp3
</pre>
<h3 id="h1-2-2-ogg-to-wav">
1.2.2. ogg to wav</h3>
Convert ogg to wav with ffmpeg:<br />
<pre>ffmpeg -i audio.ogg audio.wav</pre>
<h3 id="h1-2-3-ogg-to-aac">
1.2.3. ogg to aac</h3>
Convert ogg to aac with ffmpeg:<br />
<pre>ffmpeg -i audio.ogg -acodec libfaac audio.aac
</pre>
<h3 id="h1-2-4-ogg-to-ac3">
1.2.4. ogg to ac3</h3>
Convert ogg to ac3 with ffmpeg:<br />
<pre>ffmpeg -i audio.ogg -acodec ac3 audio.ac3
</pre>
<h2 id="h1-3-ac3-acoustic-coder-3">
1.3. AC3 - Acoustic Coder 3</h2>
<h3 id="h1-3-1-ac3-to-mp3">
1.3.1. ac3 to mp3</h3>
Convert ac3 to mp3 with ffmpeg:<br />
<pre>ffmpeg -i audio.ac3 -acodec libmp3lame audio.mp3
</pre>
<h3 id="h1-3-2-ac3-to-wav">
1.3.2. ac3 to wav</h3>
Convert ac3 to wav with ffmpeg:<br />
<pre>ffmpeg -i audio.ac3 audio.wav</pre>
<h3 id="h1-3-3-ac3-to-aac">
1.3.3. ac3 to aac</h3>
Convert ac3 to aac with ffmpeg:<br />
<pre>ffmpeg -i audio.ac3 -acodec libfaac audio.aac
</pre>
<h3 id="h1-3-4-ac3-to-ogg">
1.3.4. ac3 to ogg</h3>
Convert ac3 to ogg with ffmpeg:<br />
<pre>ffmpeg -i audio.ac3 -acodec libvorbis audio.ogg
</pre>
<h2 id="h1-4-aac-advanced-audio-coding">
1.4. AAC - Advanced Audio Coding</h2>
<h3 id="h1-4-1-aac-to-mp3">
1.4.1. aac to mp3</h3>
Convert aac to mp3 with ffmpeg:<br />
<pre>ffmpeg -i audio.aac -acodec libmp3lame audio.mp3
</pre>
<h3 id="h1-4-2-aac-to-wav">
1.4.2. aac to wav</h3>
Convert aac to wav with ffmpeg:<br />
<pre>ffmpeg -i audio.aac audio.wav</pre>
<h3 id="h1-4-3-aac-to-ac3">
1.4.3. aac to ac3</h3>
Convert aac to ac3 with ffmpeg:<br />
<pre>ffmpeg -i audio.aac -acodec ac3 audio.ac3
</pre>
<h3 id="h1-4-4-aac-to-ogg">
1.4.4. aac to ogg</h3>
Convert aac to ogg with ffmpeg:<br />
<pre>ffmpeg -i audio.aac -libvorbis audio.ogg
</pre>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-37667620308333754702015-05-09T19:16:00.001+02:002015-05-20T23:54:46.166+02:00Wan IP, external service WAN<h1>
<span style="font-family: Verdana,sans-serif;">Finding external IP using external services</span></h1>
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">The easiest way is to use an external service via a commandline browser or download tool. Since <code>wget</code> is available by default in Ubuntu, we can use that.<br />
To find your ip, use- </span><br />
<pre><code> </code></pre>
<pre><code><b>wget -qO- http://ipecho.net/plain ; echo</b>
</code></pre>
<br />
<span style="font-family: Verdana,sans-serif;">You could also use <code>lynx</code>(browser) or <code>curl</code> in place of <code>wget</code> with minor variations to the above command, to find your external ip.</span><br />
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">Using <code>curl</code> to find the ip: </span> <br />
<pre><code> </code></pre>
<pre><code><b>curl ipecho.net/plain</b>
</code></pre>
<br />
<span style="font-family: Verdana,sans-serif;">For a better formatted output use:</span><br />
<pre><code> </code></pre>
<pre><code><b>curl ipecho.net/plain ; echo</b>
</code></pre>
<b><span style="font-size: large;"><br />A faster(arguably the fastest) <br />method using <span style="font-family: "Courier New",Courier,monospace;">dig</span> with <i>OpenDNS</i> as resolver:</span></b><span style="font-family: Verdana,sans-serif;">
</span><br />
<blockquote>
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">The other answers here all go over HTTP to a remote server. Some of
them require parsing of the output, or rely on the User-Agent header
to make the server respond in plain text. They also change quite
frequently (go down, change their name, put up ads, might change
output format etc.).</span><br />
<span style="font-family: Verdana,sans-serif;">
</span><br />
<ol>
<li><span style="font-family: Verdana,sans-serif;">The DNS response protocol is standardised (the format will stay compatible).</span></li>
<li><span style="font-family: Verdana,sans-serif;">Historically DNS services (OpenDNS, Google Public DNS, ..) tend to
survive much longer and are more stable, scalable and generally looked
after than whatever new hip whatismyip.com HTTP service is hot today.</span></li>
<li><span style="font-family: Verdana,sans-serif;">(for those geeks that care about micro-optimisation), this method
should be inherently faster (be it only by a few micro seconds).</span></li>
</ol>
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">Using dig with OpenDNS as resolver:</span></blockquote>
<pre><code><b>$ dig +short myip.opendns.com @resolver1.opendns.com
111.222.333.444</b></code></pre>
<pre><code><b> </b>
</code></pre>
<br />
<br /><b><span style="font-size: large;"><span style="font-family: Verdana,sans-serif;">Finding external IP </span></span></b><br />
<b><span style="font-size: large;"><span style="font-family: Verdana,sans-serif;">without relying on external services</span></span></b><br />
<span style="font-family: Verdana,sans-serif;">
</span><br />
<ul>
<li><span style="font-family: Verdana,sans-serif;"><b>If you know your network interface name</b></span></li>
</ul>
<span style="font-family: Verdana,sans-serif;">
</span><span style="font-family: Verdana,sans-serif;">Type the following in your terminal:</span><br />
<pre><code> </code></pre>
<pre><b><code>ifconfig | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'
</code></b></pre>
<b>
</b><br />
<span style="font-family: Verdana,sans-serif;">In the above, replace <code></code> with the name of your actual interface, e.g: </span><code> </code><br />
<br />
<b><code>eth0</code>, <code>eth1</code>, <code>pp0</code>,</b> <span style="font-family: Verdana,sans-serif;">etc...</span><br />
<br />
<span style="font-family: Verdana,sans-serif;"><b>Example Usage:</b></span><br />
<pre><code> </code></pre>
<pre><code><b>mycomp@geek:~$ ifconfig ppp0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'
111.222.333.444</b>
</code></pre>
<ul>
<li><span style="font-family: Verdana,sans-serif;"><b>If you don't know your network interface name</b></span></li>
</ul>
<span style="font-family: Verdana,sans-serif;">Type the following in your terminal (this gets the ip address of every network interface in your system):</span><br />
<pre><code> </code></pre>
<pre><b><code>ifconfig |grep -B1 "inet addr" |awk '{ if ( $1 == "inet" ) { print $2 } </code></b></pre>
<pre><b><code>else if ( $2 == "Link" ) { printf "%s:" ,$1 } }' |awk -F: '{ print $1 ": " $3 }'
</code></b></pre>
<b>
</b><br />
<span style="font-family: Verdana,sans-serif;"><b>Example Usage:</b></span><br />
<pre><code> </code></pre>
<pre><b><code>mycomp@geek:~$ ifconfig |grep -B1 "inet addr" |awk '{ if ( $1 == "inet" ) { print $2 } </code></b></pre>
<pre><b><code>else if ( $2 == "Link" ) { printf "%s:" ,$1 } }' |awk -F: '{ print $1 ": " $3 }'
lo: 127.0.0.1
ppp0: 111.222.333.444
</code></b></pre>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-14135502272418657852015-03-08T21:04:00.000+01:002015-03-08T21:30:33.667+01:00Set / Change / Reset MySQL, MariaDB root password on Ubuntu Linux 14.10 Server<div>
<span style="font-family: Verdana, sans-serif;">Tested on<br />
</span><br />
<ul><span style="font-family: Verdana, sans-serif;">
<li>Ubuntu Linux 14.10 Utopic Unicorn and MariaDB 5.5.41 (2015-03-08)</li>
<li>Ubuntu Linux 7.10 Gutsy Gibbon and MySQL 5.0.45. (2007-10-21)</li>
<li>Ubuntu Linux 6.06 Dapper Drake and MySQL 4.1.15.</li>
</span></ul>
<span style="font-family: Verdana, sans-serif;"><br />
Set / change / reset the...</span></div>
<div>
<ul>
<li><span style="font-family: Verdana, sans-serif;"> MySQL</span></li>
<li><span style="font-family: Verdana, sans-serif;"> MariaDB </span></li>
</ul>
</div>
<div>
<span style="font-family: Verdana, sans-serif;">root password on Ubuntu Linux. Enter the following lines in your terminal. </span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<span style="font-family: Verdana, sans-serif;">Stop the MySQL Server. </span><div>
<ul>
<li><span style="background-color: black; color: white; font-family: Verdana, sans-serif;">sudo /etc/init.d/mysql stop</span></li>
</ul>
</div>
<div>
<span style="font-family: Verdana, sans-serif;">Start the mysqld configuration.</span><ul>
<li><span style="background-color: black; color: white; font-family: Verdana, sans-serif;">sudo mysqld --skip-grant-tables &</span></li>
</ul>
<span style="font-family: Verdana, sans-serif;">Login to MySQL as root.</span><ul>
<li><span style="background-color: black; color: white; font-family: Verdana, sans-serif;">mysql -u root mysql</span></li>
</ul>
<span style="font-family: Verdana, sans-serif;">Replace YOURNEWPASSWORD with your new password!</span><ul>
<li><span style="background-color: black; color: white; font-family: Verdana, sans-serif;">UPDATE user SET Password=PASSWORD('YOURNEWPASSWORD') WHERE User='root'; FLUSH PRIVILEGES; exit;</span></li>
</ul>
<span style="font-family: Verdana, sans-serif;"><br />Note: This method is not regarded as the securest way of resetting the password. However it works.</span></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-34540582125595232882014-12-03T22:44:00.001+01:002014-12-03T22:53:18.348+01:00Preventing Files from Being Modified or Deleted (even by root)<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #134f5c;">How is it done?</span></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br />
The task is achieved with the chattr command, which is used in order to change the attributes of a file. The option which is relevant in our case is the "i" option: "+i" to activate and "-i" to deactivate the protection for the file. The "i" stands for "immutable", which means "can't be changed".</span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br />
The following commands should be entered as root.</span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><b>Protecting the file (adding the "i" attribute):</b></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #38761d;"># chattr +i <file directory="" or=""></file></span></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><b>Removing protection for the file (removing the "i" attribute):</b></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #38761d;"># chattr -i <file directory="" or=""></file></span> </span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br />
In both cases above, if the action is performed on directories: the "-R" option can be added, to execute the commands recursively (on sub-dirs and on their files as well).</span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><b>To list the attributes of a file (including the "i" attribute): </b></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #38761d;"># lsattr <file directory="" or=""> </file></span></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #134f5c;">Examples</span></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br />
We're logged-in as root. Lets create the file important.txt, and add some text to it:</span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #38761d;"># echo "This is a very important file." >important.txt</span></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br />
Currently, root can of course continue modifying the contents of the file, and can also rename it or delete it, at will.</span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br />
Lets see what happens when we add the "i" attribute to the file:</span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><span style="color: #38761d;"># chattr +i important.txt<br /># lsattr important.txt</span></span></span>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><br /></span></span>
<br />
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOccrbC-pwQ494uWWcehNuepyGn-SbN6rlm64NWa11cjJR3PCwF2kkmNqpznW4rIOTGRGCjaGsTpykvxucvjLD4mJnyB8uD-R-KVB0M_k_jA2U35vMlN57nO4A6Il5JOh9FM8rZDOd0k5L/s1600/chattr-1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOccrbC-pwQ494uWWcehNuepyGn-SbN6rlm64NWa11cjJR3PCwF2kkmNqpznW4rIOTGRGCjaGsTpykvxucvjLD4mJnyB8uD-R-KVB0M_k_jA2U35vMlN57nO4A6Il5JOh9FM8rZDOd0k5L/s1600/chattr-1.png" height="50" width="400" /></a></span></span></div>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;">
<br />
We can see that the "i" attribute was added to the file.<br />
<br />
<b>Can root modify the file?</b><br />
<br />
<span style="color: #38761d;"># echo "This is an additional line of text." >>important.txt</span><br />
<br />
<span style="color: #38761d;"></span><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRTVRclL7RiG_hLmKd-cwQd3m_b0ykC4YQsn1oGKF0AHxYvXaY9NcmjXUx3u-_qQxjwKQoBKvkxO1baWfpxt7XQvGEvn3pBlp2qRSLg7V0gtxRw8VKQV9nFNCKdS5n5OV2NowrkCYVuKLG/s1600/chattr-2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRTVRclL7RiG_hLmKd-cwQd3m_b0ykC4YQsn1oGKF0AHxYvXaY9NcmjXUx3u-_qQxjwKQoBKvkxO1baWfpxt7XQvGEvn3pBlp2qRSLg7V0gtxRw8VKQV9nFNCKdS5n5OV2NowrkCYVuKLG/s1600/chattr-2.png" height="22" width="400" /></a> <br />
<br />
<b>Can root rename the file?</b><br />
<br />
<span style="color: #38761d;"># mv important.txt important2.txt</span><br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZrhtNgbDKtN2pMXaJZFbmEmA6I_1cG6ImvXqeDamjatc-pfpytrXNY6rAGeZPSwhZmO-Hi87TITnoAsPF6x7pRD75hItLQ4ixsPyKApt81z4Qcli8WCQDJHb1Bt7UPz8rsC2uXJQRdDPJ/s1600/chattr-3.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZrhtNgbDKtN2pMXaJZFbmEmA6I_1cG6ImvXqeDamjatc-pfpytrXNY6rAGeZPSwhZmO-Hi87TITnoAsPF6x7pRD75hItLQ4ixsPyKApt81z4Qcli8WCQDJHb1Bt7UPz8rsC2uXJQRdDPJ/s1600/chattr-3.png" height="23" width="400" /></a><b> </b><br />
<br />
<b>Finally, can root delete the file?</b><br />
<br />
<span style="color: #38761d;"># rm important.txt</span><br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwuVOWifBF4X1px1zaTga0KL3d_YMcQr3j22dQWLT_qVcFDZ7RxkJmXneXnx4Z7ZWfWfiSm_HO8IjK4_eRFxEM_pUln8N4X_Ev1s6VMHxWFAWMxaSizfoMaE073FK8hwGz7vbBiRfRyjM5/s1600/chattr-4.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwuVOWifBF4X1px1zaTga0KL3d_YMcQr3j22dQWLT_qVcFDZ7RxkJmXneXnx4Z7ZWfWfiSm_HO8IjK4_eRFxEM_pUln8N4X_Ev1s6VMHxWFAWMxaSizfoMaE073FK8hwGz7vbBiRfRyjM5/s1600/chattr-4.png" height="60" width="460" /></a><br />
<br />
As can be seen, the answer to all questions above is - <b>no</b>. The file is fully protected from: modification of its contents, renaming and deleting. This is true even while logged-in as root. This will change only after we issue the opposite command: <span style="color: #38761d;"># chattr -i important.txt</span> - which will remove the special protection measures we've added to the file, and will return its state to normal.</span></span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-90247985697652274.post-13455665153303019152014-11-11T13:47:00.000+01:002014-11-11T14:09:21.380+01:00<h3 class="post-title entry-title" itemprop="name">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> Using wget to Download an Entire Website </span></span></h3>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"> </span></span> <br />
<div class="post-header">
</div>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"> wget is a complex tool, intended for downloading files from the Internet. It has many available options, one of which is the --mirror option, which allows us to download a full Website so that it can later on be viewed offline. This is useful for mainly two purposes: A. Creating a full backup of the Website. and - B. Viewing the Website, in those rare cases in which we're offline & without an available Internet connection.<br />
<br />
<b>Note:</b> Don't expect wget to be able to receive access to "back-end" components, which are required for the full functionality of the Website. The --mirror option is intended for the visible, "front-end" components.<br />
<br />
Here's how it's done:<br />
<br />
<span style="background-color: white;"><span style="color: #38761d;"><span style="color: orange;">$ wget --mirror --convert-links -p --no-parent -w </span><delay in="" seconds=""><span style="color: orange;"> -P <span style="background-color: black;"></span></span></delay></span><local directory=""> <website url=""></website></local></span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;">Explanation of the options used above:</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: orange;">--mirror</span> (or: '-m') : The basic option which achieves the task of backing up the Website.</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: orange;">--convert-links</span> (or: '-k') : Save the Website's links in local viewing format (links are defined to work locally & offline).</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: orange;">-p</span> : Download all required files, so that the Website's functionality is maintained and preserved as much as possible.</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: orange;">--no-parent</span> : Only files below the specified location will be downloaded. The parent directory won't be accessed during the download process.</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"><span style="color: orange;">-w</span> <delay in="" seconds=""></delay></span> : Add a delay (in seconds) to each downloaded element, in order to avoid creating stress on the remote server (possibly resulting in being blocked during the process). </span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"><span style="color: orange;">-P</span> <local directory=""></local></span> : The local directory to save the Website to.</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;">It's also possible to exclude the downloading of certain file types & directories, and to prevent access to external domains, by adding the following options:</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: orange;"><br />
</span><span style="color: #38761d;"><span style="color: orange;">--reject</span> <filetype1 filetype2...=""></filetype1></span> : Don't download the specified file types (comma-separated list). For example: --reject *.pdf,*.jpg will prevent the downloading of any .pdf or .jpg files.</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"><span style="color: orange;">--exclude-directories=</span><dir1 dir2...=""></dir1></span> : Don't download the specified directories (comma-separated list).</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"><span style="color: orange;">--domains=</span><domain1 .com="" domain2.com...=""></domain1></span> : Don't follow any links outside of the specified domain names (comma-separated list).</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><b>Note:</b> The mirroring achieved with wget isn't always perfect, and there definitely are cases in which certain aspects of the Website's functionality aren't fully available while offline. If the results are not satisfactory, a possible alternative could be to use the tool <a href="http://www.httrack.com/" target="_blank">HTTrack Website Copier</a>.</span></span>Unknownnoreply@blogger.com0