LINUX.ORG.RU
 
monk

Статья по основам Линукс


0

0

Статья по базовым командам UNIX/Linux, на основе которой в скором времени будет выпущен учебник. Хотелось бы услышать конструктивную критику.

>>> Подробности

** ()
Проверено: Demetrio (20.11.2004 10:34:00)

СКАЖИ СВОЕМУ КОМПЬЮТЕРУ, ЧТОБЫ ЗАПЕР ДВЕРЬ

любительская автоматизация; устройство с открытой прошивкой
исходные тексты всех программ, открытые библиотеки
http://www.unicontrollers.com/products/unc01x

[#] Ответ на: Re: Re: Re: Re: Re: Статья по основам Линукс от Foster 20.11.2004 14:43:16  

Re: Re: Re: Re: Re: Re: Статья по основам Линукс

2Foster (*) (20.11.2004 14:43:16)
>шэдоу, блин :-) FreeBSD - он там лежит )
О, как :-))))))

anonymous ()
[#] Ответ на: Re: Статья по основам Линукс от AS 20.11.2004 16:29:21  
monk

Re: Re: Статья по основам Линукс

> Кстати, неплохо бы пояснить, зачем нужны -print0 у find и -0 у xargs. Раз уж это учебник. Это момент, явно заслуживающий пояснения.

Всё написано: в разделе про xargs. Также указаны преимущества xargs перед "альтернативным вариантом"

** ()
[#]  

Re: Статья по основам Линукс

Ты для кого такое гонишь?

Студентов нужно учить не linux'у, а unix'у. И совершенно не стоит быть святее Кернигана и Пайка. Не получится.

Чайнику про shell нужно говорить как минимум в третью очередь, если вообще говорить. Чайник вообше не обязан знать что латинские буквы это буквы, а не подмножество ascii символов.

()
[#] Ответ на: Re: Статья по основам Линукс от anonymous 20.11.2004 17:06:00  
monk

Re: Re: Статья по основам Линукс

2vk:

Во-первых, учебник всё-таки по Linux. "Сферический шелл" в нём как правило bash (хотя примеры должны идти и в sh, поправьте, если я не прав). btw, sh и есть "просто shell".

Насчёт man hier: см UNIX System V. А то можно и goboLinux юниксом назвать и MacOS X.

Насчёт файловых систем: в какой FS на UNIX-подобных ОС необходимо регулярно делать defrag? AFAIK ни UFS, ни FFS, ни современные FS под Linux такого не требуют, так как выполняют дефрагментацию автоматически. Разумеется фрагментация ненулевая, но пренебрежимо мала.

Статус возврата для любой запущенной команды получить элементарно вне зависимости от метода запуска. Я показал пример для шелла. Для C будет что-то вроде system("command1") || system("command2"). Метод передачи этого кода не важен. Конвейеры тоже шелл создает, и что?

** ()
[#] Ответ на: Re: Статья по основам Линукс от ignik 20.11.2004 17:25:57  
monk

Re: Re: Статья по основам Линукс

> Студентов нужно учить не linux'у, а unix'у. И совершенно не стоит быть святее Кернигана и Пайка. Не получится.

Нужно учить тому, чему хотят научиться. В частности UNIX уже мертвая система (btw, там default shell был sh). Живут только её производные. Поэтому нужно рассказывать то, что может пригодиться сейчас. В частности, касательно выбора more или less, dump или tar (dump на Linux уже практически не работает, а star или partimage обеспечивают неплохое резервное копирование).

> Чайнику про shell нужно говорить как минимум в третью очередь, если вообще говорить. Чайник вообше не обязан знать что латинские буквы это буквы, а не подмножество ascii символов.

Угу. А сфера = "множество точек равноудаленных от заданной точки". Видел я учебники по геометрии с такими определениями и без единого рисунка. Не сказал бы, что по ним легко что-то понять. Человеку в первую очередь нужна наглядность

** ()
[#] Ответ на: Re: Re: Статья по основам Линукс от monk 20.11.2004 17:25:33  

Re: Re: Re: Статья по основам Линукс

>> Кстати, неплохо бы пояснить, зачем нужны -print0 у find и -0 у
>> xargs. Раз уж это учебник. Это момент, явно заслуживающий пояснения.

> Всё написано: в разделе про xargs.

А, да. Не заметил, сорри. :-)

> Также указаны преимущества xargs перед "альтернативным вариантом"

Хм. Ни одного преимущества пока не увидел.

***** ()
[#] Ответ на: Re: Статья по основам Линукс от ignik 20.11.2004 17:25:57  

Re: Статья по основам Линукс

> Студентов нужно учить не linux'у, а unix'у.

Это уже тенденция... Традиционное "руководство системного администратора" Эви Немет с компанией тоже линуксеет...

> Чайнику про shell нужно говорить как минимум в третью очередь

Такого вообще за компьютер пускать не надо без сопровождающего.

***** ()
[#]  

Re: Статья по основам Линукс

> а заменяется на найденное имя файла

Это про find. Я так понимаю, что "а {} заменяется на найденное имя файла" ? ;-)




***** ()
[#] Ответ на: Re: Re: Re: Статья по основам Линукс от chucha 20.11.2004 16:35:42  
Sun-ch

Re: Re: Re: Re: Статья по основам Линукс

А чё каталог, а не 'папочки'

Ты маны воопще видел когда нибудь?

Например man mkdir man ls

mkdir == make directory

Это стандарный термин.

# ()
[#] Ответ на: Re: Re: Re: Re: Статья по основам Линукс от Sun-ch 20.11.2004 18:41:33  

Re: Статья по основам Линукс

> Это стандарный термин.

Это стандартный термин, прости, на каком языке ?

***** ()
[#]  

Re: Статья по основам Линукс

> В UNIX в отличие от операционных систем Microsoft файловые системы не подвержены фрагментации,

Спорное утверждение.
1. фрагментация возможна.
2. у NTFS фрагментация тоже минимизирована.

***** ()
[#] Ответ на: Re: Re: Re: Статья по основам Линукс от AS 20.11.2004 18:20:35  
monk

Re: Re: Re: Re: Статья по основам Линукс

>> Также указаны преимущества xargs перед "альтернативным вариантом"

>Хм. Ни одного преимущества пока не увидел.

"...Возьмём пример из предыдущего раздела: удалить все найденные файлы. Очевидно, что команда rm будет вызываться на каждый файл отдельно, несмотря на то, что она может работать не с одним файлом, а с несколькими...." (цитата из раздела про xargs)

Соответственно xargs позволяет запускать команду минимальное число раз, но требует, чтобы команда могла получать несколько однотипных аргументов

Насчет фигурных скобок: спасибо. Исходник в TeX'е. Иногда встречаются опечатки. Будет исправлено.

** ()
[#]  

Re: Статья по основам Линукс

Еще стоит отметить, что куча мелких файлов занимает разное место на разный файловых системах и этот набор файлов с раздела RaserFS может не влезть на аналогичный по размеру раздел ext2/ext3.

***** ()
[#] Ответ на: Re: Re: Re: Re: Статья по основам Линукс от monk 20.11.2004 18:51:07  

Re: Статья по основам Линукс

> Очевидно, что команда rm будет вызываться на каждый файл отдельно,
> несмотря на то, что она может работать не с одним файлом, а с
> несколькими...

Пропустил... Хм, про такое поведение xargs даже и не знал...

***** ()
[#] Ответ на: Re: Re: Re: Re: Статья по основам Линукс от Sun-ch 20.11.2004 18:41:33  
monk

Re: Re: Re: Re: Re: Статья по основам Линукс

> mkdir == make directory

Переводим "current directory" через lingvo: http://lingvo.yandex.ru/en?l=R.&CardId=SY3VycmVudCBkaXJlY3Rvcnk=;L0F

Получаем: текущий каталог; текущая папка

Оттуда же примеры использования

directory is not empty — каталог не пуст

directory under working directory — каталог внутри рабочего каталога

changing to another directory — перемещение в другой каталог

to travel around the directory structure — двигаться по многоуровневой структуре каталогов

to travel down the directory — проходить вниз по каталогу

Для сравнения: "file" переводится именно как "файл".

А "директория" это из разряда "монтировать", "погуглить", "замылить"

** ()
[#] Ответ на: Re: Статья по основам Линукс от AS 20.11.2004 19:09:15  
monk

Re: Re: Статья по основам Линукс

> Пропустил... Хм, про такое поведение xargs даже и не знал...

Главное, про такое поведение не забывать, когда команда по какой-либо причине не может список параметров принимать, а требует только один параметр (например, перлом запустить все файлы в каталоге). Тогда через -exec работает, а через xargs работает на каждом сотом файле (примерно).

xargs надо сравнивать не с find -exec, а с `find`. Если бы комнадные строки были бесконечны, то xargs был бы не нужен

** ()
[#] Ответ на: Re: Re: Re: Re: Статья по основам Линукс от Sun-ch 20.11.2004 18:41:33  
chucha

Re: Re: Re: Re: Re: Статья по основам Линукс

>А чё каталог, а не 'папочки'

О твоих сложных отношениях с великим и могучим известно всем. Покажи мне, пожалуйста, хотя бы один man или серьезную литературу, где каталог называют директорией. Ну и расшифруй аббревиатуру LDAP.

***# ()
[#] Ответ на: Re: Re: Статья по основам Линукс от Sun-ch 20.11.2004 19:03:47  

Re: Статья по основам Линукс

> Это такой же устоявшийся термин как и файл (file)

Я бы так не сказал. "Файл" - да, а вот вместо "директории", как правило, именно "каталог" используют. Присмотрись к публикациям, переводам и т.п.

***** ()
[#] Ответ на: Re: Re: Re: Статья по основам Линукс от monk 20.11.2004 16:07:15  

Re: Re: Re: Re: Статья по основам Линукс

попробуйте отыскать на ЛОРе топик "лучший GUI - консоль",
в обсуждаемоя там статье очень толково описано как надо
обучать начинающих пользователей работе с командной
строкой так чтобы не возникало ощущения неуверенности
и непонимания проишодящего

anonymous ()
[#]  

Re: Статья по основам Линукс

> команда echo. Она просто выводит на экран все свои параметры.
не совсем верно, например "-n" не выводится (вы ведь еще не
объяснили чем отличаются опции от параметров?)

> Символы && ... символы ||
неплохо было бы указать правильные русскоязычные названия для
этих символов, чтобы в будущем люди не путались

> Можно записать сразу всё содержимое файла командой cat
вот это место сразу вызывает ощущение какой-то магичности
команды cat. лучще уж сразу сказать про stdin, тем более
что дальше появляются stdout и stderr

> предположим, что файлы копировались с windows-системы и их
> имена в неправильной кодировке
"foo.txt" здесь несколько неудачный пример :)
возьмите какие-нибудь "Мои Докуметы" или другое типичное для
русских виндов название

> В UNIX существует встроенная система документации. ....
> о некоторым частям системы доступна более подробная документация,
> получить которую можно командой info.
не совсем верно, info (если не ошибаюсь) существует только в GNU

если уж говорить о переменных, то надо упмянуть команду set,
и конструкцию "$( )", альтернативную описанным выше обратным
апострофам (отличаются они тем как действует обратный слеш
внутри команды).

anonymous ()
[#] Ответ на: Re: Статья по основам Линукс от anonymous 20.11.2004 23:04:21  
monk

Re: Re: Статья по основам Линукс

>> Символы && ... символы ||

>неплохо было бы указать правильные русскоязычные названия для этих символов, чтобы в будущем люди не путались

А у них есть "правильное русскоязычное название"? Если да, то какое? В устной речи называл их "два амперсанлда", "две вертикальные черты", но не думаю, что это правильные термины.

По остальным пунктам спасибо, подправлю.

** ()
[#]  

Re: Статья по основам Линукс

Тут очевидно некий Колапс.

Так вот термин "Директория# изначально была в Unix, потом она перекочевала из Unix в MS-DOC. Начиная с Windows 95 Microsoft к директориям начала использовать название каталог, а каталог(папка) был взят из делопроизводства. А в *nix директория так и осталась директорией.

Тут правильная ссылка, где это статья читается: http://www2.a-sys.ru/kursi/00012/Linux_adm.html

** ()
[#]  

Re: Статья по основам Линукс

В целом неплохо, но, в воспитательных целях, я начал бы с команды man :)

()
[#] Ответ на: Re: Статья по основам Линукс от rjaan 21.11.2004 0:47:03  
monk

Re: Re: Статья по основам Линукс

Ещё насчёт директорий и каталогов

LC_ALL=ru_RU.KOI-R man mkdir

..... mkdir - создает каталоги

ОБЗОР mkdir [ключи] каталог... .....

В советских операционных системах тоже вроде как были "каталоги"

** ()
[#] Ответ на: Re: Re: Статья по основам Линукс от monk 21.11.2004 1:54:41  

Re: Re: Re: Статья по основам Линукс

>> В советских операционных системах тоже вроде как были "каталоги"

В советских операционных системах была полностью перведена вся ос да плюс бейсик. Кроме как геммороя пользы больше не наблюдалось. А директорий как был так и остался. Совет автору - хотелось бы главу про MC. Многие знают пользуют, но всех возможнестей не знают...

()
[#] Ответ на: Re: Re: Re: Re: Re: Статья по основам Линукс от chucha 20.11.2004 20:25:35  

Re: Re: Re: Re: Re: Re: Статья по основам Линукс

>> Покажи мне, пожалуйста, хотя бы один man или серьезную литературу, где каталог называют директорией.

Команда cd...

()
[#] Ответ на: Re: Статья по основам Линукс от AS 20.11.2004 18:50:42  

Статья по основам Линукс

> Спорное утверждение.

> 1. фрагментация возможна.

Просто она не имеет столь существенного значения.

Вообще, всем кто интересуется этой темой полезно посмотреть принципы распределения в UFS - как там за счёт намеренной фрагментации (переброс между полосами) уменьшается мелкая фрагментация, столь болезненная на FAT.

> 2. у NTFS фрагментация тоже минимизирована.

Угу, до первого прохода родным defrag'ом, после чего начинается каша. Или в 2003/XP это исправили?

* ()
[#]  

Re: Статья по основам Линукс

Таких обзорных статей хоть жопой ешь. А подробности все в манах.

*** ()
[#] Ответ на: Re: Статья по основам Линукс от ugoday 21.11.2004 11:05:26  

Re: Re: Статья по основам Линукс

>>> Таких обзорных статей хоть жопой ешь. А подробности все в манах.

Обзорных полно. На учебник не тянут. Mans тож достают на не родном да без экзэмпл.

()
[#] Ответ на: Re: Re: Статья по основам Линукс от Foster 21.11.2004 11:37:35  
vm

Re: Re: Re: Статья по основам Линукс

>> Mans тож достают на не родном да без экзэмпл.
блин, установите себе LINUX HOWTO все, потом основные учебники то же в html, всё это поставьте в какую нить папку и проиндексите - после этого ставим вебсервер и используем нормальный поиск, вместо геморойного МАН используйте хтмл форму и будет вам счастье и экземплы и на русском, тем более что вся песня менее 200 метров занимает. качайте с tldp.org , индексите с промощью swish-e

** ()
[#] Ответ на: Re: Статья по основам Линукс от yozhhh 20.11.2004 12:08:42  

Re: Re: Статья по основам Линукс

>Не будет ли это аудитория, хлопая ресницами, спрашивать "а что такое графическая среда"?

Будет! Очаровательно хлопать, очаровательными длинным ресницами...

А ты будешь объяснять, подсаживаясь поближе и доверительно кладя руку на коленку...

:)))

anonymous ()
[#] Ответ на: Re: Re: Статья по основам Линукс от Sun-ch 20.11.2004 19:03:47  

Re: Re: Re: Статья по основам Линукс

> Это такой же устоявшийся термин как и файл (file)

В твоей голове много чего застоялось, наверное.

anonymous ()
[#]  
vada

Re: Статья по основам Линукс

Бегло прочитал "УЧЕБНИК". Хм. ;)

Ну и коментарии^ навскидку...

1. Очень странно статья начинается. Как-то из середины.
2. Не понял, о каком шеле идет речь. Такая сборная салянка.
3. Про передачу кодов окончания между программами, это сильно.
4. Размещение файлов по каталогам, отдельная песня.
5. Масса мелких ляпов, но это, видимо, что диалеков шела и версий коменд, что у автора, я не знаю. :(

На мой взгляд, организован учебник неправильно. Я понимаю, что весь зоопарк UNIX охватить нереально. Все многообразие щелов тоже. Можно было рассмотреть 3-4 различных реализаций UNIX. Например, салярис, бсд и пару линуксов. Разбирая каждую команду в ее реализации для конкретной версии системы. Для начинающего пользователя, это послужит хорошим подспорьем в его понимании всего разнообразия мира *NIX. Возможно, он найдет информацию и по своей системе. А так в кучу-малу кидать все разом, помоему, только окончательно запутать новичка. Например, будет он пытаться выполнить команду netstat с некими ключами (ее в учебнике, кстати, я не нашел), и при этом, жутко удивляться, почему любимая FreeBSD на него шкварчит. Это только отпугнет новичка от дальнейшего изучения мира *NIX.

Мое мнение, учебник организован принципиально неравильно. Информации полезной, не спорю, много, но ...

**** ()
[#] Ответ на: Re: Статья по основам Линукс от vada 22.11.2004 14:06:25  
monk

Re: Re: Статья по основам Линукс

2vada

Во-первых, не учебник по UNIX, а статья по основам Linux. Там, где идет утверждение про UNIX, пишется про черты, которые Linux унаследовал из UNIX (возможно это не совсем корректно, но иначе надо как-то определять, что есть UNIX). Упоминающийся шелл: общий знаменатель между bash и sh (к сожалению, у меня sh симлинк на bash => может что указал из bбашизмов).

Из середины начинается, так как в учебнике должнв будет идти после главы, описывающей установку. Чем тебе не нравится передача кодов между программами. Как еще можно просто объяснить условные конструкции?

Размещение файлов по каталогам указано в соответствии с FHS (Filesystem Hierarchy Standard).

** ()
[#]  

Re: Статья по основам Линукс

А смысл в ней??? Лучше уж в контексте shell все это описывать. Как полезные скрипты писать, а для комманд уже справочников много и незабвенная книга Кернигана и Пайка - "Универсальная среда программирования UNIX". Лучше до сих пор ничего нет - первоисточник! А в общем статья нормальная, пользу извлечь можно.

* ()
[#]  

Re: Статья по основам Линукс

Это еще раз я. Главное не сказал - текст составлен методически грамотно, он легко читается и дается не навязчиво. А в плане скриптов хорошим примером является использование grep со словарем Мюллера для дословного перевода текста с англ. на русский - можно сказать классический пример:) С уважением, Попов Д. popov.mch@list.ru

* ()