0% found this document useful (0 votes)
79 views6 pages

Lab 5

The document describes an experiment involving using Linux commands to list directories, run processes in background, suspend and terminate processes. It shows: 1) Using 'find' to list all directories and redirect output to 'directories.txt' and errors to 'errors.txt'. 2) Running 'sleep' commands in background and foreground, suspending with Ctrl-Z, and bringing to foreground. 3) Terminating processes using 'kill' with job number or PID, and suspending with 'kill'. 4) Starting multiple 'sleep 60' processes in background and terminating them all with 'killall'.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
79 views6 pages

Lab 5

The document describes an experiment involving using Linux commands to list directories, run processes in background, suspend and terminate processes. It shows: 1) Using 'find' to list all directories and redirect output to 'directories.txt' and errors to 'errors.txt'. 2) Running 'sleep' commands in background and foreground, suspending with Ctrl-Z, and bringing to foreground. 3) Terminating processes using 'kill' with job number or PID, and suspending with 'kill'. 4) Starting multiple 'sleep 60' processes in background and terminating them all with 'killall'.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 6

EXPERIMENT # 05

Processes:
Q.1) Use find to compile a list of all directories in the system, redirecting th
e output so that the list of directories ends up in a file called directories.tx
t and the list of error messages ends up in a file called errors.txt?
A.) First Making a Directories.txt File:
asif@asifiqbal: echo so many directories
so many directories
asif@asifiqbal: echo so many directories > directories.txt
t file created in home folder
Output of the Directories.txt File:
asif@asifiqbal: find / print > directories.txt &
[2] 6534
// Job Number and PID

// directories.tx

// "&" appending

Directories Output:
/
/usr
/usr/src
/usr/src/linux-headers-2.6.28-11-generic
/usr/src/linux-headers-2.6.28-11-generic/usr
/usr/src/linux-headers-2.6.28-11-generic/arch
/usr/src/linux-headers-2.6.28-11-generic/arch/m68knommu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/crypto
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/lguest
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Kconfig.cpu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/math-emu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kvm
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/lib
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/ia32
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/oprofile
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mm
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Makefile
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/include
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mach-default
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Kconfig.debug
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/power
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/vdso
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Makefile_32.cpu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/.asm-offsets.s.cmd
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/Makefile
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/cpu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/asm-offsets.s
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/acpi
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/video
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mach-voyager
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/boot
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mach-rdc321x
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Kconfig
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/xen
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/pci
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mach-generic
/usr/src/linux-headers-2.6.28-11-generic/arch/ia64
/usr/src/linux-headers-2.6.28-11-generic/arch/m68k
/usr/src/linux-headers-2.6.28-11-generic/arch/m32r
/usr/src/linux-headers-2.6.28-11-generic/arch/frv

/usr/src/linux-headers-2.6.28-11-generic/arch/sparc64
/usr/src/linux-headers-2.6.28-11-generic/arch/mips
/usr/src/linux-headers-2.6.28-11-generic/arch/s390
/usr/src/linux-headers-2.6.28-11-generic/arch/mn10300
/usr/src/linux-headers-2.6.28-11-generic/arch/avr32
/usr/src/linux-headers-2.6.28-11-generic/arch/sparc
/usr/src/linux-headers-2.6.28-11-generic/arch/sh
/usr/src/linux-headers-2.6.28-11-generic/arch/h8300
/usr/src/linux-headers-2.6.28-11-generic/arch/powerpc
/usr/src/linux-headers-2.6.28-11-generic/arch/cris
/usr/src/linux-headers-2.6.28-11-generic/arch/alpha
/usr/src/linux-headers-2.6.28-11-generic/arch/xtensa
/usr/src/linux-headers-2.6.28-11-generic/arch/um
/usr/src/linux-headers-2.6.28-11-generic/arch/Kconfig
/usr/src/linux-headers-2.6.28-11-generic/arch/parisc
/usr/src/linux-headers-2.6.28-11-generic/arch/arm
/usr/src/linux-headers-2.6.28-11-generic/arch/blackfin
/usr/src/linux-headers-2.6.28-11-generic/crypto
/usr/src/linux-headers-2.6.28-11-generic/ubuntu
/usr/src/linux-headers-2.6.28-11-generic/lib
/usr/src/linux-headers-2.6.28-11-generic/Documentation
/usr/src/linux-headers-2.6.28-11-generic/init
/usr/src/linux-headers-2.6.28-11-generic/sound
/usr/src/linux-headers-2.6.28-11-generic/samples
/usr/src/linux-headers-2.6.28-11-generic/mm
/usr/src/linux-headers-2.6.28-11-generic/.config
/usr/src/linux-headers-2.6.28-11-generic/Makefile
/usr/src/linux-headers-2.6.28-11-generic/security
/usr/src/linux-headers-2.6.28-11-generic/.missing-syscalls.d
/usr/src/linux-headers-2.6.28-11-generic/include
/usr/src/linux-headers-2.6.28-11-generic/include/crypto
/usr/src/linux-headers-2.6.28-11-generic/include/asm-arm
/usr/src/linux-headers-2.6.28-11-generic/include/config
/usr/src/linux-headers-2.6.28-11-generic/include/config/pppoe.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/skisa.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/eeprom
/usr/src/linux-headers-2.6.28-11-generic/include/config/eeprom/93cx6.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/qsemi
/usr/src/linux-headers-2.6.28-11-generic/include/config/qsemi/phy.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/zeroplus
/usr/src/linux-headers-2.6.28-11-generic/include/config/zeroplus/ff.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/atl1.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/wdt.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/reed
/usr/src/linux-headers-2.6.28-11-generic/include/config/reed/solomon.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/reed/solomon
/usr/src/linux-headers-2.6.28-11-generic/include/config/reed/solomon/dec16.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/ipw2200
/usr/src/linux-headers-2.6.28-11-generic/include/config/ipw2200/monitor.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/ipw2200/radiotap.h
/usr/src/linux-headers-2.6.28-11-generic/include/config/ipw2200/promiscuous.h
Now Making a Errors.txt file:
asif@asifiqbal: echo errors and errors
errors and errors
asif@asifiqbal: echo errors and errors > errors.txt
created in home folder
asif@asifiqbal: find / print > errors.txt &
[3] 5642
// Job Number and PID

// errors.txt file

Output Directories:
/usr
/usr/src
/usr/src/linux-headers-2.6.28-11-generic
/usr/src/linux-headers-2.6.28-11-generic/usr
/usr/src/linux-headers-2.6.28-11-generic/arch
/usr/src/linux-headers-2.6.28-11-generic/arch/m68knommu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/crypto
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/lguest
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Kconfig.cpu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/math-emu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kvm
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/lib
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/ia32
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/oprofile
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mm
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Makefile
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/include
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/mach-default
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Kconfig.debug
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/power
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/vdso
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/Makefile_32.cpu
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/.asm-offsets.s.cmd
/usr/src/linux-headers-2.6.28-11-generic/arch/x86/kernel/Makefile
Q.3) Try the command sleep 5. What does this command do?
asif@asifiqbal:~$ sleep 5
// will sleep for five seconds and then return bac
k
Q.4) Run the command in the background using &?
asif@asifiqbal:~$ sleep 5 &
[3] 6661
// Prints The Job Number
Q.5) Run sleep 15 in the foreground, suspend it with Ctrl-z and then put it into
the background with bg. Type jobs. Type ps. Bring the job back into the foregro
und with fg?
asif@asifiqbal:~$ sleep 15
rl + Z
^Z
[3]+ Stopped

// stopped sleep 15 by Hitting Ct


sleep 15

Running Sleep 15 in Background:


asif@asifiqbal:~$ sleep 15 &
[4] 6883
// Prints the Job Number and PID
Jobs:
asif@asifiqbal:~$ jobs
[1] Stopped
[2]- Stopped
[3]+ Stopped
[4] Running
Ps:
asif@asifiqbal:~$ ps
PID TTY
TIME CMD
3230 pts/0
00:00:00 bash

sleep 15
vi errors
sleep 15
sleep 15 &

5289
6442
6881
6884

pts/0
pts/0
pts/0
pts/0

00:00:00
00:00:00
00:00:00
00:00:00

sleep
vi
sleep
ps

Bringing Job to Foreground:


or PID
asif@asifiqbal:~$ fg 6881
bash: fg: 6881: no such job

//bringing to foreground by the process number

Q.6) Run sleep 15 in the background using &, and then use kill to terminate the
process by its job number. Repeat, except this time kill the process by specifyi
ng its PID?
Killing a process by its job Number:
// we use a "%" si
gn and the job number
asif@asifiqbal:~$ sleep 15 &
[3] 8401
asif@asifiqbal:~$ kill %3
// Process Terminated
asif@asifiqbal:~$ kill %3
// Confirming the process termination
bash: kill: (8401) - No such process
[3] Terminated
sleep 15
Killing a process by its PID:
asif@asifiqbal:~$ sleep 15 &
[3] 8668
asif@asifiqbal:~$ kill 8668
asif@asifiqbal:~$ kill 8668
bash: kill: (8668) - No such process
[3] Terminated
Q.7) Run sleep 15 in the background using &, and then use kill to suspend the pr
ocess?
asif@asifiqbal:~$ sleep 5 &
[3] 8875
asif@asifiqbal:~$ kill %3
asif@asifiqbal:~$ kill %3
bash: kill: (8878) - No such process
[3] Terminated
sleep 5
Q.8) Startup a number of sleep 60 processes in the background, and terminate the
m all at the same time using the killall command?
Creating processes Sleep 60 in the Background:
asif@asifiqbal:~$ sleep 60 &
[3] 9248
asif@asifiqbal:~$ sleep 60 &
[4] 9249
asif@asifiqbal:~$ sleep 60 &
[5] 9250
asif@asifiqbal:~$ sleep 60 &
// created 8 processess of sleep 60
[6] 9251
asif@asifiqbal:~$ sleep 60 &
[7] 9252
asif@asifiqbal:~$ sleep 60 &
[8] 9253
asif@asifiqbal:~$ sleep 60 &
[9] 9254
asif@asifiqbal:~$ sleep 60 &
[10] 9255

asif@asifiqbal:~$ killall sleep


// killing sleep 60 and its instances
[3] Terminated
sleep 60
[4] Terminated
sleep 60
[5] Terminated
sleep 60
[6] Terminated
sleep 60
[7] Terminated
sleep 60
[8] Terminated
sleep 60
[9] Terminated
sleep 60
[10] Terminated
sleep 60
Q.9) Use ps, w and top to show all processes that are executing?
Ps:
asif@asifiqbal:~$ ps
// Selection of the active processes
PID TTY
TIME CMD
3230 pts/0
00:00:00 bash
5289 pts/0
00:00:00 sleep
6442 pts/0
00:00:00 vi
9496 pts/0
00:00:00 ps
W:
asif@asifiqbal:~$ w
// Shows Who is Logged In and the timings
23:31:40 up 3:36, 2 users, load average: 0.21, 0.20, 0.12
USER
TTY
FROM
LOGIN@ IDLE JCPU PCPU WHAT
asif tty7
:0
19:55
3:36m 10:55 0.68s x-session-manager
asif pts/0
:0.0
19:56
0.00s 0.74s 0.01s w
top:
// Shows the tasks currently being Managed by Linux Kernel
top - 23:34:40 up 3:39, 2 users, load average: 0.22, 0.20, 0.13
Tasks: 111 total, 2 running, 107 sleeping, 2 stopped, 0 zombie
Cpu(s): 15.2%us, 2.3%sy, 0.0%ni, 82.1%id, 0.0%wa, 0.0%hi, 0.3%si, 0.0%st
Mem: 1018528k total, 782896k used, 235632k free,
91880k buffers
Swap:
0k total,
0k used,
0k free, 393352k cached
Q.10) Use ps -aeH to display the process hierarchy. Look for the init process. S
ee if you can identify important system daemons?
Displaying the Process Hierarchy by ps -aeH:
asif@asifiqbal:~$ ps -aeH
PID TTY
TIME CMD
2 ?
00:00:00 kthreadd
3 ?
00:00:00 migration/0
4 ?
00:00:00 ksoftirqd/0
5 ?
00:00:00 watchdog/0
6 ?
00:00:00 events/0
7 ?
00:00:00 khelper
8 ?
00:00:00 kstop/0
9 ?
00:00:00 kintegrityd/0
10 ?
00:00:00 kblockd/0
11 ?
00:00:00 kacpid
12 ?
00:00:00 kacpi_notify
13 ?
00:00:00 cqueue
14 ?
00:00:00 ata/0
15 ?
00:00:00 ata_aux
16 ?
00:00:00 ksuspend_usbd
17 ?
00:00:00 khubd
18 ?
00:00:00 kseriod
19 ?
00:00:00 kmmcd
20 ?
00:00:00 btaddconn
21 ?
00:00:00 btdelconn

22
23
24
25
26
29
30
31
32
33
34
35
36
662
1168
1
796

?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?

00:00:00 pdflush
00:00:00 pdflush
00:00:00 kswapd0
00:00:00 aio/0
00:00:00 ecryptfs-kthrea
00:00:00 scsi_eh_0
00:00:00 scsi_eh_1
00:00:00 kstriped
00:00:00 kmpathd/0
00:00:00 kmpath_handlerd
00:00:00 ksnapd
00:00:00 kondemand/0
00:00:00 krfcommd
00:00:00 kjournald
00:00:00 kpsmoused
00:00:01 init
00:00:00 udevd

Looking for init process:


1 ?
00:00:01 init
System Daemons:
2272 ?
00:00:01
2552 ?
00:00:00
2553 ?
00:00:00
10241 ?
00:00:00

dbus-daemon
avahi-daemon
avahi-daemon
dbus-daemon

You might also like