Особенности операционной системы Linux.
Загрузка системы и управление процессами в Linux
Linux операционный файл каталог На данной лабораторной работе были изучены основные команды системы Linux для создания и просмотра данных о файлах и папках, смены пользователя и группы файла, изменения прав доступа к файлу, а также команды для работы с потоками, изменения приоритетов и команды вывода различных сведений о системе. Также ознакомился с процедурой загрузки операционной системы Linux… Читать ещё >
Особенности операционной системы Linux. Загрузка системы и управление процессами в Linux (реферат, курсовая, диплом, контрольная)
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ
ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ
УНИВЕРСИТЕТ РАДИОЭЛЕКТРОНИКИ ОТЧЕТ По лабораторной работе № 1
Предмет: «Сетевые операционные системы»
Тема: «Особенности операционной системы Linux. Загрузка системы и управление процессами в Linux»
Харьков
Цель работы: получение практических навыков по работе с операционной системой Linux. Изучение элементов файловой системы, структуры каталогов, прав доступа к элементам файловой системы, получение практических навыков по работе с некоторыми командами данной операционной системы. Ознакомление с процедурой загрузки операционной системы Linux, а также получение теоретических сведений и практических навыков по работе с процессами в данной операционной системе.
Выполнение Часть 1
Копируем файл Lab1.html с именем lab. html в директории /tmp/1/I/
student@node5:~$ cd /tmp/1/I/
student@node5:/tmp/1/I$ cp Lab1.html lab. html
Просмотр списка содержимого директории /tmp/1/I/
student@node5:/tmp/1/I$ ls
Lab1.html lab. html
student@node5:/tmp/1/I$ lsal
итого 312
drwxr-xr-x 2 student users 4096 2011;03−14 08:23 ./
drwxr-xr-x 4 student users 4096 2010;09−25 07:39 ./
— rw-r—r— 2 student users 147 624 2010;09−25 07:39 Lab1.html
— rw-r—r— 1 student users 147 624 2011;03−14 08:23 lab. html
Создание жесткой ссылки laba1. html на файл lab. html:
student@node5:/tmp/1/I$ ln lab. html laba1.html
student@node5:/tmp/1/I$ lsali laba1. html lab.html
1 168 203 -rw-r—r— 2 student users 147 624 2011;03−14 08:23 laba1. html
1 168 203 -rw-r—r— 2 student users 147 624 2011;03−14 08:23 lab. html
Создание символической ссылки link. html на файл laba1. html:
student@node5:/tmp/1/I$ lns laba1. html link.html
student@node5:/tmp/1/I$ lsali laba1. html link.html
1 168 203 -rw-r—r— 1 student users 147 624 2011;03−14 08:23 laba1. html
1 168 205 lrwxrwxrwx 1 student users 10 2011;03−14 08:59 link. html -> laba1. html
student@node5:/tmp/1/I$ rm laba1. html
student@node5:/tmp/1/I$ lsali link. html
1 168 205 lrwxrwxrwx 1 student users 10 2011;03−14 08:59 link. html -> laba1. html
Задаем права доступа на каталог new в директории /tmp 555
student@node5:/tmp/new$ cd /tmp
student@node5:/tmp$ chmod 555 new
Неудачная попытка создать файл ngdfg в каталоге /tmp/new/
student@node5:/tmp$ touch /tmp/new/ngdfg
touch: невозможно выполнить touch для `/tmp/new/ngdfg': Permission denied
Неудачная попытка создать каталог dff в каталоге /tmp/new/
student@node5:/tmp$ mkdir /tmp/new/dff
mkdir: невозможно создать каталог `/tmp/new/dff': Permission denied
Задаем права доступа на каталог new в директории /tmp 777
student@node5:/tmp$ chmod 777 new
Создаем файл ngdfg и каталог dff в директории /tmp/new/
student@node5:/tmp$ mkdir /tmp/new/dff
student@node5:/tmp$ touch /tmp/new/ngdfg
student@node5:/tmp$ cd /tmp/new
student@node5:/tmp/new$ ls
dff/ ngdfg
Просмотр прав на созданный файл и каталог
student@node5:/tmp/new$ lsali
итого 12
1 044 971 drwxrwxrwx 3 student users 4096 2011;03−14 09:31 ./
53 124 drwxrwxrwt 11 root root 4096 2011;03−14 09:18 ./
1 044 972 drwxr-xr-x 2 student users 4096 2011;03−14 09:31 dff/
1 044 973 -rw-r—r— 1 student users 0 2011;03−14 09:31 ngdfg
Задаем права доступа на файл ngdfg в директории /tmp/new 777
student@node5:/tmp/new$ chmod 777 ngdfg
Просмотр прав, права изменились
student@node5:/tmp/new$ lsali
итого 12
1 044 971 drwxrwxrwx 3 student users 4096 2011;03−14 09:31 ./
53 124 drwxrwxrwt 11 root root 4096 2011;03−14 09:18 ./
1 044 972 drwxr-xr-x 2 student users 4096 2011;03−14 09:31 dff/
1 044 973 -rwxrwxrwx 1 student users 0 2011;03−14 09:31 ngdfg*
Убираем права для чтения на файл ngdfg для всех
student@node5:/tmp/new$ chmod a-w ngdfg
Просмотр прав, права изменились
student@node5:/tmp/new$ lsali
итого 12
1 044 971 drwxrwxrwx 3 student users 4096 2011;03−14 09:31 ./
53 124 drwxrwxrwt 11 root root 4096 2011;03−14 09:18 ./
1 044 972 drwxr-xr-x 2 student users 4096 2011;03−14 09:31 dff/
1 044 973 -r-xr-xr-x 1 student users 0 2011;03−14 09:31 ngdfg*
Добавляем права для чтения на файл ngdfg для пользователя
student@node5:/tmp/new$ chmod u+w ngdfg
Просмотр прав, права изменились
student@node5:/tmp/new$ lsali
итого 12
1 044 971 drwxrwxrwx 3 student users 4096 2011;03−14 09:31 ./
53 124 drwxrwxrwt 11 root root 4096 2011;03−14 09:18 ./
1 044 972 drwxr-xr-x 2 student users 4096 2011;03−14 09:31 dff/
1 044 973 -rwxr-xr-x 1 student users 0 2011;03−14 09:31 ngdfg*
Убираем права для чтения файла ngdfg для всех
student@node5:/tmp/new$ chmod a-r ngdfg
Неудачная попытка скопировать содержимое файла ngdfg в файл ff
student@node5:/tmp/new$ cp ngdfg ff
cp: невозможно открыть `ngdfg' для чтения: Permission denied
Смена владельца файла
student@node5:/tmp/new$ chown student ngdfg
Смена групы файла
student@node5:/tmp/new$ chgrp users ngdfg
Создание нового каталога new в директории /tmp/1/I/
student@node5:/tmp/1/I$ mkdir new
student@node5:/tmp/1/I$ ls
Lab1.html lab. html new/
Создаем новый файл ds и с помощью команды cat копируем содержимое этого файла в файл dg который создается после выполнения команды
student@node5:/tmp/new$ touch ds
student@node5:/tmp/new$ cat ds > dg
student@node5:/tmp/new$ ls
dff/ dg ds
Создание файловой системы ext2 на дискете fd0
[root]# mkfst ext2 /dev/fd0
Подсоединяет файловую систему первого раздела на втором жестком диске к каталогу /mnt/disk2
[root]# mount /dev/hdb1 /mnt/disk2
Файл /etc/fstab:
/dev/hda6 swap swap defaults 0 0
/dev/hda5 / ext3 defaults 1 1
#/dev/hda5 /mnt/hda5 vfat defaults 1 0
#/dev/cdrom /mnt/cdrom iso9660 noauto, owner, ro 0 0
/dev/fd0 /mnt/floppy vfat user, noauto, owner 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
proc /proc proc defaults 0 0
mfs /mfs mfs dfsa=1 0 0
//10.24.34.100/d$/mnt/evm-srv/dsmbfs username=vadik, iocharset=koi8-r, codepage=cp866,noauto, user, owner, defaults 0 0
//10.24.34.100/e$/mnt/evm-srv/esmbfs username=vadik, iocharset=koi8-r, noauto, user, owner, defaults 0 0
Часть 2
Вывод отчета о работающих процессах
student@node5:/tmp$ ps auxww
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 492 76? S 07:28 0:03 init [4]
root 2 0.0 0.0 0 0? S 07:28 0:00 [keventd]
root 3 0.0 0.0 0 0? SN 07:28 0:00 [ksoftirqd_CPU0]
root 4 0.0 0.0 0 0? S 07:28 0:00 [kswapd]
root 5 0.0 0.0 0 0? S 07:28 0:00 [bdflush]
root 6 0.0 0.0 0 0? S 07:28 0:00 [kupdated]
root 9 0.0 0.0 0 0? S 07:28 0:00 [khubd]
root 12 0.0 0.0 0 0? S 07:28 0:00 [kjournald]
root 13 0.0 0.0 0 0? S 07:28 0:00 [oMfs_main_serve]
root 14 0.0 0.0 0 0? S 07:28 0:00 [oMFS_gc]
Вывод всех запущенных процессов в виде иерархии, по которой можно определить взаимосвязь между процессами
student@node5:/tmp$ pstree
init-±acpid
|-6*[agetty]
|-atd
|-bdflush
|-crond
|-gpm
|-httpd—-5*[httpd]
|-inetd—-in.identd—-in.identd—-5*[in.identd]
|-kdeinit-±3*[kdeinit]
| |-kdeinit—-bash-±pstree
| | `-top
| |-kdeinit—-bash—-mc—-bash
| `-soffice.bin—-soffice.bin—-5*[soffice.bin]
|-9*[kdeinit]
|-kdm-±X
| `-kdm—-startkde—-kwrapper
|-keventd
|-khubd
|-kjournald
|-klogd
|-ksoftirqd_CPU0
|-kswapd
|-kupdated
|-memsorter
|-2*[mfs_server]
|-mozilla—-run-mozilla.sh—-mozilla-bin—-mozilla-bin—-2*[mozilla-bin]
|-oMFS_gc
|-oM_infoD
|-oM_migd
|-oMfs_main_serve
|-omdiscd
|-rpc.portmap
|-sshd
`-syslogd
Вывод списка текущих процессов
top — 10:02:49 up 2:34, 1 user, load average: 0.05, 0.11, 0.04
Tasks: 82 total, 1 running, 81 sleeping, 0 stopped, 0 zombie
Cpu (s): 0.7% user, 1.6% system, 0.0% nice, 97.7% idle
Mem: 12 6024k total, 11 7420k used, 8604k free, 800k buffers
Swap: 63 4528k total, 39024k used, 59 5504k free, 52112k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
680 student 19 0 1052 1052 824 R 1.3 0.8 0:00.42 top
216 root 17 0 63 592 19m 1900 S 0.3 15.5 1:53.49 X
500 student 14 0 11 848 4660 3712 S 0.3 3.7 0:08.18 kdeinit
1 root 8 0 88 76 52 S 0.0 0.1 0:03.47 init
2 root 9 0 0 0 0 S 0.0 0.0 0:00.04 keventd
3 root 18 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd_CPU0
4 root 9 0 0 0 0 S 0.0 0.0 0:00.80 kswapd
5 root 9 0 0 0 0 S 0.0 0.0 0:00.00 bdflush
6 root 9 0 0 0 0 S 0.0 0.0 0:00.00 kupdated
9 root 9 0 0 0 0 S 0.0 0.0 0:00.00 khubd
12 root 9 0 0 0 0 S 0.0 0.0 0:00.06 kjournald
13 root 9 0 0 0 0 S 0.0 0.0 0:00.00 oMfs_main_serve
14 root 9 0 0 0 0 S 0.0 0.0 0:00.00 oMFS_gc
15 root 9 0 0 0 0 S 0.0 0.0 0:00.00 oM_migd
16 root 9 0 0 0 0 S 0.0 0.0 0:00.69 oM_infoD
17 root 9 0 0 0 0 S 0.0 0.0 0:00.05 memsorter
Неудачная попытка повысить приоритет процесса top
student@node5:/tmp$ nicen -5 top
nice: невозможно установить приоритет: Permission denied
Запуск top с понижением приоритета
student@node5:/tmp$ nicen +5 top
682 student 17 5 1052 1052 824 R 1.3 0.8 0:01.34 top
Увеличение на 1 приоритет процессов с PID 987 и 32, а также всех процессов пользователя daemon
[root]# renice -1 987 -u daemonp 32
Посылка сигнала 9 (KILL) в процесс с PID 733
student@node5:~$ kills 9 733
Посылка сигнала 9 (KILL) в процессы запущенные командой top
student@node5:~$ killalls 9 top
Запуск top в фоновом режиме
student@node5:/tmp$ nohup top &
[1] 723
student@node5:/tmp$ nohup: appending output to `nohup.out'
Просмотр запущенных в фоновом режиме процессов
student@node5:/tmp$ jobs
[1]+ Stopped nohup top
Определение объема свободного дискового пространства
student@node5:/$ df
Файловая система 1K-блоков Исп Доступно Исп% смонтирована на
/dev/hda5 5 077 508 3 507 272 1 307 980 73% /
/mfs 9 999 999 -18 446 744 073 619 552 256 9 999 999 101% /mfs
Определение объема файла или каталога
student@node5:/tmp$ du /tmp
4 /tmp/.X11-unix
28 /tmp/kde-student
8 /tmp/ksocket-student
4 /tmp/.ICE-unix
20 /tmp/mc-student
4 /tmp/1/I/new
160 /tmp/1/I
140 /tmp/1/II
304 /tmp/1
2436 /tmp/svii7.tmp
4 /tmp/nnn
du: `/tmp/new/dff': Permission denied
4 /tmp/new
4 /tmp/mon
2864 /tmp
Вывод статистики по использованию памяти системой
student@node5:/tmp$ free
total used free shared buffers cached
Mem: 126 024 119 920 6104 0 3188 59 528
-/+ buffers/cache: 57 204 68 820
Swap: 634 528 41 232 593 296
Вывод информации по функционированию системы
student@node5:/tmp$ vmstat
procs —————-memory————— —-swap— ——-io—— —system— ——cpu—-;
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 41 232 6052 3220 59 544 3 5 46 14 215 254 3 1 96 0
Продолжительность работы системы
student@node5:/tmp$ uptime
10:24:20 up 2:56, 1 user, load average: 0.26, 0.15, 0.09
Вывод системной информации
student@node5:/tmp$ uname
Linux
Файл /etc/inittab:
#
# inittab This file describes how the INIT process should set up
#the system in a certain run-level.
#
# Default runlevel. (Do not set to 0 or 6)
id:4:initdefault:
# System initialization (runs when system boots).
si:S:sysinit:/etc/rc.d/rc.S
# Script to run when going single user (runlevel 1).
su:1S:wait:/etc/rc.d/rc.K
# Script to run when going multi user.
rc:2345:wait:/etc/rc.d/rc.M
# What to do at the «Three Finger Salute» .
ca:ctrlaltdel:/sbin/shutdownt5 -r now
# Runlevel 0 halts the system.
l0:0:wait:/etc/rc.d/rc.0
# Runlevel 6 reboots the system.
l6:6:wait:/etc/rc.d/rc.6
# What to do when power fails.
pf:powerfail:/sbin/genpowerfail start
# If power is back, cancel the running shutdown.
pg:powerokwait:/sbin/genpowerfail stop
# These are the standard console login getties in multiuser mode:
c1:12 345:respawn:/sbin/agetty 38 400 tty1 linux
c2:12 345:respawn:/sbin/agetty 38 400 tty2 linux
c3:12 345:respawn:/sbin/agetty 38 400 tty3 linux
c4:12 345:respawn:/sbin/agetty 38 400 tty4 linux
c5:12 345:respawn:/sbin/agetty 38 400 tty5 linux
c6:12 345:respawn:/sbin/agetty 38 400 tty6 linux
# Local serial lines:
#s1:12 345:respawn:/sbin/agettyL ttyS0 9600 vt100
#s2:12 345:respawn:/sbin/agettyL ttyS1 9600 vt100
# Dialup lines:
#d1:12 345:respawn:/sbin/agettymt60 38 400,19200,9600,2400,1200 ttyS0 vt100
#d2:12 345:respawn:/sbin/agettymt60 38 400,19200,9600,2400,1200 ttyS1 vt100
# Runlevel 4 used to be for an X window only system, until we discovered
# that it throws init into a loop that keeps your load avg at least 1 all
# the time. Thus, there is now one getty opened on tty6. Hopefully no one
# will notice. ;^)
# It might not be bad to have one text console anyway, in case something
# happens to X.
x1:4:wait:/etc/rc.d/rc.4
# End of /etc/inittab
3. Компиляция ядра с помощью команды make bzImage.
4. Компиляция модулей ядра — команда make modules.
5. Установка ядра и модулей sudo install-kernel.
6. Перезагрузка системы. При перезапуске в качестве ОС для запуска было выбрано ядро, сконфигурированное, скомпилированное и установленное нами на этапах 2 — 5.
7. Установка графического адаптера командой install-video-drv.
8. Запуск графической оболочки — startx
Текст скрипта install-kernel:
#! /bin/bash
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.14
cp System. map /boot/System.map-2.6.14
make modules_install
#make clean
echo «Updating LILO …»
/sbin/lilo
Текст скрипта install-video-drv:
#! /bin/bash
/usr/src/drivers/nVidia/NVIDIA-Linux-x86−1.0−7174-pkg1.run
Для проверки работоспособности системы и правильной установки ядра были выполнены команды:
ping 10.24.34.1
unamea
student@node9:~$ unamea
Linux node9 2.6.14-test #1 SMP PREEMPT Tue Oct 12 10:29:05 EEST 2010 i686 unknown unknown GNU/Linux
Вывод
linux операционный файл каталог На данной лабораторной работе были изучены основные команды системы Linux для создания и просмотра данных о файлах и папках, смены пользователя и группы файла, изменения прав доступа к файлу, а также команды для работы с потоками, изменения приоритетов и команды вывода различных сведений о системе. Также ознакомился с процедурой загрузки операционной системы Linux, а также получил теоретические сведения и практические навыки по работе с процессами в данной операционной системе.