Showing posts with label my. Show all posts
Showing posts with label my. 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/sda1 
where:

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

Read more »

Thursday, September 8, 2016

Show My Computer Icon on Windows 10 Desktop

Show My Computer Icon on Windows 10 Desktop





Display Computer Icon on Windows 10


You may find it very difficult to show Computer/ My Computer/ This PC icon on Windows 10 desktop. To be honest, I also get puzzled by this problem! Now Ive been able to fix this problem. In fact, Windows 10 has come with many absurd settings. Maintaining your system has been a tough job here. 


Same thing happened to Windows 8 also. But showing my computer icon on Windows 8 desktop was much easier. I mean finding the settings for showing desktop items were easier. Now I will show the way to show This PC icon on Windows 10 desktop. 


This tips applies to - Windows 10 Final Version only!


Display My Computer Icon on Windows 10 Desktop

Follow the simple steps below . . .

Right Click Menu on Desktop

  1. Go to Desktop (Press Start+D)
  2. Right click on a open area > Choose Personalize
  3. From the Personalization window, hit on Themes button
  4. Related Settings > Desktop icon settings
  5. Now you will get Desktop Icon Settings window
  6. Choose necessary Desktop Icons > Apply > OK. Thats it!

Windows 10 Personalization Dialogue Box




Desktop Icon Settings Window




Microsoft is Getting Crazy!

Im fed up with Microsoft! Theyve just made some wrong changes for last few versions of Windows. I can point them out - 

  • Removing .Net Framework 3.5 
  • Removing My Computer Icon from Desktop
  • Disabling Automatic Update Control settings
  • Removing date calculation option from Calculator
  • Removing Windows Update from Control Panel
  • Poor Start Menu (Windows 8 Start Menu was better)
  • Overall difficult settings - absolutely absurd!


Theyve also decided not to release any more new version of Windows OS! So, were not getting any better version soon . . .



Stay with Marks PC Solution to get more interesting IT topics!




Go to link download

Read more »

Tuesday, August 30, 2016

My Class Assistant apk free download

My Class Assistant apk free download



My Class Assistant
Education
[Download Link >>]

version:1.1.0

rating: 3.5

rating count: 328

updated: 2015-01-21

size: 665 KB

installs: 500

cost: €0.79


Go to link download

Read more »

Monday, August 22, 2016

My favorite bash shell format

My favorite bash shell format


Everyone has their own opinion of their favorite bash shell formatting -- heres mine:

PS1="[e]2;u@h:wa][e[32m]u[e[37m]@[e[36m]h[e[37m]:[e[33m]w [e[37m]$ "

Setup instructions

Go to link download

Read more »

Friday, August 19, 2016

My Desktop

My Desktop


Below is a screenshot of my Desktop.... :)


Go to link download

Read more »

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

Read more »