Загрузил Юрий Савенко

Help Linux Lab 7-8

Реклама
Команда lsb_release
Команда lsb_release предназначена для вывода информации о текущей версии дистрибутива Ubuntu.
Чтобы получить требуемую информацию, выполните в командной строке команду lsb_release -a:
Часто бывает необходимо узнать номер версии ядра Linux(kernel). Это не только интересно само по
себе, но также может быть необходимо при определении проблем или обновлении системы, ведь каждый
новый выпуск ядра содержит некоторые изменения, как существенные, так и не очень. К счастью, это
довольно легко сделать с помощью команды uname.
Для того, чтобы просто посмотреть версию ядра Linux запустите терминал и выполните команду
uname следующим образом:
uname -r
Пример результата работы команды:
3.11.4-201.fc19.x86_64
Или команду можно запустить с таким набором ключей:
uname -mrs
Пример вывода:
Linux 3.11.4-201.fc19.x86_64 x86_64
Для того, чтобы вывести всю информацию, выполните:
uname -a
Пример вывода:
Linux howtoitru 3.11.4-201.fc19.x86_64 #1 SMP Thu Oct 10 14:11:18 UTC 2013 x86_64 x86_64 x86_64
GNU/Linux
Расшифровывается вывод следующим образом:
3.11.4-201 - версия ядра Linux
x86_64 - говорит о том, что система 64-х битная
SMP - ядро Linux поддерживает многоядерные и многопроцессорные системы
Также, например, в выводимой информации может присутствовать PAE (Physical Address Extension),
что говорит о том, что используется ядро с поддержкой расширения процессора, которое позволяет
использвать более 4GB оперативной памяти при использовании 32-х битного ядра.
Описание ключей команды uname:
-a, --all
-s, --kernel-name
-n, --nodename
-r, --release
-v, --kernelversion
-m, --machine
-p, --processor
-i, --hardwareplatform
-o, --operatingsystem
вывести всю информацию
вывести имя ядра
вывести имя машины в сети
вывести номер выпуска операционной
системы
вывести версию ядра
вывести тип оборудования машины
вывести тип процессора
вывести тип аппаратной платформы
вывести имя операционной системы
Монтирование
Команда mount в линуксе является очень гибким инструментом в руках системного администратора. С
помощью команды mount можно подключить сетевой диск, раздел жесткого диска или USB-накопитель.
Данная статья не является полным, исчерпывающим описанием команды mount (полное описание
команды mount можно найти выполнив в консоли команду man mount), но стремиться к этому. Статья по
описанию команды mount постоянно дорабатывается и видоизменяется. Все пожелания по статье можете
оставлять в комментариях.
Устройства, которые в данный момент подключены к компьютеру, можно посмотреть набрав в
консоли:
# sudo fdisk -l
Эта команда показывает все устройства, которые подключенны. Они могут быть не примонтированы,
но подключены.
Монтирование разделов в Linux - общие слова
Если ядро Linux опознало ваше устройство-носитель данных, то оно должно предоставить какой-то
внешний интерфейс пользователю для работы с устройством. Этим интерфейсом является создание
файлов-устройств в каталоге /dev
Пример:
Устройствам, подключённым к IDE, будут соответствовать файлы-устройства /dev/hda, /dev/hdb и так
далее.
Устройствам типа SCSI, а также близкие им по духу SATA-устройства и USB-флешки, будут иметь файлыустройства/dev/sda, /dev/sdb и тому подобное.
Если на диске есть разделы, то цифра в имени файла-устройства будет соответствовать номеру раздела.
Монтирование разделов = объяснение системе, как добраться до ваших данных и сделать их доступными
для использования. Системе нужно объяснить три простые вещи:
1. какая файловая система на разделе;
2. какой файл-устройство вам нужно;
3. куда его подключить для просмотра = точка монтирования;
Каталог, в котором вы будете просматривать содержимое ваших разделов, называется точкой
монтирования (mount point). Поэтому нужно объяснить системе - командой или через графический
интерфейс - что вы хотите смонтировать, куда и что за файловая система на этом разделе.
В переводе на язык UNIX, это звучит так:
mount -t vfat /dev/hda3 /mnt/storage
Если нужно часто монтировать одни и те же разделы, занесите их в/etc/fstab - это общесистемный конфиг, в
котором указаны все необходимые разделы для монтирования. Редактировать этот файл может не абы кто,
а только root. Так что разживитесь рутовыми полномочиями и редактируйте /etc/fstab
Файл /etc/fstab состоит из колонок, разделителями между которыми являются символы табуляции (клавиша
TAB). Вот пример содержимого файла /etc/fstab:
# /etc/fstab: static file system information.
/dev/hda2 / reiserfs notail,noatime 0 1
/dev/hdb /mnt/cdrom iso9660 ro,user,noauto 0 0
/dev/sda1 /mnt/flash vfat iocharset=koi8-r,codepage=866,rw,user,auto 0 0
Формат колонок такой:

Монтируемое устройство (файл-устройство, он же раздел, который вы хотите примонтировать)

Точка монтирования (в какую директорию в файловой системе монтировать)

Тип монтируемой файловой системы

Опции монтирования (кодировка языка, необходимость монтирования при старте)
Важно, чтобы вы вставляли Тab после каждой колонки при редактировании /etc/fstab
History
Для просмотра списка ранее введенных команд в bash - имеется команда history. По
умолчанию она выводит список команд хранящийся в истории. Размер данного списка
определяется переменными окружения HISTSIZE - размер списка хранящегося в памяти
интерпретатора, а HISTFILESIZE - максимальное количество команд хранящихся в файле
истории. По умолчанию этоn файл ~/.bash_history, а его размер - 500 команд. Если вы
желаете хранить историю в другом файле, то нужно в .bashrc, задать команду HISTFILE=~/.vasya_history. Я для себя переопределяю только размер списка команд и
размер файла истории, устанавливая их значения в 1000 команд. Итак введя:
$ history
1
2
3
4
5
6
7
305
306
307
308
309
310
history | less
hg test
test 333
lynx www.yahoo.com
cat /etc/profile.d/colorls.sh
vim .screen
vim .screenrc
..........................
man bash
man vfork
hg lynx
cd txt/everyday/
vim history.txt
histroy
Отсюда видно, что в истории на данный момент находится 310 команд, конечно они
все на экране не поместятся, посему если вам надо только последние 20 команд, то
можно набрать:
$ history 20
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
vim lib/advhist.sh
getpg
vim .bash_logout
vim .bashrc
cat .lynxrc
vim .lynxrc
ls lib
cat .bashrc
getmail
ls
man bash
man vfork
hg lynx
cd txt/everyday/
vim history.txt
histroy
history
history
fg
history 20
Таким образом получим только последние 20 команд. Каждая команда имеет свой
номер, с помощью которого к ней можно обратится.
Tail
НАЗВАНИЕ
tail -- вывести последнюю часть файла
СИНТАКСИС
tail [-F | -f | -r] [-q] [-b номер | -c номер | -n номер] [файл ...]
ОПИСАНИЕ
Утилита tail выводит содержимое файла файл или, по умолчанию, своего
стандартного ввода, на стандартный вывод.
Вывод начинается с определённого байта, строки или 512-байтового блока
входного файла. Числа, перед которыми стоит знак плюс (`+'), указывают
позицию относительно начала входного файла, например, ``-c +2'' начнёт
выводить данные со второго байта входного файла. Числа, перед которыми
стоит знак минус (`-') или перед которыми знак отсутствует, указывают
позицию относительно конца входного файла, например, ``-n 2'' выводит
последние две строки ввода. По умолчанию начальная позиция принимается
равной ``-n 10'', т.е. последние 10 строк ввода.
Имеются следующие опции:
-b номер
Вывод начнётся с 512-байтового блока, номер которого задан аргументом номер.
-c номер
Вывод начнётся с байта, номер которого задан аргументом номер.
-f
Опция -f заставляет tail не останавливаться при достижении конца
файла, а ждать, пока станут доступными дополнительные данные.
Опция -f игнорируется, если стандартный ввод является каналом, но
не является именованным каналом FIFO.
-F
Опция -F работает также, как и опция -f, но tail также будет проверять, не был ли отслеживаемый файл переименован или обновлен.
Файл закрывается и открывается снова, если tail обнаружит, что
файл имеет новый номер индексного дескриптора (inode). Опция -F
игнорируется, если чтение производится из стандартного ввода, а
не из файла.
-n номер
Вывод начнётся со строки, номер которой задан аргументом номер.
-q
-r
Подавляет печать заголовков в случае, когда одновременно просматриваются несколько файлов.
Выводить данные в обратном порядке, построчно. Кроме того, эта
опция изменяет значение опций -b, -c и -n. Если указана опция
-r, эти опции задают количество байт, строк или 512-байтовых блоков для вывода, а не номера байтов, строк или блоков относительно
начала или конца входного файла, начиная с которых будет осуществляться вывод. По умолчанию, при использовании -r будет выводиться все входные данные.
grep: Поиск строк в файлах
Ни имя команды, ни ее аббревиатура (“General Regular Expression Parser” - синтаксический анализатор общих
регулярных выражений) не слишком интуитивны, но ее действие и ее использование довольно просты для
понимания: grep выполняет поиск в одном или нескольких файлах по шаблону, заданному в качестве
аргумента. Ее синтаксис:
grep [опции] <шаблон> [один или более файлов]
Если указано несколько файлов, в отображаемом результате их имена будут выводиться перед каждой
найденной строкой. Для предотвращения вывода этих имен используйте опцию -h; используйте опцию -l для
вывода только имен файлов с найденными совпадениями. Шаблон - это регулярное выражение, хотя в
большинстве случаев он состоит просто из одного слова. Наиболее часто используемые опции:

-i: поиск без учета регистра (т.е. игнорирование разницы между верхним и нижним регистром);



-v: обратный поиск. Вывод строк, которые не соответствуют шаблону;
-n: вывод номера строки для каждой из найденных строк;
-w: сообщает grep'у, что шаблон должен совпадать со всем словом.
Итак, давайте теперь вернемся к анализу лог-файла почтового демона. Нам необходимо найти все строки в
файле /var/log/mail/info, содержащие шаблон “postfix”. Для этого мы вводим такую команду:
# grep postfix /var/log/mail/info
Команда grep может быть использована в канале. Так мы можем получить такой же результат, что и в
предыдущем примере, при помощи следующего:
# cat /var/log/mail/info | grep postfix
mv: перемещение и переименование файлов
Для перемещения файлов используйте команду mv. Узнать больше о команде mv можно из man-страницы mv, для
чего необходимо набрать в командной строке man mv.
Ниже приведены некоторые часто используемые опции команды mv:

-i (interactive) — интерактивный режим. Предупреждает, что выбранный файл будет записан поверх уже
существующего в каталоге назначения. Это полезная опция, она похожа на опцию -i команды cp и дает возможность
подумать, действительно ли нужно перезаписать уже существующий файл.

-f (force) — принудительный режим. Данная опция выключает интерактивный режим и перемещает файлы, не
выдавая подсказок. Если вы еще плохо разбираетесь, что делать, эта опция опасна; старайтесь ее не использовать,
пока не станете чувствовать себя в системе уверенно.

-v (verbose) — режим дополнительных сообщений. Выводить на экран сообщение о каждой выполняемой
операции.
Если вы хотите переместить файл из своего домашнего в другой существующий каталог, наберите, находясь в
домашнем каталоге, следующее:
mv example.txt docs/
Та же команда, но с использованием абсолютного пути, выглядит так:
mv /home/user/example.txt /home/user/docs/
Команда mv используется не только для перемещения, но и для переименования файлов и каталогов.
Следующая команда переименует файл original_name в файл new_name:
mv original_name new_name
Следующая команда переместит файл original_name из каталога на один уровень выше текущего в текущий и
переименует этот файл в new_name:
mv ../original_name new_name
Следующая команда переместит файл original_name из текущего каталога в каталог dir3/ и переименует этот файл
в new_name:
mv original_name /dir1/dir2/dir3/new_name
Несколько примеров:

mv -i /tmp/pics/*.png .: перемещает все файлы из каталога /tmp/pics/, чьи имена заканчиваются на .png, в
текущий каталог (.), но запрашивает подтверждение перед перезаписью в нем любых файлов.

mv foo bar: переименовывает файл foo в bar. Если каталог bar уже существовал, результатом выполнения этой
команды будет перемещение файла foo или всего каталога (самого каталога плюс всех файлов и каталогов в нем,
рекурсивно) в каталог bar.

mv -vf file* images/ trash/: перемещает без запроса подтверждения все файлы из текущего каталога с
именами, начинающимися с file, вместе со всем каталогом images/ в каталог trash/, и показывает порядок выполнения
каждой операции.
Скачать