1

Тема: linux - курс молодого бойца

Предлагаю в этой теме публиковать приемы работы с linux.
Вопросы в этой теме не задавать, для вопросов использовать эту тему.
Вопросы в этой теме удаляются без предупреждения!!!
Тема навеяна часто задаваемыми вопросами.



2

Re: linux - курс молодого бойца

Вопрос: Как скопировать текст из окна putty в буфер обмена windows?
Ответ: Нужно просто выделить текст мышкой.

Вопрос: Как скопировать текст из буфера обмена windows в putty?
Ответ: Нужно нажать правую кнопку мышки в окне putty.



3

Re: linux - курс молодого бойца

Вопрос: Как быстро набрать длинный путь в putty?
Ответ: Используйте клавишу <tab>. Попробуйте так, набираем в окне putty "/m", потом <tab>, еще раз <tab>. Потом "/sy", потом <tab> и т.д. Если после нажатия <tab> ничего не происходит, нажимаем <tab> еще раз, Вам будет предложен список вариантов продолжения. Набираем несколько первых букв и дальше <tab>.

Вопрос: Как повторить ранее введенную команду?
Ответ: Нажмите на клавиатуре кнопку со стрелочкой вверх. Нажимая клавиши стрелки вверх, вниз - перемещайтесь по ранее введенным командам. Выберете нужную команду, если нужно отредактируйте её и нажмите <Enter>.



4

Re: linux - курс молодого бойца

Вопрос: Как редактирвать файлы на Keenetic?
Ответ: Поставьте пакет mc (opkg install mc). Запустите mc (команда mc). Перемещайтесь с помощью клавиш стрелок по директориям. Клавиша <Tab> меняет активную панель. Выбираем "/.." + <Enter> для перемещения по дереву директорий вверх. Для просмотра содержимого файла нажмите F3, для редактирования F4. Для смены кодировки просматриваемого/редактируемого файла - <Alt-E>. Для использования буфера обмена windows следует держать нажатой клавишу <Shift> на клавиатуре.
Можно использовать и редактор nano. Поставьте пакет (opkg install nano) и вызывайте nano, указывая путь к файлу: (nano <путь к файлу>).



5

Re: linux - курс молодого бойца

Вопрос: Как запустить исполняемый файл (или скрипт) из текущей директории?
Ответ: Перед именем файла следует набрать "./", клавиша <tab> и в этом случае работает. Пример: если мы находимся в директории "/media/DISK_A1/system/etc/init.d/", то для остановки сервера minidlna набираем

./S50minidlna stop


6

Re: linux - курс молодого бойца

Вопрос: Как проверисть, запущена ли программа?
Ответ: Наберите "ps", из вывода будет понятно:

/media/DISK_A1/system/root # ps
  PID  Uid        VSZ Stat Command
    ...
<тут строки выбросил >
 1182 root       1172 S   /media/DISK_A1/system/usr/sbin/dropbear -d /media/DIS
 1185 root        892 S   /media/DISK_A1/system/usr/sbin/inadyn -F /media/DISK_
 1194 nobody     3248 S   /media/DISK_A1/system/usr/sbin/openvpn --cd /media/DI
 3786 root       1248 S   /media/DISK_A1/system/usr/sbin/dropbear -d /media/DIS
 3787 root       1036 S   -ash
 3823 root       1024 R   ps

Видим, что запущены dropbear, inadyn, openvpn.



7

Re: linux - курс молодого бойца

Вопрос: Как посмотреть, сколько ресурсов (ram, cpu) "потребляет" программа?
Ответ: Запутите top (команда "top"). Для выхода из top нажмите <Ctrl-C>. Можно поставить более функциональный и красивый вариант программы top под названием htop (opkg install htop). Выход из htop по <F10>.

Вопрос: Как посмотреть состояние памяти?
Ответ: Командой "free":

/media/DISK_A1/system/root # free
              total         used         free       shared      buffers
  Mem:        28956        21912         7044            0         2468
 Swap:       131064            0       131064
Total:       160020        21912       138108


8

Re: linux - курс молодого бойца

Вопрос: Я запустил демона (программу в режиме отладки) для просмотра логов. Как ее завершить?
Ответ: Нажать <Ctrl-C>.



9

Re: linux - курс молодого бойца

Вопрос: Команда "opkg list" (или другая) выдает длинный список, который на экране не помещается, как такие выдачи удобнее смотреть?
Ответ: Добавьте в конец программы "| more". Например "opkg list | more". После этого нажимайте пробел для следующей страницы списка, можно нажать "q" для окончания выдачи.
Если в выдаче программы Вы ищите определенные строки, например "php", можно набрать "opkg list | grep php", будут выданы на экран только строки с "php".
Примечание: Для того, чтобы использовать "more", нужно обновить busybox. Для этого выполняем две команды:

opkg update
opkg upgrade

Эти две команды рекомендуется периодически выполнять. Первая команда получает обновленный список пакетов из репозитария, вторая обновляет ранее установленные пакеты.



10

Re: linux - курс молодого бойца

Вопрос: Я написал свой скрипт (вариант скачал скрипт), но он не выплняется. В чем дело?
Ответ: В linux у файлов существует отдельный атрибут исполнения, является ли файл исполняемым определяется именно этим атрибутом (а не расширением файла, как в Windows). Для присвоения атрибута исполнения файлу используйте программу "chmod":

chmod +x <путь к скрипту или бинарному файлу>


11

Re: linux - курс молодого бойца

Вопрос: На форуме дана ссылка на пакет для тестирования. Как его установить?
Ответ: Можно установить одним из следующих двух способов.
1. Выполняем команду

opkg install <ссылка на ipk файл>

Пакет будет скачан и установлен. Поддерживаются ссылки http:// и ftp://.
2. Скачиваем ipk файл на usb носитель. Выполняем

opkg install <путь к ipk файлу>

Если ipk файл находится в текущей директории, не забываем перед именем файла набрать "./". Можно ipk файл скачать на ББ (БольшойБрат - компьютер) и после этого забросить на кинетик. Можно скачать сразу на кинетик командой "wget <ссылка на файл>". Файл в последнем случае скачается в текущую директорию.



12

Re: linux - курс молодого бойца

Cтруктура директорий операционной системы Linux

Операционная система Linux имеет четкую структуру расположения директорий и файлов. Поэтому многие люди,
начинающие изучать линукс, сталкиваются с трудностью понимания нужности каждой отдельной директории.
В этой статье приведен список основных директорий файловой системы Линукс и их очень краткое описание.
Краткое описание структуры файловой системы
Linux

01. / <root> Корневой раздел. Домашняя папка суперпользователя root располагается в корне файловой системы
02. ?? /bin Здесь хранятся основные команды операционной системы (ОС) - оболочки и файловой системы (ls, cp)
03. ?? /boot В этой директории хранятся образы ядер операционной системы Linux и менеджер загрузки (grub, lilo)
04. ?? /dev Директория содержит файлы устройств (принтеры, жёсткие диски), подключенные к операционной системе (ОС)
05. ?? /etc Здесь находятся конфигурационные файлы ОС (настройки сети, список пользователей) и программ (Apache, Samba)
06. ?? /home В этой директории должна в целях безопасности размещаться вся личная информация пользователей системы
07. ? ?? /home/username Это домашняя папка пользователя usermame - хранится пользовательская часть конфигурационных файлов
08. ?? /lost+found Сюда скидываются файлы, на которые не было ссылок ни в одной директории, хотя их inod не помечены как свободные
09. ?? /lib Эта директория для хранения системных библиотек, необходимых для работы программ из директорий /bin и /sbin и ОС в целом
10. ?? /media Эта директория используется для автоматического монтирования USB-накопителей
11. ?? /mnt В эту директорию командой mount вручную монтируются различные USB-накопители
12. ?? /opt Директория для размещения установленных программ с большим дисковым размером или вспомогательными пакетами
13. ?? /proc Сюда примонтирована виртуальная файловая система procfs с информацией, которую ядро может сообщить пользователям
13! ? ?? /proc/modules - В этом файле находится список загруженных модулей ядра
13i ? ?? /proc/cpuinfo - В этом файле находится информация о процессоре компьютера
14. ?? /root Это домашний каталог или домашняя папка суперпользователя, по умолчанию всегда расположена в корневом каталоге
15. ?? /sbin Здесь находятся основные системные программы для администрирования и настройки системы (iptables, ifconfig)
16. ?? /srv Тут хранятся специфичные параметры для окружения системы, чаще всего данная директория бывает пустой
17. ?? /sys Это директория с виртуальной файловой системой sysfs с информацией ядра Linux (>v.2.6) о устройствах и драйверах
18. ? ?? /sys/block Эта содержит директории всех блочных устройств, присутствующих в данный момент в системе
19. ? ?? /sys/bus В этой директории находится список шин, определенных в ядре Linux (eisa, pci)
20. ? ?? /sys/class Каталог содержит список группированных устройств по классам (printer, scsi-devices)
21. ?? /tmp Временное хранилище данных, все пользователи имеют права чтения и записи в этом каталоге
22. ?? /usr Здесь хранятся все установленные пакеты программ, документация и исходный код ядра (все, кроме root - Read Only)
23. ? ?? /usr/bin Эта директория дополнительных программ для всех учетных записей
24. ? ?? /usr/games Каталог для размещения доступных компьютерных игр в системе
25. ? ?? /usr/include В этой директории хранятся заголовочные файлы С++
26. ? ?? /usr/lib Тут находятся системные библиотеки для программ, расположенных в директории /usr
27. ? ?? /usr/sbin В этой директории хранятся дополнительные системные программы
28. ? ?? /usr/share А в этой директории хранятся общие данные установленных программ
29. ? ? ?? /usr/share/icons В этом каталоге находятся все иконки системы
30. ? ? ?? /usr/share/doc Это директория, в которой находится справочная документация по установленным программам
31. ? ?? /usr/src В этой директории хранятся исходные коды (здесь также располагаются исходные коды ядра)
32. ?? /var Это каталог для часто меняющихся данных, здесь находятся журналы ОС и системные файлы (log, cache)
33. ? ?? /var/cache В этом месте хранятся все cache - кэши различных программ
34. ? ?? /var/games В этом месте расположены файлы с игровыми достижениями
35. ? ?? /var/lib В этом месте - постоянные данные, изменяемые программами в процессе работы (базы данных, мета-данные)
36. ? ?? /var/lock Здесь лежат lock-файлы, указывающие на занятость некоторых ресурсов
37. ? ?? /var/log В этой директории хранятся все log - лог-файлы системы и установленных программ
38. ? ?? /var/spool Здесь лежат задачи, ожидающие обработки (задачи cron, очереди печати)
39. ? ?? /var/www В этой директории размещаются Web-страницы для сервера Apache
40. ?? / <swap> Раздел файла подкачки - виртуальной памяти для увеличения скорости обмена с оперативной памятью

http://itshaman.ru/articles/10/directory-linux

(c) asusforum.ru



13

Re: linux - курс молодого бойца

Вопрос: У меня неправильно отображаются русские буквы (вариант - псевдографика в mc). Как это исправить?
Ответ: Настройте правильно putty. Установите кодировку UTF-8 в разделе Translation. Сохраните настроенную сессию.
http://keenetic.zyxmon.org/files/putty-utf8.png



14

Re: linux - курс молодого бойца

Вопрос: Как узнать, сколько места осталось на диске?
Ответ: Наберите "df", из вывода будет понятно:

Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/mtdblock/4           3904      3904         0 100% /
/dev/mtdblock/6           1024       448       576  44% /storage
/dev/sda1              3847812   3529852    122496  97% /media/DISK_A1

Диск (у меня флешка на 4Gb) заполнен на 97%. На встроенной флешке (папка /storage) заполнено 44%.



15

Re: linux - курс молодого бойца

Вопрос: Как узнать S.M.A.R.T. - показатели жёсткого диска, прочую инфу, а также протестировать его?
Ответ:
1 установите smartmontools

opkg install smartmontools

2

smartctl -a /dev/sda

подробнее -  http://smartmontools.sourceforge.net

Отредактировано KOLANICH (2012-04-16 00:08:42)



16

Re: linux - курс молодого бойца

Вопрос: Как узнать какие файлы содержатся в пакете?
Ответ: Следует выполнить команду "opkg files <имя пакета>". Например:

~$ opkg files minidlna
Package minidlna (1.0.24-5) is installed on root and has the following files:
/media/DISK_A1/system/usr/bin/minidlna
/media/DISK_A1/system/etc/minidlna.conf
/media/DISK_A1/system/etc/init.d/S50minidlna