Payment day coming (2018) | SparkyLinux

Donate Like a year ago, and ago, and ago, Sparky needs YOUR help now!

As you probably know, SparkyLinux is a non-profit project so does not earn money.
And probably some of you know that we have to pay bills for hosting server (vps), domains, the power (electricity), broadband (internet connection), etc., etc., from our personal, home budget.

The time for paying for our server coming quickly again so help us sending donation now!

This year we need 1200 PLN for the VPS which has to be paid until November 9, 2018.

And as every month, we also need 500 PLN for other bills to cover most our needs.

So all together, this month, we need your donations for about 1700 PLN / ~400 Euros / ~460 USD), please.

We also have asked for donations our community at Linuxiarze.pl and ArchiveOS.org as well. Our virtual server hosts a few web pages, all IT / Open Source / Linux related: SparkyLinux.org, Linuxiarze.pl, ArchiveOS.org and SoftMania.org.

So please donate now to keep Sparky alive. Any donation will be very helpful.

You are the best community in the Universe so I really believe we CAN do it!

Visit the donation page to find how to send out money.
Aneta & Paweł

Source

Sparky 5.5.1 Rescue | SparkyLinux

The live media of Sparky Rescue Edition is updated up to 5.5.1 which provides minor bugs fixing.

Changes:
– system updated from Debian testing repos as of October 05, 2018
– fixed menu entry of DDRescue-GUI and Gparted
– added new tools: vim, chntpw, sparky-aptus
– reconfigured sparky-remsu tool: changed name of sparky-xterm-exec to sparky-remsu-exec, so it had to be changed in obmenu-generator too. The old name could confuse users so the new one is much proper. The sparky-remsu-exec tool lets run non-sparky tools with root privileges.

The new iso images can be download from the download/rolling page.

Source

Vimix Themes and Icons Now Offers More Variants And Looks Great – NoobsLab

Vimix

themes are around from quite a while, it’s been in development since 2013 and continuously evolving. The creator of vimix is dedicated to work on Linux eyecandy, you can checkout other themes as well from same creator:

Qogir

Matcha

Canta

and make sure to give feedback to the creator that what you think of the work done.

Vimix is a Material design flat theme for GTK and Gnome Shell based on Flat-Plat theme. It supports most of the desktop environments such as: Gnome, Gnome Shell, Cinnamon, Xfce, Mate, Budgie etc. There are two variants for the themes normal and color, the main different in themes variants is title-bar buttons. Vimix theme pack is available via our PPA for Ubuntu/Linux Mint. If you are using distribution other than Ubuntu/Linux Mint then download file directly from theme pack page and install it in this location “~/.themes” or “/usr/share/themes”. If you find any kind of bug or issue within this theme then report it to creator and hopefully it will get fixed very soon.

Available for Ubuntu 18.04 Bionic/18.10 Cosmic/Linux Mint 19/other Ubuntu derivatives
To install Vimix Themes in Ubuntu/Linux Mint open Terminal (Press Ctrl+Alt+T) and copy the following commands in the terminal:
Available for Ubuntu 18.04 Bionic/18.10 Cosmic/16.04 Xenial/14.04 Trusty/Linux Mint 19/18/17/other Ubuntu derivatives
To install Vimix Icons in Ubuntu/Linux Mint open Terminal (Press Ctrl+Alt+T) and copy the following commands in the terminal:

That’s it

Source

Know About Bash for Loop in Linux with Examples

bash for loop

How to make automation with bash for loop under Linux/UNIX operating system? How do I use break, continue and the parameter for loop control expression? How to act on files using for loop?

For loop is a very useful tool to solve many problems in the programming world and therefore we will solve some problems in the real world. In Linux we use loops via Bash, Python to make automation like password script, counting script. In this article, we will explain all of the kind of loops for Bash.

1) for loop

We can use For loop to read all elements in a list or part of them and displaying these elements on the screen.

Syntax of For loop

for variable in element1 element2 element3 Or <List>
do
commands
done

We will make a script to send greeting message for each day of the week, so we will use for loop to read each day and print it out. Create file welcome.sh with nano editor and paste code below.

#!/bin/bash
for day in Sunday Saturday Monday Tuesday Wednesday Thursday Friday
do
echo “Welcome $day day”
done

Run the welcome.sh file with bash command.

$ bash welcome.sh

output
Welcome Sunday day
Welcome Saturday day
Welcome Monday day
Welcome Tuesday day
Welcome Wednesday day
Welcome Thursday day
Welcome Friday day

The for loop will take each item in the list respectively, and assign this item to the variable $day, after that execute the code between do and done then go back to the top, assign the next item in the list and repeat over.

We can use a range with for loop to put start point and end point.

#!/bin/bash
for i in
do
echo “Welcome $i times”
done

$ bash range.sh

output
Welcome 10 times
Welcome 11 times
Welcome 12 times
Welcome 13 times
Welcome 14 times
Welcome 15 times
Welcome 16 times
Welcome 17 times
Welcome 18 times
Welcome 19 times
Welcome 20 times

If we want to count even number from 1 to 20, we will add step for range.

#!/bin/bash
for i in
do
echo “Welcome $i times”
done

$ bash even.sh

output
Welcome 10 times
Welcome 12 times
Welcome 14 times
Welcome 16 times
Welcome 18 times
Welcome 20 times

Another type of using step with for loop.

#!/bin/bash
for ((i=1;i<=25;i+=5))
do
echo $i
done

$ bash step5.sh

output
1
6
11
16
21

And for negative step we can use the following type.

#!/bin/bash
for ((i=25;i>=1;i-=5))
do
echo $i
done

$ bash step-5.sh

output
25
20
15
10
5

Examples on For loop

1) Acting on files using for loop

Bash For loop is the best way when we are working on files.

#!/bin/bash
for file in ~/*.txt
do
echo $file
done

$ bash find_txt.sh

output
/root/cat.txt
/root/echo.txt
/root/file.txt
/root/f.txt
/root/nano.txt
/root/printf.txt

2) One line For loop

we can execute For loop in one line, we will rename all *.txt files to remove the file extension.

$ for filename in *.txt; do mv “$filename” “$”; done

Or in script

!#/bin/bash
for filename in *.txt
do
mv “$filename” “$”
done

3) Reading Command-line arguments

When we are executing For loop script, we can enter arguments.

for myvalue in $*
do
echo “Argument: $myvalue”
done

$ bash linoxide.sh I Love LinOxide
output
Argument: I
Argument: Love
Argument: LinOxide

4) Reading odd and even number

We will write script to read the even and the odd numbers.

for (( n=10; n<=15; n++ ))
do
if (( $n%2==0 ))
then
echo “$n is even”
else
echo “$n is odd”
fi
done

$ bash even_odd.sh
output
10 is even
11 is odd
12 is even
13 is odd
14 is even
15 is odd

2) while loop

While loop depend on the condition is true, if the condition is false the interpreter get out from the loop.

Syntax of while loop

while [ <some condition> ]do
<commands>
done

We will count from 10 to 20 and print out the results. So we will put a condition that the counter less than or equal 20.

#!/bin/bash
# Basic while loop
counter=10
while [ $counter -le 20 ]
do
echo Number : $counter
((counter++))
done

$ bash while.sh

output
Number : 10
Number : 11
Number : 12
Number : 13
Number : 14
Number : 15
Number : 16
Number : 17
Number : 18
Number : 19
Number : 20

3) Until loop

Until loop like while loop but the interpreter excute the commands within it until the condition becomes true.

Syntax of until loop

until [ <some condition> ]do
<commands>
done

We will count from 10 to 20 and print out the results. So we will put a condition that the counter greater than or equal 20.

#!/bin/bash
# Basic Until loop
counter=10
until [ $counter -gt 20 ]
do
echo Number : $counter
((counter++))
done

$ bash until.sh

output
Number : 10
Number : 11
Number : 12
Number : 13
Number : 14
Number : 15
Number : 16
Number : 17
Number : 18
Number : 19
Number : 20

4) Controlling loops

We can use Break or Continue to control loops.

Break statement

for Break statement, we can get out from the loop and no need to complete the loop when we use if statement inside the loop.

#!/bin/bash
# Basic loop use break
counter=10
until [ $counter -gt 20 ]
do
echo Number : $counter
if [ $counter -eq 15 ]
then
echo Done
break
fi
((counter++))
done

$ bash break.sh

output
Number : 10
Number : 11
Number : 12
Number : 13
Number : 14
Number : 15
Done

Continue statement

For Continue statement, we can go on the loop and no need to finish the loop when we are using if statement inside the loop.

#!/bin/sh

NUMS=”1 2 3 4 5 6 7″

for NUM in $NUMS
do
Q=`expr $NUM % 2`
if [ $Q -eq 0 ]
then
echo “A number is an even number!!”
continue
fi
echo “Found odd number”
done

$ bash continue.sh

output
Found odd number
A number is an even number!!
Found odd number
A number is an even number!!
Found odd number
A number is an even number!!
Found odd number

5) Select loop

Select loop like while and until loop but allows you to create a simple menu system.

Syntax of select loop

select var in <list>
do
<commands>
done

We will make three options and use select loop to choose from them.

#!/bin/bash
# select script

PS3=’Please enter your choice: ‘
options=(“Option 1” “Option 2” “Option 3” “Quit”)
select opt in “$”
do
case $opt in
“Option 1”)
echo “you choose choice 1″
;;
“Option 2”)
echo “you choose choice 2″
;;
“Option 3”)
echo “you choose choice $REPLY which is $opt”
;;
“Quit”)
break
;;
*) echo “invalid option $REPLY”;;
esac
done

$ bash select.sh

output
1) Option 1
2) Option 2
3) Option 3
4) Quit
Please enter your choice: 1
you chose choice 1
Please enter your choice: 5
invalid option 5
Please enter your choice: 4

Conclusion

  1. Bash For loop used in synchronization, making password, backup and etc…
  2. Do while is same as while but the interpreter executes the first code without any conditions
  3. Break statement is very important for getting out from the loop
  4. Select statement is useful when we have many options

Read Also:

Source

The GNS3 Marketplace | Linux Hint

GNS3 is an important piece of software for those of you who are aiming to be a great network engineer. On GNS3, you can simulate network topologies and actually see whether your desired network topology will work in real life. Because, on GNS3, all the networking devices are virtualized. Just like we use VMware or VirtualBox to virtualize an operating system, GNS3 uses some cool technologies along with KVM, QEMU, VMware, VirtualBox, Docker etc to virtualize all the networking tools and computers in your GNS3 project.

For example, let’s say, your network topology connects 2 computers with a Cisco Router. When you run this configuration to test whether it works or not, the computers and the cisco router image will run as virtual machines in the background. You can pick an operating system for your virtual computers. Install any software you want on these computers. So you get the feel of working with real hardware.

You can add VMware, VirtualBox, KVM guests on your GNS3 project. You can also add Docker containers on your GNS3 project.

From the networking side, you can add many of the Cisco IOS on your GNS3 project. GNS3 also supports Cisco IOU images. You can also add Juniper networking products on your GNS3 project.

Well, you can add a lot of things on GNS3. But the thing is, all these Cisco images, Juniper images etc etc don’t come preinstalled with GNS3. You have to add these manually.

In earlier days, the manual process of adding these images on GNS3 was complicated and at times were really painful to get everything to work. Now we have GNS3 Marketplace which makes everything a lot easier. Each of these images are called GNS3 appliances in GNS3 Marketplace.

In GNS3 documentation, they clearly stated and I quote, “The GNS3 appliances are using GNS3 recommended settings and have been thoroughly tested. You will most likely have a much better user experience using the appliances. You will also encounter fewer errors if you use an appliance rather than trying to configure settings yourself and using untested images.”

Here is how it works. Let’s say you want to install Cisco IOU L2 and L3 images on GNS3. You go to GNS3 Marketplace and download Cisco IOU L2 and Cisco IOU L3 appliances. Then you import it to GNS3 and follow through the setup wizard. GNS3 will guide you on what files you need and what to do to get it to work. Once the setup wizard is complete, you will have fully functional Cisco IOU L2 and Cisco IOU L3 images on GNS3 for use. Also, you can be certain that these will work.

In this article, I will show you how all these works practically using GNS3. Let’s get started.

You can access GNS3 marketplace and download GNS3 appliances from your web browser. To do that, visit https://www.gns3.com/marketplace/appliances and click on any GNS3 appliances you like.

You can also search for a GNS3 appliance from here. Just type in what you’re looking for in the search appliance input box and the results should be displayed below.

Let’s say, you want to download the Alpine Linux GNS3 appliance. Now, search for Alpine here and click on the Alpine logo.

More information about your selected GNS3 appliance will show up here. Once you’re certain that this is what you’re looking for, click on the DOWNLOAD button as marked in the screenshot below.

The Alpine Linux GNS3 appliance installer is downloaded.

Now open GNS3 and go to File > Import appliance as marked in the screenshot below.

Now select the GNS3 appliance file that you’ve just downloaded from the File Picker and click on Open.

Now GNS3 Add appliance wizard should show up. Click on Next.

Now select how you want the GNS3 appliance to work. The default is, Run the appliance on your local computer. This option will run the GNS3 appliance in your local computer. If you’re using GNS3 VM, then you should be able to pick Run the appliance on the GNS3 VM. If you’re using GNS3 from a remote machine, then you should be able to pick Run the appliance on a remote server. Once you’re done selecting your desired Server type, click on Next.

Now click on Next.

Finally, click on Finish.

The Alpine Linux GNS3 appliance should be added. Now click on OK.

Now, create a new GNS3 project. You should be able to find your newly added GNS3 appliance. As you can see in the screenshot below, the Alpine Linux GNS3 appliance I just added is available for use.

Downloading Appliances using GNS3:

You can also download and install GNS3 appliance from within GNS3 itself. Just click on Browse all devices icon and set it to show Installed & Available appliances. All the installed and the appliances that are available in the GNS3 marketplace should show up in the list below.

You can also filter the list as follows. As you can see, I searched for cisco, and all the GNS3 appliances related to cisco showed up. To install a GNS3 appliance (Let’s say Cisco 2691 Router) from here, just try to drag it to the project workspace.

Now follow the Add appliance wizard as you did on the earlier section of this article above.

If you’re trying to install GNS3 appliance that needs proprietary licensed files, the wizard should ask you to add required files. As you can see, the wizard asked me to add the file c2691-adventerprisek9-mz.124-15.T14.image, which is the image file for Cisco 2691 router. If you have a valid license for this router, you can download it from Cisco and add it here.

To add required files, click on Import.

Now select the required file and click on Open.

As you can see, the status has changed to Ready to install. Now click on Next.

Now click on Yes.

Now click on Next.

Finally, click on Finish.

The Cisco 2691 GNS3 appliance should be installed as you can see. Now click on OK.

So, that’s how you install GNS3 appliances from the GNS3 marketplace. Thanks for reading this article.

Source

[Stable Update] 2018-09-18 – Kernels, Pamac, LibInput

Hi community,

Welcome to another stable update. So what do we have with this one?

  • latest updates to some of our kernels
  • Pamac got updated to v7.1.0-rc3
  • We added a fix for some touchpads in libinput

We hope with all these changes Manjaro to be more efficent for you all.

So please report back and give us feedback for given changes made to our repositories. Users of our 32-bit Distro should read this.

kind regards

Philip Müller
Manjaro Project Lead

Current supported Kernels

  • linux316 3.16.57
  • linux318 3.18.122 [EOL]
  • linux44 4.4.156
  • linux49 4.9.127
  • linux414 4.14.70
  • linux417 4.17.19 [EOL]
  • linux418 4.18.8
  • linux419 4.19-rc4
  • linux414-rt 4.14.53_rt40
  • linux416-rt 4.16.18_rt11

Package Updates (Mon Sep 10 20:46:48 CEST 2018)

  • core x86_64: 10 new and 10 removed package(s)
  • extra x86_64: 35 new and 34 removed package(s)

Links

Posted in: general

Source

How to Setup FTP Server with VSFTPD on Ubuntu 18.04

FTP (File Transfer Protocol) is a standard network protocol used to transfer files to and from a remote network. For more secure and faster data transfers, use SCP.

There are many open source FTP servers available for Linux. The most popular and widely used are PureFTPd, ProFTPD and vsftpd. In this tutorial we’ll be installing vsftpd. It is a stable, secure and fast FTP server. We will also show you how configure vsftpd to restrict users to their home directory and encrypt the entire transmission with SSL/TLS.

Although this tutorial is written for Ubuntu 18.04 the same instructions apply for Ubuntu 16.04 and any Debian based distribution, including Debian, Linux Mint and Elementary OS.

Prerequisites

Before continuing with this tutorial, make sure you are logged in as a user with sudo privileges.

Installing vsftpd on Ubuntu 18.04

The vsftpd package is available in the Ubuntu repositories. To install it, simply run the following commands:

sudo apt update
sudo apt install vsftpd

vsftpd service will automatically start after the installation process is complete. Verify it by printing the service status:

sudo systemctl status vsftpd

The output will look something like below, showing that the vsftpd service is active and running:

* vsftpd.service – vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2018-10-15 03:38:52 PDT; 10min ago
Main PID: 2616 (vsftpd)
Tasks: 1 (limit: 2319)
CGroup: /system.slice/vsftpd.service
`-2616 /usr/sbin/vsftpd /etc/vsftpd.conf

Configuring vsftpd

The vsftpd server can be configured by editing the /etc/vsftpd.conf file. Most of the settings are documented inside the configuration file. For all available options visit the official vsftpd page.

In the following sections we will go over some important settings needed to configure a secure vsftpd installation.

Start by opening the vsftpd config file:

sudo nano /etc/vsftpd.conf

1. FTP Access

We’ll allow access to the FTP server only the local users, find the anonymous_enable and local_enable directives and verify your configuration match to lines below:

/etc/vsftpd.conf

anonymous_enable=NO
local_enable=YES

2. Enabling uploads

Uncomment the write_enable setting to allow changes to the filesystem such as uploading and deleting files.

/etc/vsftpd.conf

3. Chroot Jail

To prevent the FTP users to access any files outside of their home directories uncomment the chroot setting.

/etc/vsftpd.conf

By default to prevent a security vulnerability, when chroot is enabled vsftp will refuse to upload files if the directory that users are locked in is writable.

  • Method 1. – The recommended method to allow upload is to keep chroot enabled, and configure FTP directories. In this tutorial we will create an ftp directory inside the user home which will serve as the chroot and a writable uploads directory for uploading files.

    /etc/vsftpd.conf

    user_sub_token=$USER
    local_root=/home/$USER/ftp

  • Method 2. – Another option is to add the following directive in the vsftpd configuration file. Use this option if you must to grant writable access to your user to its home directory.

    /etc/vsftpd.conf

    allow_writeable_chroot=YES

4. Passive FTP Connections

vsftpd can use any port for passive FTP connections. We’ll specify the minimum and maximum range of ports and later open the range in our firewall.

Add the following lines to the configuration file:

/etc/vsftpd.conf

pasv_min_port=30000
pasv_max_port=31000

5. Limiting User Login

To allow only certain users to login to the FTP server add the following lines at the end of the file:

/etc/vsftpd.conf

userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO

When this option is enabled you need to explicitly specify which users are able to login by adding the user names to the /etc/vsftpd.user_list file (one user per line).

6. Securing Transmissions with SSL/TLS

In order to encrypt the FTP transmissions with SSL/TLS, you’ll need to have an SSL certificate and configure the FTP server to use it.

You can use an existing SSL certificate signed by a trusted Certificate Authority or create a self signed certificate.

If you have a domain or subdomain pointing to the FTP server’s IP address you can easily generate a free Let’s Encrypt SSL certificate.

In this tutorial we will generate a self signed SSL certificate using the openssl command.

The following command will create a 2048-bit private key and self signed certificate valid for 10 years. Both the private key and the certificate will be saved in a same file:

sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

Now that the SSL certificate is created open the vsftpd configuration file:

sudo nano /etc/vsftpd.conf

Find the rsa_cert_file and rsa_private_key_file directives, change their values to the pam file path and set the ssl_enable directive to YES:

/etc/vsftpd.conf

rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES

If not specified otherwise, the FTP server will use only TLS to make secure connections.

Restart the vsftpd Service

Once you are done editing, the vsftpd configuration file (excluding comments) should look something like this:

/etc/vsftpd.conf

listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
user_sub_token=$USER
local_root=/home/$USER/ftp
pasv_min_port=30000
pasv_max_port=31000
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO

Save the file and restart the vsftpd service for changes to take effect:

sudo systemctl restart vsftpd

Opening the Firewall

If you are running an UFW firewall you’ll need to allow FTP traffic.

To open port 21 (FTP command port), port 20 (FTP data port) and 30000-31000 (Passive ports range), run the following commands:

sudo ufw allow 20:21/tcp
sudo ufw allow 30000:31000/tcp

To avoid being locked out we will aso open the port 22:

Reload the UFW rules by disabling and re-enabling UFW:

sudo ufw disable
sudo ufw enable

To verify the changes run:

Status: active

To Action From
— —— —-
20:21/tcp ALLOW Anywhere
30000:31000/tcp ALLOW Anywhere
OpenSSH ALLOW Anywhere
20:21/tcp (v6) ALLOW Anywhere (v6)
30000:31000/tcp (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)

Creating FTP User

To test our FTP server we will create a new user.

  • If you already have a user which you want to grant FTP access skip the 1st step.
  • If you set allow_writeable_chroot=YES in your configuration file skip the 3rd step.
  1. Create a new user named newftpuser:

  2. Add the user to the allowed FTP users list:

    echo “newftpuser” | sudo tee -a /etc/vsftpd.user_list

  3. Create the FTP directory tree and set the correct permissions:

    sudo mkdir -p /home/newftpuser/ftp/upload
    sudo chmod 550 /home/newftpuser/ftp
    sudo chmod 750 /home/newftpuser/ftp/upload
    sudo chown -R newftpuser: /home/newftpuser/ftp

    As discussed in the previous section the user will be able to upload its files to the ftp/upload directory.

At this point your FTP server is fully functional and you should be able to connect to your server with any FTP client that can be configured to use TLS encryption such as FileZilla.

Disabling Shell Access

By default, when creating a user, if not explicitly specified the user will have SSH access to the server.

To disable shell access, we will create a new shell which will simply print a message telling the user that their account is limited to FTP access only.

Create the /bin/ftponly shell and make it executable:

echo -e ‘#!/bin/shnecho “This account account is limited to FTP access only.”‘ | sudo tee -a /bin/ftponly
sudo chmod a+x /bin/ftponly

Append the new shell to the list of valid shells in the /etc/shells file

echo “/bin/ftponly” | sudo tee -a /etc/shells

Change the user shell to /bin/ftponly:

sudo usermod newftpuser -s /bin/ftponly

Conclusion

In this tutorial, you learned how to install and configure a secure and fast FTP server on your Ubuntu 18.04 system.

Source

OrientDB: How To Install the NoSQL DataBase on CentOS 7



OrientDB NoSQL DBMS

Introduction – NoSQL and OrientDB

When talking about databases, in general, we refer to two major families: RDBMS (Relational Database Management System), which use as user and application program interface a language named Structured Query Language (or SQL) and non-relational database management systems, or NoSQL databases. OrientDB is part of the second family.

Between the two models there is a huge difference in the way they consider (and store) data.

Relational Database Management Systems

In the relational model (like MySQL, or its fork, MariaDB), a database is a set of tables, each containing one or more data categories organized in columns. Each row of the DB contains a unique instance of data for categories defined by columns.

Just as an example, consider a table containing customers. Each row correspond to a customer, with columns for name, address, and every required information.
Another table could contain an order, with product, customer, date and everything else. A user of this DB can obtain a view that fits its needs, for example a report about customers that bought products in a specific range of prices.

NoSQL Database Management Systems

In the NoSQL (or Not only SQL) database management systems, databases are designed implementing different “formats” for data, like a document, key-value, graph and others. The database systems realized with this paradigm are built especially for large-scale database clusters, and huge web applications. Today, NoSQL databases are used by major companies like Google and Amazon.

Document databases

Document databases store data in document format. The usage of this kind of DBs is usually raised with JavaScript and JSON, however, XML and other formats are accepted. An example is MongoDB.

Key-value databases

This is a simple model pairing a unique key with a value. These systems are performant and highly scalable for caching. Examples include BerkeleyDB and MemcacheDB.

Graph databases

As the name predicts, these databases store data using graph models, meaning that data is organized as nodes and interconnections between them. This is a flexible model which can evolve over time and use. These systems are applied where there is the necessity of mapping relationships.
Examples are IBM Graphs and Neo4j and OrientDB.

OrientDB

OrientDB, as stated by the company behind it, is a multi-model NoSQL Database Management System that “combines the power of graphs with documents, key/value, reactive, object-oriented and geospatial models into one scalable, high-performance operational database“.

OrientDB has also support for SQL, with extensions to manipulate trees and graphs.

Prerequisites

  • One server running CentOS 7
  • OpenJDK or Oracle Java installed on the server

Goals

This tutorial explains how to install and configure OrientDB Community on a server powered by CentOS 7.

OrientDB Installation

Step 1 – Create a New User

First of all, create a new user to run OrientDB. Doing this will let to run the database on an “isolated environment”. To create a new user, execute the following command:

# adduser orientdb -d /opt/orientdb

Step 2 – Download OrientDB Binary Archive

At this point, download the OrientDB archive in the /opt/orientdb directory:

# wget https://orientdb.com/download.php?file=orientdb-community-importers-2.2.29.tar.gz -O /opt/orientdb/orientdb.tar.gz

Note: at the time we write, 2.2.29 is the latest stable version.

Step 3 – Install OrientDB

Extract the downloaded archive:

# cd /opt/orientdb
# tar -xf orientdb.tar.gz

tar will extract the files in a directory named orientdb-community-importers-2.2.29. Move everything in /opt/orientdb:

# mv orientdb-community*/* .

Make the orientdb user the owner of the extracted files:

# chown -R orientdb:orientdb /opt/orientdb

Start OrientDB Server

Starting the OrientDB server requires the execution of the shell script contained in orientdb/bin/:

# /opt/orientdb/bin/server.sh

During the first start, this installer will display some information and will ask for an OrientDB root password:

+—————————————————————+
| WARNING: FIRST RUN CONFIGURATION |
+—————————————————————+
| This is the first time the server is running. Please type a |
| password of your choice for the ‘root’ user or leave it blank |
| to auto-generate it. |
| |
| To avoid this message set the environment variable or JVM |
| setting ORIENTDB_ROOT_PASSWORD to the root password to use. |
+—————————————————————+

Root password [BLANK=auto generate it]: ********
Please confirm the root password: ********

To stop OrientDB, hit Ctrl+C.

Create a systemd Service for OrientDB

Create a new ststemd service to easily manage OrientDB start and stop. With a text editor, create a new file:

# $EDITOR /etc/systemd/system/orientdb.service

In this file, paste the following content:

[Unit]
Description=OrientDB service
After=network.target

[Service]
Type=simple
ExecStart=/opt/orientdb/bin/server.sh
User=orientdb
Group=orientdb
Restart=always
RestartSec=9
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=orientdb

[Install]
WantedBy=multi-user.target

Save the file and exit.

Reload systemd daemon service:

# systemctl daemon-reload

At this point, start OrientDB with the following command:

# systemctl start orientdb

Enable it to start at boot time:

# systemctl enable orientdb

Conclusion

In this tutorial we have seen a brief comparison between RDBMS and NoSQL DBMS. We have also installed and completed a basic configuration of OrientDB Community server-side.

This is the first step for deploying a full OrientDB infrastructure, ready for managing large-scale systems data.

Source

AMD Dual EPYC 7601 Benchmarks – 9-Way AMD EPYC / Intel Xeon Tests On Ubuntu 18.10 Server Review

Arriving earlier this month was a Dell PowerEdge R7425 server at Phoronix that was equipped with two AMD EPYC 7601 processors, 512GB of RAM, and 20 Samsung 860 EVO SSDs to make for a very interesting test platform and our first that is based on a dual EPYC design with our many other EPYC Linux benchmarks to date being 1P. Here is a look at the full performance capabilities of this 64-core / 128-thread server compared to a variety of other AMD EPYC and Intel Xeon processors while also doubling as an initial look at the performance of these server CPUs on Ubuntu 18.10.

This Dell PowerEdge R7425 server with the two EPYC 7601 processors has been absolutely dominating the benchmarks since its arrival. Last week was an initial look at the performance capabilities when checking out the Linux application scaling up to 128 threads while in this article are a lot more benchmarks compared to the other current server CPUs I had available for benchmarking. This benchmark comparison with Ubuntu 18.10 consisted of:

– EPYC 7251

– EPYC 7351P

– EPYC 7401P

– EPYC 7551

– EPYC 7601

– 2 x EPYC 7601

– Xeon E5-2687W v3

– Xeon Silver 4108

– 2 x Xeon Gold 6138

This was based upon the processors/hardware I had available. While Ubuntu 18.10 is not a long-term support (LTS) release like Ubuntu 18.04, it makes for an interesting test target due to its newer software components: namely the Linux 4.18 kernel and GCC 8.2 compiler… This should be akin to Red Hat Enterprise Linux 8.0 / CentOS 8 and other upcoming Linux distribution releases. This up-to-date stable Linux kernel also provides all of the latest Spectre / Meltdown / Foreshadow protection and the systems had their up-to-date BIOS/firmware releases.

While the number of current-generation Xeon systems I have is limited, thanks to the open-source Phoronix Test Suite it’s very easy to compare any of your own Linux systems/servers to the benchmarks found in this article while doing so in a fully-automated and side-by-side manner. Simply install the Phoronix Test Suite and run phoronix-test-suite benchmark 1810150-SK-AMDEPYC1243 to kick off your own standardized benchmark comparison.

Let’s have a look at how this dual EPYC Dell PowerEdge server performs against the assortment of other Intel/AMD processors on Ubuntu 18.10.



Source

Automotive Grade Linux dips into telematics with 6.0 release

Oct 16, 2018 — by Eric Brown

— 98 views

The Automotive Grade Linux project has released Unified Code Base 6.0 in-vehicle infotainment stack with new software profiles for telematics and instrument cluster.

The Linux Foundation’s Automotive Grade Linux project version 6.0 (“Funky Flounder”) of its Unified Code Base 6.0 distribution is now available for download. The new release for the first time expands the open source in-vehicle infotainment (IVI) stack to support telematics hooks and instrument cluster displays.

“The addition of the telematics and instrument cluster profiles opens up new deployment possibilities for AGL,” stated Dan Cauchy, Executive Director of Automotive Grade Linux at the Linux Foundation. “Motorcycles, fleet services, rental car tracking, basic economy cars with good old-fashioned radios, essentially any vehicle without a head unit or infotainment display can now leverage the AGL Unified Code Base as a starting point for their products.”

Key features for UCB 6.0 include:

  • Device profiles for telematics and instrument cluster
  • Core AGL Service layer can be built stand-alone
  • Reference applications including media player, tuner, navigation, web browser, Bluetooth, WiFi, HVAC control, audio mixer and vehicle controls
  • Integration with simultaneous display on IVI system and instrument cluster
  • Multiple display capability including rear seat entertainment
  • Wide range of hardware board support including Renesas, Qualcomm Technologies, Intel, Texas Instrument, NXP and Raspberry Pi
  • Software Development Kit (SDK) with application templates
  • SmartDeviceLink ready for easy integration and access to smartphone applications
  • Application Services APIs for navigation, voice recognition, Bluetooth, audio, tuner and CAN signaling
  • Near Field Communication (NFC) and identity management capabilities including multilingual support
  • Over-The-Air (OTA) upgrade capabilities
  • Security frameworks with role-based-access control

Mercedes-Benz
Vans Sprinter

In June, AGL announced that Mercedes-Benz Vans was using UCB for upcoming vans equipped with next generation connectivity and robotics technology. The announcement followed Toyota’s larger commitment to AGL for its 2018 Toyota Camry cars, as well as some Prius models.

UCB 6.0 does not include the virtualization framework for UCB, which was announced in July. Destined for a future UCB release, the virtualization technology includes a novel bus architecture that can encompass both critical and non-critical systems and support a variety of open source and proprietary virtualization solutions running simultaneously.

In other recent automotive technology news, last month the Wall Street Journal reported that a fully featured version of Google’s Android Auto technology will be used for IVI systems built into Renault-Nissan-Mitsubishi Alliance cars starting in 2021. The carmaker collective is the world’s largest, with 10.6 million vehicles sold in 2017. Earlier this year, Google and Volvo demonstrated a 2020 XC40 model that runs Android Auto together with Volvo’s Sensus skin.

Further information

AGL’s Unified Code Base 6.0 is available now for download. More information may be found on this UCB 6.0 release notes page.

Source

WP2Social Auto Publish Powered By : XYZScripts.com