Showing posts with label system. Show all posts
Showing posts with label system. Show all posts
Monday, October 10, 2016
My Journey to building Linux From Scratch LFS system PART3
My Journey to building Linux From Scratch LFS system PART3
CHAPTER 3
Now that we have the bootable USB flash drive, we can continue now by creating a partition onto which we will install our LFS system.
According to the book, we create a linux native partition and a swap partition using either cfdisk or fdisk.
using fdisk, I created a 40GB primary partition and a 2GB swap partition.
Now we will create a file system on the newly created partition. According to
the book, we should create an ext3 file system using the E2fsprogs
utilities. Specifically mke2fs.
#mke2fs -jv /dev/sda1where:
sda1 is my first partition.
mke2fs - is a program that creates an ext2/ext3 filesystem
- the "-j" means the create the filesystem with an
Then we initialize our swap partition.
#mkswap /dev/sda2
where: /dev/sda2 is our swap partition
To check, type blkid at the prompt, there should be an entry about /dev/sda1
and /dev/sda2
To access the partition, we mount it at /mnt/lfs.
#export LFS=/mnt/lfs -sets a variable LFS equal to /mnt/lfs
#mkdir -pv $LFS -create a directory /mnt/lfs
-"-p" means parent, "-v" means verbose
#mount -v -t ext3 /dev/sda1 $LFS
-mount our first partition to /mnt/lfs
-meaning we can access our first partition via
/mnt/lfs
note: make sure that the partition is mounted without too many restrictions
e.g. nosuid,nodev or noatime options, by using mount command.
#mount
the /dev/sda1 line should not show (nosuid,nodev,noatime)
Enable the swap partition using the swapon command
#/sbin/swapon -v /dev/sda2
Now we can download the packages and patches needed to build the basic LFS system. But since we are using the livecd as our base system, we dont need to download the packages, we just copy the packages from the /lfs-sources/ directory of the livecd to our newly created partition.
We need to create first a directory where we will install the packages and the patches.
#mkdir -v $LFS/sources
then we make this directory writable and sticky. sticky means multiple user
have write permission but only the owner can delete a file within this
directory.
#chmod -v a+wt $LFS/sources
where: a+w - means all have write access
t - means sticky
Now we download, or in our case, copy all the contents of /lfs-sources
directory to $LFS/sources.
inside /lfs-sources directory:
root[ /lfs-sources ]# cp * $LFS/sources
where: cp - the copy command
After copying the files and patches:
CHAPTER 4 - Final preparations
According to the book, we will create a $LFS/tools directory. This directory
will contain the installed programs compiled in CHAPTER 5 to separate them from the programs compiled in CHAPTER 6. The programs compiled here are temporary tools only and will not be a part of the final LFS system.
as root:
#mkdir -v $LFS/tools
then we create a /tools symlink on the host system that will point to the
$LFS/tools directory we just created
#ln -sv $LFS/tools /
the command ln above creates a link between the two files. The target file is
$LFS/tools (/mnt/lfs/tools), with a link name that is the same as the target
file and is located at the / (root) directory. The -s means create a symbolic
(or soft) link. So from the command above a soft link with a name /tools is
created that is linked to the directory $LFS/tools (or /mnt/lfs/tools).
Then we add user/group both named lfs
#groupadd lfs
#useradd -s /bin/bash -g lfs -m -k /dev/null lfs
where: -s /bin/bash : makes bash the default shell for the user
-g lfs : adds user to the group lfs
-m : create a home directory for user lfs
-k /dev/null : the skeleton directory that contains the files and
directories to be copied to the home directory.
/dev/null contains nothing. The significance of -k
option is that if it is not specified the default
/etc/skel files and directories will be copied to the
home directory.
lfs : is the name of the user
then give lfs user a password
#passwd lfs
grant user lfs ownership of $LFS/tools and $LFS/sources directory
#chown -v lfs $LFS/tools
#chown -v lfs $LFS/sources
then we login as user lfs
#su - lfs
where: su : switch user
- : start a login shell as opposed to only switch to user
lfs : switch as user lfs
then we setup a clean working environment from which building the temporary lfs system is based.
while logged in as user create two startup files, .bash_profile and .bashrc, for the bash shell.
lfs [~]$cat > ~/.bash_profile <<"EOF"
exec env -i HOME=$HOME TERM=$TERM PS1=u:w$ bin/bash
EOF
where: exec env -i.. /bin/bash -
means replace the shell with a new one with an empty environment except the variables HOME,TERM and PS1
lfs [~]$ cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
path=/tools/bin;/bin;/usr/bin
export LFS LC_ALL PATH
EOF
then source the just created user profile:
lfs [~]$ source ~/.bash_profile
next: CHAPTER 5
Go to link download
Sunday, September 25, 2016
Download 3D Solar System live Wallpaper for free
Download 3D Solar System live Wallpaper for free

3D Solar System live Wallpaper
Personalization
[Download Link >>]
version:5.0
rating: 4.8
rating count: 100
updated: 2015-02-13
size: 2 MB
installs: 500
cost: €0.74
Go to link download
Thursday, September 1, 2016
updated Distributed File System benchmark
updated Distributed File System benchmark
Note: this is an update to my previous test
Im investigating various distributed file systems (loosely termed here to include SAN-like solutions) for use in Docker, Drupal, etc. and couldnt find recent benchmark stats for some popular solutions so I figured Id put one together.
Disclaimer: This is a simple benchmark test with no optimization or advanced configuration so the results should not be interpreted as authoritative. Rather, its a rough ballpark product comparison to augment additional testing and review.
My Requirements:
- No single-point-of-failure (masterless, multi-master, or automatic near-instantaneous master failover)
- POSIX-compliant (user-land FUSE)
- Open source (non-proprietary)
- Production ready (version 1.0+, self-proclaimed, or widely recognized as production-grade)
- New GA release within the past 12 months
- Ubuntu-compatible and easy enough to set up via CloudFormation (for benchmark testing purposes)
Products Tested:
- GlusterFS 3.7.6 [2015-11-09]
- (replicated volume configuration) - CloudFormation script
- LizardFS 3.9.4 [2015-12-09]
- CloudFormation script
XtreemFS 1.5.1 [2015-03-12]- couldnt get write-replication (WqRq or WaR1) to work ("Input/output error") - CloudFormation script
- CephFS 9.2.0 [2015-11-06]
- CloudFormation script
SheepFS 0.9.3 [2015-11-05]- cant write any files to the client mounted folder ("cannot touch text.txt: Function not implemented") - CloudFormation script
- SXFS 2.0 [2015-12-15]
- CloudFormation script
- Bazil is not production ready
- BeeGFS server-side components are not open source (EULA, Section 2)
- Behrooz (BFS) is not production ready
- Chirp/Parrot does not have a *.deb package
- Gfarm version 2.6.8 compiled from source kept returning x.xx/x.xx/x.xx for gfhost -H for any non-local filesystem node (and in general the documentation and setup process was terrible)
- GPFS is proprietary
- Hadoops HDFS is not POSIX-compliant
- Lustre does not have a *.deb package and requires a patched kernel
- MaggieFS has a single point of failure
- MapR-FS is proprietary
- MooseFS only provides high availability in their commercial professional edition
- ObjectiveFS is proprietary
- OpenAFS kerberos requirement is too complex for CloudFormation
- OrangeFS is not POSIX-compliant
- Ori latest release Jan 2014
- QuantcastFS has a single point of failure
- PlasmaFS latest release Oct 2011
- Pomegranate (PFS) latest release Feb 2013
- S3QL does not support concurrent mounts and read/write from multiple machines
- SeaweedFS is not POSIX-compliant
- Tahoe-LAFS is not recommended for POSIX/fuse use cases
- TokuFS latest release Feb 2014
AWS Test Instances:
- Ubuntu 14.04 LTS paravirtual x86_64 (AMI)
- m1.medium (1 vCPU, 3.75 GB memory, moderate network performance)
- 410 GB hard drive (local instance storage)
Test Configuration:
Three master servers were used for each test of 2, 4, and 6 clients. Each client runs a small amount of background disk usage (file create and update):
(crontab -l ; echo "* * * * * ( echo $(date) >> /mnt/glusterfs/$(hostname).txt && echo $(date) > /mnt/glusterfs/$(hostname)_$(cat /dev/urandom | tr -dc a-zA-Z0-9 | fold -w 25 | head -n 1).txt )") | sort - | uniq - | crontab -
Results of the three tests were averaged. Benchmark testing was performed with bonnie++ 1.97 and fio 2.1.3.
Example Run:
$ sudo su -
# apt-get update -y && apt-get install -y bonnie++ fio
# screen
# bonnie++ -d /mnt/glusterfs -u root -n 1:50m:1k:6 -m GlusterFS with 2 data nodes -q | bon_csv2html >> /tmp/bonnie.html
# cd /tmp
# wget -O crystaldiskmark.fio http://www.winkey.jp/downloads/visit.php/fio-crystaldiskmark
# sed -i s/directory=/tmp//directory=/mnt/glusterfs/ crystaldiskmark.fio
# sed -i s/direct=1/direct=0/ crystaldiskmark.fio
# fio crystaldiskmark.fio
Translation: "Login as root, update the server, install bonnie++ and fio, then run the bonnie++ benchmark tool in the GlusterFS-synchronized directory as the root user using a test sample of 1,024 files ranging between 1 KB and 50 MB in size spread out across 6 sub-directories. When finished, send the raw CSV result to the html converter and output the result as /tmp/bonnie.html. Next, run the fio benchmark tool using the CrystalDiskMark script by WinKey referenced here."
Important Notes:
1. Only GlusterFS and LizardFS could complete the intense multi-day bonnie++ test. The others failed with these errors:
- CephFS (both kernel and fuse)
- Cant write block.: Software caused connection abort
- Cant write block 585215.
- Cant sync file.
- SXFS
- Cant write data.
| Seq Create (sec) | Rand Create (sec) | |
|---|---|---|
| GlusterFS 3.7.6 | 173 | 164 |
| LizardFS 3.9.4 | 3 | 3 |
3. GlusterFS took at least twice as long as LizardFS to complete the bonnie++ tests (literally 48 hours!). Switching to xfs out of curiosity helped performance significantly (less than 24 hours), however all tests were done with ext4 (Ubuntu default).
4. CephFS did not complete the "Rand-Read-4K-QD32" fio test
Results (click to view larger image):






(Note: raw results can be found here)
_______________________________________________________
Concluding Remarks:
- Since GlusterFS and LizardFS were the only ones that could complete the more intense bonnie++ test, I would feel more confident recommending them as "production ready" for heavy, long-term loads.
- Also (as mentioned above), LizardFS was much faster than GlusterFS (at the cost of higher CPU usage).
- In terms of setup and configuration, GlusterFS was easiest, followed by LizardFS, then SXFS, and finally (in a distant last place) CephFS.
- SXFS shows promise but theyll need to simplify their setup process (especially for non-interactive configuration) and resolve the bonnie++ failure.
- My overall recommendation is currently LizardFS
Go to link download
Wednesday, August 24, 2016
Distributed File System benchmark
Distributed File System benchmark
See my updated post here
Im investigating various distributed file systems (loosely termed here to include SAN-like solutions) for use in Docker, Drupal, etc. and couldnt find recent benchmark stats for some popular solutions so I figured Id put one together.
Disclaimer: This is a simple benchmark test with no optimization or advanced configuration so the results should not be interpreted as authoritative. Rather, its a rough ballpark product comparison to augment additional testing and review.
My Requirements:
- No single-point-of-failure (masterless, multi-master, or automatic near-instantaneous master failover)
- POSIX-compliant (user-land FUSE)
- Open source (non-proprietary)
- Production ready (version 1.0+, self-proclaimed, or widely recognized as production-grade)
- New GA release within the past 12 months
- *.deb package and easy enough to set up via CloudFormation (for benchmark testing purposes)
Products Tested:
- GlusterFS 3.6.2 [2015-01-27]
- (replicated volume configuration) - CloudFormation script (Ubuntu version)
- LizardFS 2.5.4 [2014-11-07]
- CloudFormation script (Ubuntu version)
XtreemFS 1.5.1 [2015-03-12]- couldnt get product to work ("Input/output error") - CloudFormation script (Ubuntu version)
- Bazil is not production ready
- BeeGFS server-side components are not open source (EULA, Section 2)
- Behrooz (BFS) is not production ready
- CephFS -- will be included in next round of testing
- Chirp/Parrot does not have a *.deb package
- Gfarm version 2.6.8 compiled from source kept returning x.xx/x.xx/x.xx for gfhost -H for any non-local filesystem node (and in general the documentation and setup was terrible)
- GPFS is proprietary
- Hadoops HDFS is not POSIX-compliant
- Lustre does not have a *.deb package
- MaggieFS has a single point of failure
- MapR-FS is proprietary
- MooseFS only provides high availability in their commercial professional edition
- ObjectiveFS is proprietary
- OpenAFS kerberos requirement is too complex for CloudFormation
- OrangeFS is not POSIX-compliant
- Ori latest release Jan 2014
- QuantcastFS has a single point of failure
- PlasmaFS latest release Oct 2011
- Pomegranate (PFS) latest release Feb 2013
- S3QL does not support concurrent mounts and read/write from multiple machines
- SeaweedFS is not POSIX-compliant
- SheepFS -- will be included in next round of testing
- SXFS -- will be included in next round of testing
- Tahoe-LAFS is not recommended for POSIX/fuse use cases
- TokuFS is latest release Feb 2014
AWS Test Instances:
- Debian 7 (wheezy) paravirtual x86_64 (AMI)
- m1.medium (1 vCPU, 3.75 GB memory, moderate network performance)
- 410 GB hard drive (local instance storage)
Test Configuration:
Two master servers were used for each test of 2, 10, and 18 clients. Results of the three tests were averaged. Benchmark testing was performed with bonnie++ 1.96 and fio 2.0.8.
Example Run:
$ sudo su -
# apt-get update -y && apt-get install -y bonnie++ fio
# screen
# bonnie++ -d /mnt/glusterfs -u root -n 4:50m:1k:6 -m GlusterFS with 2 data nodes -q | bon_csv2html >> /tmp/bonnie.html
# cd /tmp
# wget -O crystaldiskmark.fio http://www.winkey.jp/downloads/visit.php/fio-crystaldiskmark
# sed -i s/directory=/tmp//directory=/mnt/glusterfs/ crystaldiskmark.fio
# sed -i s/direct=1/direct=0/ crystaldiskmark.fio
# fio crystaldiskmark.fio
Translation: "Login as root, update the server, install bonnie++ and fio, then run the bonnie++ benchmark tool in the GlusterFS-synchronized directory as the root user using a test sample of 4,096 files (4*1024) ranging between 1 KB and 50 MB in size spread out across 6 sub-directories. When finished, send the raw CSV result to the html converter and output the result as /tmp/bonnie.html. Next, run the fio benchmark tool using the CrystalDiskMark script by WinKey referenced here."
Results (click to view larger image):






(Note: raw results can be found here)
_______________________________________________________
Concluding Remarks:
Both GlusterFS and LizardFS had strong showings with pros and cons for each. Both should work fine for production use. While not an endorsement, I will mention that GlusterFS had more consistent results (less spikes and outliers) between each test and I also like the fact that GlusterFS doesnt distinguish between master servers (master-master peers versus LizardFS master-shadow[slave] configuration).
Update: GlusterFS requires your number of bricks to be a multiple of the replica count. This adds complexity to your scaling solution. For example, if you want two copies of each file kept in the cluster you must add/remove bricks in multiples of two. Similarly, if you want three copies of each file kept in the cluster you must add/remove bricks in multiples of three. And so on. Since they recommend one brick per server as a best practice, this will also likely add cost to your scaling solution. For this reason, Im now preferring LizardFS over GlusterFS since it does not impose that limitation.
P.S. Check out this related article by Luis Elizondo for further reading on Docker and distributed file systems.
Go to link download
Sunday, August 21, 2016
Neteller Money Adder System
Neteller Money Adder System
Its our New Great Neteller Money Adder system software and made in US with high source arrangement.
This is tested software and working all in the world.
We wont talk too much just will show you that it will work in Laptop,Computer and PC.
Follow up the software and see the fixed price by Company.
.png)
Information of NT System software :
* Verified Software
* Working mode and real mode
* Max up to $10,000 per day
* Connected on Neteller.com
* Update every 6 month later.
* Dont need any fees for update
Go to link download
Wednesday, August 17, 2016
My journey to building Linux From Scratch LFS system
My journey to building Linux From Scratch LFS system
This will be a series of posts since I will start building Linux From Scratch (LFS) system from scratch. I will follow the by-the-book instruction from start to finish until I built my own LFS system. As I go through this journey, I invite/encourage anyone reading or care to read this blog, to follow along with the journey. Together we will create our own Linux system not because we want to "change the world" or something but to feel and see what its like to have our own linux distro. I also encourage you to document everything that we will be doing as what I am doing right now for future references. We are going to build the system because I hope that you like me are curious about how things work. I dont promise anything as we build the system but the satisfaction of fulfilling our curiosity and educating ourselves in the process. So lets go on building our own Linux From Scratch (LFS) system.
Tools:
LFS live CD - to be created as a bootable USB
(note: according to the website the live CD is not anymore supported and is not compatible with LFS 7.0 or later. from the same website, it contains the LFS book with 6.3 version. So I downloaded the said version of the book so that I can follow along its instructions.)
The reason that I am going to use the live CD is that it will serve as the base system from which my own LFS is built. A base linux system is needed to create your own LFS as stated on the website. By using the live CD, I eliminate the need for using a base system. We are going to follow the instructions by-the-book in building the system. But we are not going to follow it blindly, were going to dissect the whys and the hows of the instructions to fully comprehend what is going on. If we are stuck on some instruction, were going to stop and take some time and continue
only if we truly comprehend what were doing. As I read somewhere, we have only 2 hrs of retention time of continuous reading so we are not going to risk doing the next instruction without really comprehending the previous one. Thats the reason we are doing this in the first place, to educate ourselves. So come and join me on the ride. Now on to reading the first parts of the book.
According to the book, the prerequisites are knowledge of shell commands and knowledge of installing linux software, and others. The prerequisite section also provide some links for those who have no knowledge of the above since they are needed as a minimum prerequisite. For the host system requirements, it list the softwares and applications needed for the system to have. Since we are going to use the live CD we are not going to have to download all the applications since they are included in the CD as stated by the website. There is a script from the book which asks us to run to check if the above applications are present in the system. Since were going to use the live CD, we are not going to use that script or follow that instruction. But for the purposes of "getting our hands wet" here is the script in uncomplete form.
$cat > version_check.sh << "EOF"
#!/bin/bash
bash --version | head -n1 | cut -d" " -f2-4
.
.
.
EOF
bash version_check.sh
Explanation of the above command. The first command creates a file named version_check.sh and "EOF" signifies the end of the file if you type it at the last line. The #!/bin/bash indicates that it is a bash script. The command bash --version indicates that it will show the version of the bash command. The | means pipe the output to the command head. The head command means output the first parts of the file, the argument -n1 means output the first one line of that first part. The cut command means to remove sections of the line. The -d is the delimeter argument and -f means to select only these fields. So the command cut -d" " -f2-4 means cut the line starting from the second field up the fourth field(in this case words) with the space delimeter between them. The last command executes the script.
to be continued.....
Go to link download
Subscribe to:
Posts (Atom)