Початок роботи з лінукс. Основи роботи у Linux. Пошук додаткового програмного забезпечення

Що таке Ubuntu? Ubuntu – це сучасна повнофункціональна операційна система, заснована на ядрі Linux. У перекладі з південноафриканської зулу слово Ubuntu приблизно означає «людяність».

Ubuntu поширюється і завжди буде розповсюджуватись абсолютно безкоштовно. Але при цьому встановлюючи Ubuntu на свій комп'ютер, ви отримуєте повний набірвсіх необхідних для роботи додатків, а все, що бракує в стандартній поставці, ви зможете легко скачати з інтернету. І в цьому немає ніякої каверзи. Ви можете використовувати Ubuntu і все доступне в цій системі без будь-яких обмежень абсолютно безкоштовно і на абсолютно законних підставах. Мало того, ви навіть можете завантажити вихідний кодвсіх компонентів системи і зробити на його основі свій продукт .

Ubuntu підтримується і спонсорується фірмою Canonical, проте величезний внесок у розвиток цієї чудової ОС вносить співтовариство. звичайні люди, які прагнуть покращити використовувані ними програми та інструменти. Можливо, і ви коли-небудь захочете допомогти зробити Ubuntu найкращою операційною системою і візьміть участь у роботі спільноти.

Про ресурс

Мета цього ресурсу – допомогти новачкам встановити Ubuntu на свій комп'ютер та освоїтися у цій системі. Скажу відразу, всі статті написані з припущення, що читач трохи розуміється на комп'ютерах і зможе відрізнити файл від папки. Хоча жодних специфічних знань вам не знадобиться - лише загальна комп'ютерна грамотність.

Цей ресурс є посібником для новачків, тому якщо ви ще не працювали в Ubuntu, рекомендую вам прочитати всі статті по порядку. Якщо ж ви вже щось знаєте про Ubuntu і про Linux загалом, можливо, щось здасться вам знайомим. У цьому випадку можете читати статті на свій розсуд, для навігації використовуйте меню праворуч. До речі, якщо вам незручно читати посібник в інтернеті, ви можете завантажити PDF-версію.

У цьому посібнику міститься далеко не вичерпна інформація, воно лише покликане допомогти вам безболісно увійти у світ Ubuntu. З усіх питань звертайтеся на офіційний російськомовний форум, там вам завжди допоможуть, крім того існує створювана спільнотоюросійською мовою, в ній ви можете пошукати необхідну інформацію.

Невелика інструкція

Що ж ви зможете дізнатися з цього посібника? Ну по-перше я розповім, як поставити Ubuntu на ваш комп'ютер - єдиною операційною системою або поруч із Windows. Далі я трохи торкнуся інтерфейсу користувача і основних елементів управління системою. А потім постараюся послідовно розповісти про всі необхідні засади використання Ubuntu. До речі, у багатьох статтях є досить багато виносок. Вони містять додаткову інформацію або просто різні коментарі до основного вмісту. Ви можете пропускати їх при прочитанні. Вони не потрібні для розуміння основного матеріалу керівництва, але найчастіше корисні як роз'яснення деяких специфічних питань, які можуть у вас виникнути.

Скажу відразу - у посібнику практично немає описів конкретних додатків. Для Ubuntu існує безліч програм на будь-який смак і колір. І я дуже хотів би не рекомендувати щось конкретне, а показати вам, як знаходити і встановлювати саме те, що особисто вам більше подобається і підходить.

Загалом і в цілому мета цього керівництва - навчити читача невимушено та ефективно використовувати всі основні інструменти системи. Дуже сподіваюся, що після його прочитання ви зможете спокійно працювати в Ubuntu і з легкістю виконувати всі необхідні вам дії.

У посібнику описується версія Ubuntu з довгостроковою підтримкою - Ubuntu 10.04 LTS "Lucid Lynx".

Сучасні версії Ubuntu сильно відрізняються від "Lucid Lynx" інтерфейсом користувачаі встановленими програмами, Тож для них це керівництво практично не актуальне.

Для більш старих версій також можливі невеликі відмінності від описаного у статтях, але загальні положеннязалишаться такими самими. Однак рекомендую вам завжди використовувати саме останню версію Ubuntu. У першій статті я розповім звідки можна отримати свою копію дистрибутива

  • Блог компанії Computer Science Center
  • Ідея вступного курсу по роботі з Linux виникла у нас із колегами досить давно. Я з 2011 року займаюся біоінформатикою в Лабораторії алгоритмічної біології СПбАУ РАН (і мій партнер писав про те, чим ми займаємося). Відразу потрібно сказати, що біоінформатика без Linux практично неможлива, оскільки більшість біоінформатичних програм створені саме під цю операційну систему і працюють тільки на ній.

    З огляду на те, що це область на стику наук, ми постійно спілкуємося з біологами. Біологам же зараз доводиться працювати з дуже великими обсягамиданих, тому вміння використовувати Linux, оптимальну для подібних завдань операційну систему, стає необхідною навичкою. Насправді, мова не лише про вміння поводитися з Linux, а загалом про комп'ютерної грамотності: які існують правила роботи на сервері, як завантажувати та ефективно зберігати файли з даними, які програми запускати для їх обробки та як це зробити і т.д. - всі ті речі, які спрощують і прискорюють вашу роботу, так і значно полегшують спільну діяльність з колегам. Незважаючи на те, що розібратися з Linux можна і самостійно, почитавши розумні книжки та сайти, для людей з нетехнічного середовища це часто викликає певні складнощі і багато хто здається на початкових етапах освоєння цієї ОС (наприклад, на знайомстві з командним рядком).

    На основі нашого досвіду я та мій колега Андрій Пржибельський (@andrewprzh) спочатку збиралися провести кілька занять для біологів з комп'ютерної грамотності. А потім ця ідея виросла в тритижневий відкритий онлайн-курс (MOOC) Інституту біоінформатики російською мовою, який пізніше був звужений до введення в Linux, як відправної точки, - оскільки вмістити все в три тижні виявилося дуже і дуже важко. Курс вже почався і виявився досить популярним (на Наразіна нього записалося понад п'ять тисяч осіб), але перший дедлайн за завданнями – 24 листопада, тому ще можна приєднатися без втрати балів або просто вивчати курс у вільному режимі (всі матеріали залишаться відкритими).

    Про саму підготовку першого в нашому житті онлайн-курсу, якщо співтовариству цікаво, ми напишемо окрему посаду - це зовсім не так просто і швидко, як здається на перший погляд.

    Але спочатку хотілося б зупинитися на відповідях на запитання, які нам ставили найчастіше. Під час підготовки курсу ми спілкувалися з самими різними людьмиі зіткнулися з тим, що багато хто зовсім не розуміє, де використовується Linux, і не здогадувалися, що система може бути їм корисною. Отже:

    Навіщо зараз потрібно вміти поводитися з Linux?

    Багато хто не помічає, але Linux вже довкола нас. Усе Android пристроїпрацюють на Linux, більшість серверів в Інтернеті також використовують цю операційну систему і є безліч інших прикладів. Звичайно, можна продовжувати користуватися всіма цими речами і не знаючи Linux, але освоївши основи цієї системи, можна краще зрозуміти поведінку оточуючих вас речей. Крім того, при роботі з великим обсягом даних, Linux просто необхідний, адже більшість складних обчислень над величезними масивами даних виконуються саме на комп'ютерах під керуванням Linux. І це не випадковий вибір: більшість обчислювальних завдань виконуються на Linux набагато швидше, ніж Windows або Mac OS X.

    Як Linux пов'язаний із освоєнням інших дисциплін?

    Величезна частка наукового програмного забезпечення, особливо програм для обробки великих даних (наприклад, в галузі біоінформатики) розроблена спеціально під Linux. Це означає, що ці програми просто не можуть бути запущені під Windows або Mac OS X. Так що якщо ви не вмієте працювати в Linux, то автоматично втрачаєте можливість використовувати найсучасніші наукові напрацювання. Крім того, вивчаючи Linux, ви краще розумієте, як працює комп'ютер, адже ви зможете віддавати йому команди практично безпосередньо.

    Чому для цього потрібний окремий курс?

    У Linux дуже багато можливостей, які корисно знати і, звичайно ж, вміти ними скористатися в потрібний момент. На щастя, сучасні версії Linuxнабагато більш дружелюбні до користувачів, ніж їхні побратими ще 5-6 років тому. Зараз можна не мучитися годинами і навіть днями ночами після встановлення системи, щоб налаштувати собі вихід в Інтернет, друк на принтері, розкладки клавіатури тощо. Будь-який бажаючий зможе почати використовувати Linux так само, як він використовував Windows або Mac OS X вже після мінімального знайомства з цією системою, яке обчислюватиметься хвилинами. Однак можливості Linux набагато ширші «повсякденного» використання. Розповісти про всю функціональність Linux просто неможливо навіть за тритижневий курс. Однак ми намагаємося навчити слухачів використовувати більшість базових можливостей Linux, А найголовніше, сподіваємося, що минулі курс зможуть успішно продовжити освоєння Linux самостійно.

    Що в Linux цікавого?

    Для нас Linux схожий на дуже цікаву книгу, яку ви прочитали та із задоволенням рекомендуєте своїм друзям і навіть відчуваєте заздрість від того, що у них знайомство з цим твором ще попереду. Єдина різниця в тому, що хоч ми й знайомі з Linux вже майже по 10 років, не можемо сказати, що прочитали його цілком. У ньому постійно можна знайти щось нове для себе, дізнатися, що багато речей, які ти звик робити одним способом, можна зробити зовсім по-іншому - набагато простіше і швидше.

    Чим більше знайомишся з Linux, тим він стає цікавішим. І від початкового бажання "скоріше б вимкнути і перезавантажитися в рідну і знайому Windows (Mac OS X)" ви незабаром переходите в стан "хм, а тут не так і погано" і ще трохи пізніше в "як я взагалі міг працювати в цій Windows" ?!». А ще вивчаючи Linux, ви часом можете відчути себе трохи хакером або героєм фільму про програмістів.

    Наш курс складається з короткого оглядуосновних можливостей Linux, проте для початківців цього має бути цілком достатньо, щоб зацікавитися Linux і трохи поринути в його філософію. Наприклад, більшу частину курсу ми проводитимемо за роботою в терміналі, так що у новачків має виникнути і звикання та розуміння переваг такого підходу до управління комп'ютером. Для більш розвинених користувачів можуть представляти інтерес окремі заняття курсу - наприклад, про роботу з віддаленим сервером або програмування мовою bash. .

    Як перевіряти рішення задач на курсі Linux? Це взагалі можливе?

    Відповідь на це питання була нетривіальною - ми довго думали, як перевіряти завдання (наприклад, що користувач встановив Linux собі на комп'ютер або відредагував файл у певному редакторі) і як придумати цікаві завдання, щоб справді показати реальну роботуз Linux. Для якихось тем вийшли досить цікаві підходи. Наприклад, спеціально для курсу було додано новий типзадач на платформі Stepic - підключення до віддаленому серверу(і відкриття "терміналу") прямо у вікні браузера - за відгуками перших користувачів, їм сподобалося. Звичайно, вперше не обійшлося без шорсткості, але загалом все працює досить добре. Про технічний бікцього питання скоро з'явиться окрема посада від розробників. Приклад такого завдання (для перегляду наживо можна записатися на курс):

    Потрібно сказати, що не всі користувачі сприймали завдання з гумором. Наприклад, ми перевіряли навичку встановлення програм на Linux на прикладі програми VLC. Потрібно було встановити її у свою систему одним із розказаних способів, потім відкрити довідку про програму, знайти прізвище першого автора та ввести її у форму для перевірки. Яких тільки коментарів ми не наслухалися про це завдання:) А помилялися люди в основному в тому, що вводили ім'я та прізвище, або тільки ім'я, або частину прізвища (а воно там подвійне, через дефіс!). Загалом, якщо наважитеся проходити курс, то читайте умови завдань уважніше і це заощадить багато часу та нервів! Правда з тим же автором було зауваження і у справі, виявилося, що у старих версіях VLCвін йде аж на 14 місці, тож додали у перевірку ще одного автора, який перший серед «старого» списку (і, до речі, третій у «новому»).

    А чому все-таки Linux такий гарний?

    Питання, звичайно, неоднозначне. На мій погляд одним із ключових переваг LinuxПеред Windows або Mac OS X є те, що ця операційна система розробляється величезним співтовариством програмістів по всьому світу, а не в двох, хай і дуже великих компаніях (Microsoft та Apple). Вихідний код цієї системи відкритий, і кожен може познайомитися з внутрішнім пристроєм Linux або взяти участь у його розвитку. Розробники розвивають його не тільки для користувачів-покупців, але і для самих себе, з чим і пов'язаний такий великий прогрес у розвитку та багато інших переваг. Як «бонуси» для звичайних користувачів: Linux безкоштовний, На Linux практично немає вірусів (а самі розробники вірусів часто сидять під Linux!), Існує величезна кількість версій цієї системи і кожен може вибрати саме йому, що сподобалася!

    І насамкінець хотілося б розповісти про своє перше знайомство з Linux саме в робочому процесі (до цього був ще окремий курс з навчання, але з нього я не дуже багато виніс, на жаль). Цей випадок мене так вразив, що пам'ятаю його й досі. Коли я працював на кафедрі в Політеху на 3-му курсі, мені знадобилося запускати одну програму для обробки даних. Програма була написана на С++, а ми працювали тоді в Windows XP. Запусків потрібно було зробити багато, були вони досить однотипні і займали кілька хвилин. За цей час нічого іншого зробити на комп'ютері було не можна - він повністю «підвисав», тож можна було побалакати з іншими співробітниками або просто прогулятися кабінетом. Приблизно через кілька тижнів таких запусків, мій науковий керівник порадив спробувати мені зробити все те саме, але не в Windows, а в Linux. Я тоді подумав «ну яка різниця», але так керівника поважав, програму перекомпілював і його пораду виконав. Якого ж було моє здивування, коли я запустив ту ж саму програму на тих же даних і отримав результат (природно, такий самий) за кілька секунд! Я навіть зі стільця встати не встиг, не те що прогулятися.

    Ідея вступного курсу по роботі з Linux виникла у нас із колегами досить давно. Я з 2011 року займаюся біоінформатикою в Лабораторії алгоритмічної біології СПбАУ РАН (і мій партнер писав про те, чим ми займаємося). Відразу потрібно сказати, що біоінформатика без Linux практично неможлива, оскільки більшість біоінформатичних програм створені саме під цю операційну систему і працюють тільки на ній.

    З огляду на те, що це область на стику наук, ми постійно спілкуємося з біологами. Біологам зараз доводиться працювати з дуже великими обсягами даних, тому вміння використовувати Linux, оптимальну для подібних завдань операційну систему, стає необхідною навичкою. Насправді, йдеться не лише про вміння поводитися з Linux, а загалом про комп'ютерну грамотність: які існують правила роботи на сервері, як завантажувати та ефективно зберігати файли з даними, які програми запускати для їх обробки та як це зробити і т.д. . - всі ті речі, які спрощують і прискорюють вашу роботу, так і значно полегшують спільну діяльність з колегам. Незважаючи на те, що розібратися з Linux можна і самостійно, почитавши розумні книжки та сайти, для людей з нетехнічного середовища це часто викликає певні складнощі і багато хто здається на початкових етапах освоєння цієї ОС (наприклад, на знайомстві з командним рядком).

    На основі нашого досвіду я та мій колега Андрій Пржибельський (@andrewprzh) спочатку збиралися провести кілька занять для біологів з комп'ютерної грамотності. А потім ця ідея виросла в тритижневий відкритий онлайн-курс (MOOC) Інституту біоінформатики російською мовою, який пізніше був звужений до введення в Linux, як відправної точки, - оскільки вмістити все в три тижні виявилося дуже і дуже важко. Курс уже розпочався і виявився досить популярним (на даний момент на нього записалося понад п'ять тисяч осіб), але перший дедлайн за завданнями – 24 листопада, тому ще можна приєднатися без втрати балів або просто вивчати курс у вільному режимі (всі матеріали залишаться відкритими).

    Про саму підготовку першого в нашому житті онлайн-курсу, якщо співтовариству цікаво, ми напишемо окрему посаду - це зовсім не так просто і швидко, як здається на перший погляд.

    Але спочатку хотілося б зупинитися на відповідях на запитання, які нам ставили найчастіше. При підготовці курсу ми спілкувалися з різними людьми і зіткнулися з тим, що багато хто зовсім не розуміє, де використовується Linux, і не здогадувалися, що система може бути їм корисна. Отже:

    Навіщо зараз потрібно вміти поводитися з Linux?

    Багато хто не помічає, але Linux вже довкола нас. Всі Android пристрої працюють на Linux, більшість серверів в Інтернеті також використовують цю операційну систему і є безліч інших прикладів. Звичайно, можна продовжувати користуватися всіма цими речами і не знаючи Linux, але освоївши основи цієї системи, можна краще зрозуміти поведінку оточуючих вас речей. Крім того, при роботі з великим обсягом даних Linux просто необхідний, адже більшість складних обчислень над величезними масивами даних виконуються саме на комп'ютерах під керуванням Linux. І це не випадковий вибір: більшість обчислювальних завдань виконуються на Linux набагато швидше, ніж Windows або Mac OS X.

    Як Linux пов'язаний із освоєнням інших дисциплін?

    Величезна частка наукового програмного забезпечення, особливо програм для обробки великих даних (наприклад, в галузі біоінформатики) розроблена спеціально під Linux. Це означає, що ці програми просто не можуть бути запущені під Windows або Mac OS X. Так що якщо ви не вмієте працювати в Linux, то автоматично втрачаєте можливість використовувати найсучасніші наукові напрацювання. Крім того, вивчаючи Linux, ви краще розумієте, як працює комп'ютер, адже ви зможете віддавати йому команди практично безпосередньо.

    Чому для цього потрібний окремий курс?

    Linux дуже багато можливостей, які корисно знати і, звичайно ж, вміти ними скористатися в потрібний момент. На щастя, сучасні версії Linux набагато дружелюбніші до користувачів, ніж їхні побратими ще 5-6 років тому. Зараз можна не мучитися годинами і навіть днями ночами після встановлення системи, щоб налаштувати собі вихід в Інтернет, друк на принтері, розкладки клавіатури тощо. Будь-який бажаючий зможе почати використовувати Linux так само, як він використовував Windows або Mac OS X після мінімального знайомства з цією системою, яке обчислюватиметься хвилинами. Однак можливості Linux набагато ширші «повсякденного» використання. Розповісти про всю функціональність Linux просто неможливо навіть за тритижневий курс. Однак ми намагаємося навчити слухачів використовувати більшість базових можливостей Linux, а найголовніше, сподіваємося, що курс зможуть успішно продовжити освоєння Linux самостійно.

    Що в Linux цікавого?

    Для нас Linux схожий на дуже цікаву книгу, яку ви прочитали та із задоволенням рекомендуєте своїм друзям і навіть відчуваєте заздрість від того, що у них знайомство з цим твором ще попереду. Єдина різниця в тому, що хоч ми й знайомі з Linux вже майже по 10 років, не можемо сказати, що прочитали його цілком. У ньому постійно можна знайти щось нове для себе, дізнатися, що багато речей, які ти звик робити одним способом, можна зробити зовсім по-іншому - набагато простіше і швидше.

    Чим більше знайомишся з Linux, тим він стає цікавішим. І від початкового бажання "скоріше б вимкнути і перезавантажитися в рідну і знайому Windows (Mac OS X)" ви незабаром переходите в стан "хм, а тут не так і погано" і ще трохи пізніше в "як я взагалі міг працювати в цій Windows" ?!». А ще вивчаючи Linux, ви часом можете відчути себе трохи хакером або героєм фільму про програмістів.

    Наш курс складається з короткого огляду основних можливостей Linux, проте для користувачів-початківців цього має бути цілком достатньо, щоб зацікавитися Linux і трохи зануритися в його філософію. Наприклад, більшу частину курсу ми проводитимемо за роботою в терміналі, так що у новачків має виникнути і звикання та розуміння переваг такого підходу до управління комп'ютером. Для більш розвинених користувачів можуть представляти інтерес окремі заняття курсу - наприклад, про роботу з віддаленим сервером або програмування мовою bash. .

    Як перевіряти рішення задач на курсі Linux? Це взагалі можливе?

    Відповідь на це питання була нетривіальною - ми довго думали, як перевіряти завдання (наприклад, що користувач встановив Linux собі на комп'ютер або відредагував файл у певному редакторі) і як вигадати цікаві завдання, щоб дійсно показати реальну роботу з Linux. Для якихось тем вийшли досить цікаві підходи. Наприклад, спеціально для курсу було додано новий тип завдань на платформі Stepic - підключення до віддаленого сервера (і відкриття «терміналу») прямо у вікні браузера - за відгуками перших користувачів їм сподобалося. Звичайно, вперше не обійшлося без шорсткості, але загалом все працює досить добре. Про технічний бік цього питання незабаром з'явиться окремий пост від розробників. Приклад такого завдання (для перегляду наживо можна записатися на курс):

    Потрібно сказати, що не всі користувачі сприймали завдання з гумором. Наприклад, ми перевіряли навичку встановлення програм на Linux на прикладі програми VLC. Потрібно було встановити її у свою систему одним із розказаних способів, потім відкрити довідку про програму, знайти прізвище першого автора та ввести її у форму для перевірки. Яких тільки коментарів ми не наслухалися про це завдання:) А помилялися люди в основному в тому, що вводили ім'я та прізвище, або тільки ім'я, або частину прізвища (а воно там подвійне, через дефіс!). Загалом, якщо наважитеся проходити курс, то читайте умови завдань уважніше і це заощадить багато часу та нервів! Правда з тим же автором було зауваження і у справі, виявилося, що у старих версіях VLC він йде аж на 14 місці, тож додали у перевірку ще одного автора, який перший серед «старого» списку (і, до речі, третій у «новому») ).

    А чому все-таки Linux такий гарний?

    Питання, звичайно, неоднозначне. На мій погляд одним із ключових переваг Linux перед Windows або Mac OS X є те, що ця операційна система розробляється величезним співтовариством програмістів по всьому світу, а не в двох, хай і дуже великих компаніях (Microsoft та Apple). Вихідний код цієї системи відкритий, і кожен може познайомитися з внутрішнім пристроєм Linuxабо взяти участь у його розвитку. Розробники розвивають його не тільки для користувачів-покупців, але і для самих себе, з чим і пов'язаний такий великий прогрес у розвитку та багато інших переваг. Як «бонуси» для звичайних користувачів: Linux безкоштовний, на Linux практично немає вірусів (а самі розробники вірусів часто сидять під Linux!), Існує величезна кількість версій цієї системи і кожен може вибрати сподобалася саме йому!

    І насамкінець хотілося б розповісти про своє перше знайомство з Linux саме в робочому процесі (до цього був ще окремий курс з навчання, але з нього я не дуже багато виніс, на жаль). Цей випадок мене так вразив, що пам'ятаю його й досі. Коли я працював на кафедрі в Політеху на 3-му курсі, мені знадобилося запускати одну програму для обробки даних. Програма була написана на С++, а ми працювали тоді в Windows XP. Запусків потрібно було зробити багато, були вони досить однотипні і займали кілька хвилин. За цей час нічого іншого зробити на комп'ютері було не можна - він повністю «підвисав», тож можна було побалакати з іншими співробітниками або просто прогулятися кабінетом. Приблизно через кілька тижнів таких запусків, мій науковий керівник порадив спробувати мені зробити все те саме, але не в Windows, а в Linux. Я тоді подумав «ну яка різниця», але так керівника поважав, програму перекомпілював і його пораду виконав. Якого ж було моє здивування, коли я запустив ту ж саму програму на тих же даних і отримав результат (природно, такий самий) за кілька секунд! Я навіть зі стільця встати не встиг, не те що прогулятися.

    У цій статті не розглядається інсталяція Linux. Я маю на увазі, що читач вже встановив один із дистрибутивів цієї ОС. Однак після успішного встановлення у користувача зазвичай виникає багато питань, відповіді на деякі з них даються в цій статті. Під час підготовки даного матеріалувикористовувався Black Cat Linux 6.02, але все нижчевикладене практично без змін застосовно і до інших дистрибутивів Linux (наприклад, Red Hatабо Mandrake).

    Як відомо, працювати в Linux можна у графічній системі X Windowабо текстової консолі. Більшість користувачів після інсталяції вважають за краще працювати виключно з віконним менеджером, але є широкий ряд завдань, виконати які можна (або значно простіше), працюючи в консолі. Тому саме з неї я хотів би розпочати цю статтю.
    Для початку трохи про налаштування.

    Робота із програмою linuxconf.
    Якщо під час інсталяції Linux ви налаштували автоматичний запуск X-ів, то вам потрібно спочатку перейти в консоль. Для цього натисніть Ctrl+Alt+F1. Ви потрапите у віртуальну текстову консоль і після введення імені користувача та пароля зможете давати команди shell. Для повернення до X Window натисніть Alt+F7. Взагалі кажучи, за умовчанням ви можете працювати відразу в 6-ти віртуальних консолях, що часто буває дуже зручно (перемикання між ними Alt+F1...Alt+F6).
    У консолі введіть команду linuxconf. Запуститься програма керування системою. Тут можна керувати користувачами, мережевими з'єднаннями, файловими системами, завантаженням та іншими параметрами Linux. Програма організована у вигляді меню. Навігація здійснюється за допомогою клавіш зі стрілками, Enterі Tab. Наприклад покажемо, як створити нового користувача та визначити його права. Переходимо в Config>User accounts>Normal>User accounts
    Тут показано список користувачів. Тиснемо двічі Tabдля переходу на кнопку Add, потім Enter. В графі Login nameвікна вводимо ім'я нового користувача. Інші поля можна поки залишити недоторканими. Після натискання кнопки Acceptвас двічі запитають пароль – і новий користувач створено! Я раджу працювати root-ом якнайменше, оскільки його помилка може викликати найфатальніші для системи наслідки, тоді як звичайний користувачможе зашкодити зазвичай лише власні файли.

    У linuxconf також зручно описувати файлові системи. Наприклад подивимося, як "навчити" Linux бачити розділ з Windows. Переходимо в Config>File systems>Access local drive. З'являється список файлових систем, описаних у файлі /etc/fstab. Щоб додати до нього новий запис, тиснемо Add. В графі Partitionпишемо /dev/hda1для 1-го розділу жорсткого диска, /dev/hda2- для другого тощо. Якщо хочете додати перший розділ другого жорсткогодиска - пишіть /dev/hdb1, другий - /dev/hdb2. В графі Typeтиснемо Ctrl+xі у списку вибираємо тип файлової системи (vfatдля Windows). В графі Mount pointнабираємо /mnt/win. Після натискання Acceptдайте відповідь позитивно на питання про створення нової точкимонтування. Тепер у каталозі /mntу вас з'явиться каталог win, в якому має бути вміст розділу Windows, але якщо ви в нього зайдете, виявите, що він порожній. Для того, щоб у ньому побачити свій Windows-розділ, необхідно в консолі дати команду mount /mnt/win. З інших програм налаштування ОС Linux також хотілося б відзначити setup, яка легко дозволяє налаштувати клавіатуру, мишу, звукову картута X Window.
    Працювати в консолі досить зручно, але для переміщення каталогами набагато приємніше використовувати Midnight Commander .Після виклику команди mcна екрані з'являється Norton-подібний файловий менеджер, Який за потужністю майже нічим не поступається DN або FAR. Особисто я також використовую mc для надання прав доступу до файлів і каталогів, оскільки користуватися ним мені набагато зручніше, ніж утилітою chown.

    Встановлення програм під Linux.
    Для Linux програми поставляються в основному у вигляді rpm-пакетів або .tar.gz-архівів. Встановлюється rpm-пакет командою rpm -i ім'я пакета
    Програма rpmсама створить всі необхідні додатки каталоги і покладе туди файли. Якщо у вас вже встановлено попередню версію програми, то в командному рядку треба дати ключ --forceдля заміни старої версії. rpm-Пакети містяться на CD з більшістю дистрибутивів Linux, а також на багатьох ftp-серверах в Інтернеті. Якщо розширення rpm-файла виглядає як .src.rpm, Це - вихідний код програми, і перед запуском його необхідно самостійно відкомпілювати (зазвичай такі пакети містять інструкцію про те, як це зробити). Для видалення пакета із системи дайте команду rpm -e ім'я пакета.
    Якщо вам дісталася програма у вигляді упакованого файлу з розширенням .tar.gz, то для його розпакування треба дати команду tar xzvf ім'я архіву. Далі необхідно знайти файл з інструкціями з установки програми, які можуть відрізнятися в кожному конкретному випадку.
    До речі, щоб переглянути вміст архівів, не розпаковуючи вручну, зручно користуватися Midnight Commander. При натисканні Enterна імені архіву ви входите до нього, як до звичайного каталогу.
    Ще мені хотілося б відзначити одну корисну програму - fsck. Якщо, наприклад, під час роботи в Linux у вас відключилося живлення або ви випадково натиснули reset:-), то при завантаженні ОС запитає пароль root, і ви потрапите в режим одного користувача. У ньому файлова система змонтована лише для читання та виконання. Щоб відновити пошкоджену файлову систему, дайте команду fsck -Aa. Після її закінчення дайте команду reboot,і після перезавантаження все має заробити, як раніше.
    Для перегляду документації на будь-яку команду Linuxу командному рядку треба зазначити: man ім'я_команди. Запуститься стандартний переглядач документації, який розповість вам про використання, ключі та файли конфігурації цієї команди. Якщо ж інформації виявиться недостатньо, то в каталозі /usr/docви знайдете повні керівництвадо більшості програм Linux.
    Закінчити огляд корисних програм, що запускаються з консолі, мені хотілося б утилітами обробки документів. Якщо ви в Лінуксі намагалися колись читати текстові файли, створені в DOS або Windows, то обов'язково мали зіткнутися з проблемою перекодування. Справа в тому, що в Linux використовується кодування KOI-8, відмінне від досовського або Windows. Для перетворення тексту використовується утиліта recode. Наприклад покажемо, як перетворити файл myfile.txt(кодування Windows) у KOI-8:
    recode -wk myfile.txt myfile.koi
    Після виконання цієї команди в поточному каталозібуде створено файл myfile.koi, який можна переглянути будь-яким текстовим редактором під Linux. Ключ -wkзадає параметри перетворення (Windows – KOI8). Можливі ще 14 ключів. Їх список з описом можна отримати, давши команду recodeбез параметрів.
    Також для нас цікавить програма mswordview. Вона призначена для перетворення doc-файлів (Microsoft Word) в HTML- формат, який підтримують багато редакторів у Linux. Тепер вам не потрібно буде тримати на жорсткому диску Widows та MS Office тільки через необхідність працювати з doc-Файлами. До речі, відомий безкоштовний офісний пакет StarOffice, що працює під Linux, також добре працює з файлами Microsoft Office.
    Тепер перейдемо до роботи з X Window. Якщо у вас за замовчуванням не запускаються X-и, то консолі дайте команду xinit. Якщо все налаштовано нормально, ви потрапите в графічну консоль. Далі необхідно дати команду для запуску віконного менеджера (наприклад, kdeдля KDE, або icewmдля IceWM). Ці дві операції можна замінити однією – скриптом startx. Якщо жоден із розглянутих способів не працює, значить, у вас, швидше за все, неправильно налаштовані X-и, і тоді можна спробувати це виправити програмою setup, Розглянутої вище.

    Існує чимало віконних менеджерів для Linux. Деякі з них претендують на подібність до Windows 95 або MacOS, але більшість все-таки має оригінальний інтерфейс. У цій статті я розповім про KDE- на мій погляд, це найкраще середовище для роботи. Я не хочу образити любителів GnomeАле на моїй машині він працює набагато повільніше, що мене не влаштовує.
    Після запуску KDE ви потрапляєте в середу, на перший погляд схожу на Windows. У лівому нижньому кутку є кнопка До, аналогічна кнопці Пуску відомій ОС. Внизу екрана є панель завдань, годинник, індикатор клавіатури. Ну, загалом, все як ТАМ. Але ця подібність інтерфейсів KDE і Windows досить скоро пройде. Ви побачите, як зручніше працювати з першим.
    Для початку я б порадив запустити скрипт KAppFinder(його ярлик – на робочому столі), який додасть у меню Особистіті програми, що не входять до складу KDE (наприклад, утиліти Gnome, Netscape Navigator).
    Щоб налаштувати зовнішній вигляд KDE, натисніть праву кнопку миші на порожньому просторі робочого столу та виберіть пункт Властивості дисплея. Тут можна буде змінити фон, зберігач екрана, шрифти та стилі відображення програм KDE.
    Ярлики робочому столі створюються аналогічно Windows 98, тобто. за допомогою пункту меню новийу спливаючому меню. У цій статті було розглянуто, як за допомогою команди mountпотрібно монтувати інші розділи жорсткого диска, попередньо описані у файлі /etc/fstabза допомогою програми linuxconf. У KDE на робочому столі можна створити ярлики, які відповідають цим розділам. Для цього клацанням правою кнопкоюмиші на порожньому полі робочого столу викликаємо спливаюче меню. Вибираємо Новий>Файл системного пристрою. Даємо йому назву (наприклад, "Windows"). Переходимо на вкладку Пристрій. Тут у графі Пристрійзадаємо розділ (наприклад, /dev/hda1), а у графі Точка монтування- каталог, який був вказаний у linuxconf (у цій статті - /mnt/win). Графу Файлова системазалишаємо без змін. Після натискання ОК на робочому столі з'явиться ярлик "Windows". Тепер для того, щоб потрапити на цей розділ, не треба буде щоразу давати команду mount. При подвійному клацанніна ярлику монтування відбудеться автоматично і ви побачите вміст Windows-розділу. До речі, на програмі, яка дозволяє переглядати каталоги, мені хотілося б зупинитися окремо. Називається вона kfmта запускається з меню Система>Менеджер файлів. За допомогою цієї програми ви можете не тільки керувати файлами (як у Провіднику від Microsoft), але й переглядати html-файли (що дуже зручно при читанні документації), а також "лазити" по ftp-архівам, як за власним жорсткому диску. Справа в тому, що в kfm вбудований досить потужний браузер, який підтримує різні кодування тексту, роботу через проксі, файли cookie і багато всякої всячини.

    Для нас також представляє інтерес додаток kpackage- Менеджер пакетів. Він дозволяє встановлювати та видаляти програми Linux, не вдаючись до консольної утиліти rpm, описаної вище. У лівій частині екрана знаходиться список встановлених пакетів, розділений за категоріями. При виборі одного з них у правій частині екрана відображається його опис.
    Тепер кілька слів про набір текстів. Редакторів для цього благородного заняття в Linux "неміряно". Деякі (наприклад, ed, vi) залишилися ще з тих часів, коли люди працювали за "тупими" терміналами і про X-ах могли тільки мріяти. Крім того, з Linux поставляється дуже потужний текстовий редактор EmacsОднак про нього можна написати не одну статтю. Зараз я розповім про двох редакторів під KDE - kedit("Простий текстовий редактор") та kwrite("Розширений редактор"). Редактором kedit я користуюсь постійно. Він невеликий, швидкий та зручний. Дозволяє перевіряти орфографію, вирівнювати текст, відкривати сторінки прямо з Інтернету та записувати їх назад. Ваше повідомлення можна відразу надіслати поштою. До речі, невелика порада: для того, щоб переглянути вміст файлу у Windows-кодуванні без використання утиліти recode, описаної вище, відкрийте цей файл у kedit, а потім у меню Установки>ШрифтВиберіть будь-який шрифт, назва якого закінчується на "1251". Після цього ви зможете побачити вміст файлу, але змінити його навряд чи вдасться.

    Редактор kwriteпризначений швидше для набору програмного коду, ніж для текстів. Він дозволяє розмічати синтаксис, робити закладки та багато іншого, що не під силу kedit. На мою думку, однією з його головних переваг є можливість відкату (аналог Undoу Windows).
    Насамкінець мені хотілося б відзначити програму konsole. Це графічний емулятор терміналу. Запускається з X-ів та функціонує як віртуальна консоль. У konsoleви можете вводити команди shellабо запустити Midnight Commander. Особисто я використовую konsoleдля швидкого запускуу KDE потрібних програм. Не знаю як вам, але мені набагато зручніше на клавіатурі набрати kmail, keditабо netscape, ніж клацати мишею по меню або ярликам. Тільки не забувайте після імені програми поставити знак "&" , інакше консоль буде заблокована доти, доки ви не вийдете з нього.

    Як показує читацький відгук, інтерес до рішень на базі Linux вельми великий, водночас рівень підготовки адміністраторів у цій галузі залишає бажати кращого. Свідчення тому, що нескінченно повторюються найпростіші питання в коментарях. Багато в чому це наслідок того, що наші інструкції можна виконати "дослівно" і отримати працюючий результат. Але є і Зворотній бікмедалі такий підхід не передбачає появи системних знань, залишаючи знання предмета на фрагментарному рівні.

    Так, крім практичних матеріалів, ми завжди намагаємося публікувати огляди, присвячені будь-якій технології в цілому, або робимо великі теоретичні відступи, щоб читач мав необхідний мінімум знань. Проте всі вони мають на увазі, що читач має базовими знаннямисистеми у якій працює.

    А як бути з тими, хто тільки робить свої перші кроки? На жаль, в IT-спільноті існує певний снобізм, мовляв, чого про це говорити, це й так усі знають, чи "гугл на допомогу", забуваючи, що кожен з нас колись був новачком і з містичним жахом дивився у чорний екран Linux-консолі абсолютно не розуміючи, куди він потрапив і що йому робити.

    В результаті новачок, зіткнувшись з першими труднощами, змушений йти шукати знання в іншому місці і добре, якщо таке місце вдасться швидко знайти. Тому ми вирішили випустити невеликий цикл матеріалів, у якому на доступному рівнівикласти основи адміністрування Linuxсистем, буквально пояснюючи на пальцях "загальновідомі речі", досвідчені користувачі можуть пропустити даний цикл, а можуть і прочитати, заразом оновивши свої знання.

    Отже, ви вирішили стати Linux адміністратором.

    Трохи перефразуємо Маяковського "я б у Linux-адміни пішов, нехай мене навчать", саме так справа в більшості випадків і. Є потреба, є бажання, є базовий набірзнань по роботі з системами Windows - все це знадобиться при роботі з системами Linux. Набагато гірше, якщо якась складова відсутня, тоді, напевно, варто задуматися про неправильний вибір професії.

    Відразу про те, що треба раз і назавжди забути. Це "релігійні війни" та "релігійний фанатизм". Однаково погано заперечувати можливості Linuх-систем, як і звеличувати їх, прагнучи перевести на Linux все, що потрібно і не потрібно. Запам'ятайте - операційна система - це інструмент, гарний спеціалістбере для кожного завдання найбільш підходящий, фанатик забиватиме цвяхи мікроскопом, тому що взяти в руки молоток йому "релігія не дозволяє".

    Навіть більше, сама по собі операційна система не має жодної цінності, це лише середовище для запуску і виконання деяких служб і сервісів. Без софту система мертва. Візьмемо для прикладу клон BeOS – Haiku, ну поставили, ну подивилися – прикольно… А далі що?

    Отже, ви вирішили стати... Насамперед будьте готові сприймати нове, зокрема новий підхіддо адміністрування, постаравшись на якийсь час забути про звички, що склалися. на довгий часвашим основним інструментом стане консоль.

    Для того, що звикли до графічних інструментів Windows-адміністратора, це може здатися складним. Але слід твердо засвоїти одну істину - консоль є єдиним повноцінним інструментом адміністрування Linux і зовсім не означає обмеженість можливостей або неповноцінність системи. Навіть навпаки, командний рядок дозволяє виконати багато завдань набагато швидше та простіше, ніж графічні інструменти адміністрування.

    Але ж існують графічні інструменти адміністрування, скаже інший читач, панелі там різні, або ж можна поставити графічну оболонку. Можна, але не треба. Чому? Уважно подивіться на схему нижче:

    Linux, що створювався за образом і подобою UNIX-систем, є повноцінною системою і без графічної оболонки, ми можемо запустити, закрити чи взагалі змінити графічну оболонку без будь-якого впливу працездатність системи і навіть її перезавантаження. Завершили сеанс Gnome, запустили KDE, а потім взагалі вийшли в консоль. Тому всі інструменти керування системою розроблені для використання у режимі командного рядка. А всі панелі та графічні інструменти є лише надбудовою над ними.

    Windows тривалий час розроблявся за іншою технологією, графічна оболонка була поставлена ​​основою системи і довгий час навіть виконувалася лише на рівні ядра (родина Win 9x). Тому всі інструменти адміністрування були спочатку графічними, а інструменти командного рядка швидше їх доповнювали, ніж замінювали. Будь-хто, хто займався відновленням Windows, знає, що можливості інструментів командного рядка там суттєво обмежені та призначені насамперед для відновлення системи, а не для її адміністрування.

    Ситуація стала змінюватися з виходом PowerShell та Core-версій Windows Server. Незважаючи на те, що сьогодні графічна оболонка продовжує відігравати істотну роль у Windows-системах, адміністратори отримали в руки альтернативний інструмент. консоль PowerShell, яка дозволяє повноцінно адмініструвати Windows у режимі командного рядка. При цьому можливості PowerShell відразу завоювали популярність серед фахівців, так як дозволяють виконувати багато завдань швидше і простіше, ніж графічні інструменти.

    А ще режим командного рядка дає необмежені можливості у створенні власних скриптів та сценаріїв, що дозволяють виконувати складні послідовності дій у автоматичному режиміабо за розкладом.

    Після цього, як нам здається, ви повинні подивитися на консоль Linux зовсім з іншого боку. Що стосується панелей та графічних інструментів, то тут є суттєві відмінності від Windows-систем. У Windows графічніінструменти є повноцінною альтернативою PowerShell. У Linux графічніінструменти є надбудовою над консоллю, за фактом використовуючи ті самі інструменти, але через додатковий прошарок. Тому ми категорично не рекомендуємо використовувати різного роду панелі та інші графічні інструменти, Крайній мірідо тих пір, поки ви не освоїте консоль. Після цього ви вже зможете самостійно вирішити, чи потрібна вам панель або ви здатні зробити все простіше та швидше через консоль.

    Захоплення панелями на ранньому етапі знайомства з системою призводить до того, що навички адміністрування системи будуть підмінені навичками роботи з панеллю, що непогано проблемами, коли панель з якоїсь причини виявиться недоступною, а працювати з системою треба. Це можна порівняти з тим, що людина, яка вчилась водінню автомобіля з механічною коробкою, без проблем пересяде на автомат, а людина спочатку вміє їздити тільки на автоматі, навряд чи зможе без додаткового навчання поїхати на машині з механікою.

    Якщо ви ще не передумали стати Linux-адміністратором, то поїдемо далі і розглянемо відмінності в архітектурі системи.

    Ядро та драйвера

    Основу будь-який операційної системискладає ядро. Існує декілька різних архітектурядра, Linux, як і переважна більшість UNIX систем, використовує монолітне ядро, Windows навпаки використовує концепцію мікроядра, хоча по-справжньому архітектура Windows мікроядерної не є, прийнято вважати, що Windows використовує гібридне ядро.

    Особливістю монолітного ядра і те, що це драйвера устаткування також є частиною ядра. Раніше, за зміни апаратної частини, ядро ​​треба було перезбирати, сьогодні монолітні ядра використовують модульну схему, тобто. динамічно дозволяють завантажувати необхідні модулі, які відповідають за той чи інший функціонал. Тобто. додавши в систему новий пристрій, ми повинні динамічно завантажити відповідний модуль ядра, а якщо такого модуля немає, робота з пристроєм виявиться неможливою. Як рішення ми можемо зібрати модуль самостійно, але при цьому модуль буде скомпілюваний під поточну версію ядра і за його зміни модуль потрібно буде перекомпілювати.

    У мікроядерній та гібридній архітектурах драйвера, хоч можуть і працювати на рівні ядра, його частиною не є і від версії ядра не залежать. Тому ми можемо без проблем оновлювати ядро ​​або використовувати один і той же драйвер для всіх версій систем із загальною структурою ядра. Наприклад, у Windows для всього сімейства сучасних ОС, від Windows Vistaдо Windows 8.1, часто використовується той самий драйвер.

    Це не означає, що Linux у цьому плані гірший, інша архітектура передбачає інші підходи. Практично це означає лише одне - до вибору обладнання для серверів треба ставитися уважніше, намагаючись, щоб усі основні пристрої підтримувалися ядром вашого дистрибутива. Особливо це стосується мережевих карток. Буде дуже неприємно, якщо після кожного оновлення ядра вам доведеться бігати в серверну, підключати до сервера монітор та клавіатуру та заново збирати модуль ядра.

    По суті такого поняття як драйвер в Linux системах не існує. Устаткування чи підтримується ядром, чи ні. Безперечний плюс монолітного ядра - воно самодостатнє. Якщо все обладнання підтримується - поставив та забув, саме час згадати ситуацію, коли під Windows немає драйвера мережевої картита диск загублений.

    Файлова система

    Ми не торкатимемося конкретних файлових систем, тут проблем виникнути не повинно, якщо адміністратор працював з Windows системами, то що таке файлова система і чим FAT відрізняється від NTFS він знає, тому розібратися в різниці між ext3, ext4 і, скажімо, ReiserFS для нього особливих труднощів не складе. А поговоримо про фундаментальні відмінності. На відміну від Windows, файлова система Linuх є ієрархічною. Вона починається від кореня, що позначається знаком / (сліш), і має деревоподібну структуру. При цьому абсолютно не має значення, що окремі частини файлової системи можуть бути на інших розділах або взагалі фізичних дисках.

    Розглянемо ще одну схему.

    У Windows кожен розділ має власну файлову систему і позначає його букву. Усі шляхи до файлів та папок починаються з літери, тобто. від кореня розділу. Так, якщо у нас на першому фізичному диску, на другому логічному розділі була папка DATA, то шлях до неї відповідно буде як D:\DATA, якщо ми захочемо перенести її на другий жорсткийдиск, її нехай зміниться на E:\DATA. У ряді випадків це дуже незручно, тому що шлях треба змінити у всіх місцях її використання і навіть існують відповідні утиліти.

    У Linux підхід кардинально інший. Саме час познайомитись із терміном точка монтування, Що означає місце файлової системи, куди підключається пристрій зберігання даних. Наприклад, ми хочемо винести домашні каталоги користувачів на окремий розділ як на схемі вище, для цього нам потрібно змонтувати другий логічний розділпершого фізичного диска sda2в /home. Після чого перенести туди всі дані користувача. Для системи та програм це станеться абсолютно прозоро, вони як використали абсолютний шлях, скажімо /home/andrey/data, так і використовуватимуть його. Додали ще один диск і хочемо винести туди директорію /var? Немає проблем, що зупиняємо використовуючі каталог служби, монтуємо sdb1в /varта переносимо дані, запускаємо служби.

    Все є файл

    Ще один основний принцип, успадкований від UNIX-систем. У Linux все є файл: пристрої, диски, сокети і т.д., наприклад, відкривши /var/runми побачимо pid-файли, що відповідають кожній запущеній службів системі, а в /devфайли кожного підключеного до системи пристрою:

    Що дає? Не будемо вдаватися до подробиць, а розберемо кілька простих прикладів. Скажімо, потрібно створити образ оптичного диска. У Windows нам знадобиться для цього спеціалізоване ПЗ, у Linuх все простіше, CD-ROM - це блоковий пристрій, але в той же час - це файл, файл блокового пристрою. Беремо відповідний інструмент і копіюємо вміст файлу пристрою файл ISOобразу:

    Dd if=/dev/cdrom of=/home/andrey/image.iso

    Хочемо замінити жорсткий диск? Немає нічого простішого, копіюємо вміст одного файлу блокового пристрою у файл іншого блокового пристрою:

    Dd if=/dev/sda of=/dev/sdb

    І не потрібно жодних Partition Magic.

    Інша ситуація, яке ПЗ наполегливо шукає бібліотеку lib-2-0-1.so, а у нас є сумісна з нею, але більш нова, lib-2-1-5.so, як бути? Створюємо символічне посилання на lib-2-1-5.so з ім'ям lib-2-0-1.so, і все буде працювати. Тому що все є файл і символічне посиланнятеж тип файлу. А тепер спробуйте підсунути Windows додатком lib-2-0-1.lnk замість lib-2-1-5.dll...

    Ifconfig

    виведе на екран відомості про мережні адаптери системи:

    А тепер згадуємо, що все є файл, у тому числі і пристрій відображення (екран), тому просто перенаправимо стандартний потік виведення замість екрана в потрібний файл:

    Ifconfig > ~/123.txt

    Після чого виведення команди буде збережено у файл 123.txt у кореневій директорії користувача:

    Потоки та конвеєр

    У минулому прикладі ми торкнулися стандартного потоку висновку. У Linux існують стандартні для всіх процесів потоки введення-виведення даних stdin, stdoutта потік виведення помилок stderr. Що це означає? Як мінімум, те, що процес обміну даними між різними процесами стандартизований. Це дозволяє створювати конвеєри, коли стандартний потік виведення однієї команди передається стандартному потокувведення іншого. Наприклад, ми хочемо переглянути список встановлених пакетів у системі, зокрема пакети squid. Для цієї мети є команда:

    Ееее... Це що таке і як тут щось зрозуміти? На екрані швидко промайнули відомості про всі встановлені в системі пакети і все, що ми можемо бачити, це "хвіст" цього висновку:

    Але нам і не потрібен весь висновок цієї команди, нас цікавлять виключно пакети squid. Тому направимо виведення цієї команди на введення іншої, яка вже відбере та покаже те, що нам потрібно:

    Dpkg-l | grep squid

    Оце зовсім інша справа!

    Причому конвеєр може бути як завгодно довгим, результат роботи однієї команди можна передавати другий, від другої до третьої і т.д. Ще один приклад із життя. Вам треба отримати всі рядки вашого конфігураційного файлу squid, але без коментарів та порожніх рядків, щоб, наприклад, викласти на форумі або надіслати другу. Можна, звичайно, скопіювати все, але навряд чи хтось захоче вам допомагати, прокручуючи полотно стандартного файлу squid.conf, більша частина якого коментарі та приклади. Робимо простіше:

    Cat /etc/squid3/squid.conf | grep -v "^#" | sed "/^$/d" > ~/mysquid.conf

    І ось що в нас вийшло:

    Просто і зрозуміло, всі налаштування як на долоні. Це стало можливим в результаті використання конвеєра трьох команд, перша вивела в потік вміст файлу, другий відібрав усі рядки окрім коментарів, а третій видалив порожні, результат ми направили у файл.

    Літери великі, букви маленькі

    Linux, як і UNIX, є реєстрозалежною системою. І це треба пам'ятати! Тому що, на відміну від Windows, myfile.txt, Myfile.txtі myfile.TXT- це три різних файлів. З метою сумісності з іншими системами не варто цим зловживати та зберігати файли, ім'я яких відрізняється лише регістром, а гарним тоном вважається використання в іменах лише малих літер.

    Розширення та типи файлів

    У Windows системахтип файлу визначається його розширенням, якщо ми перейменуємо exe-файлв jpg, то він не запуститься, і система намагатиметься обробити його як картинку. У Linux тип файлу визначається за його вмістом і розширення використовується виключно для сумісності з іншими системами або зручності користувача. Можливість виконання файлу забезпечується встановленням відповідного атрибута. Так у Windows щоб зробити скрипт виконуваним, треба було змінити розширення з txtна bat, У Linux для цього потрібно зробити файл виконуваним. Нерозуміння цього моменту призводить до ситуацій, коли адміністратор-початківець не розуміє, чому його скрипт myscript.shне виконується. Насправді розширення .shпотрібно тільки для зручності, щоб одразу було ясно, це скрипт Bash Shell, а щоб він працював, йому треба поставити атрибут виконуваного, а називатися він може як завгодно, хоч myscript.pupkin-vasya.

    Соромлюся запитати...

    Дозвольте, скаже інший читач, адже це скільки всього треба пам'ятати: синтаксис команд, ключі, опції і т.д., і т.п. Тут потрібно довідник купувати або завжди інтернет під рукою тримати... Зовсім ні, достатньо пам'ятати назви команд, це якраз нескладно, за традиціями, що склалися в UNIX, командам дають короткі і зручні імена. А решту можна запитати у системи. Всупереч поширеній думці, Linux системичудово документовані. Переглянути синтаксис та ключі будь-якої команди можна запустивши її з ключем --help, а оскільки описи зазвичай не поміщаються на один екран, слід перенаправити висновок довідки утиліті moreяка виведе інформацію поекранно. Припустимо, нас цікавить команда grep:

    Grep -help | more

    Більш детальну інформацію можна отримати за допомогою команди man:

    Man grep

    На жаль, інформація англійською, але знання технічної англійської, хоча б на рівні "читаю зі словником" необхідна вимогадо системному адміністратору. Вам нічого не нагадує останній скріншот? Вірно, OpenNET.

    Не применшуючи значення цього ресурсу, можна сказати, що взявши на озброєння команду manі базові знання в англійській, OpenNET ви будете відвідувати набагато рідше.

    Висновок

    Сподіваємося, що після прочитання цієї статті початківці адміністратори будуть краще собі уявляти пристрій Linux-систем та їх принципові відмінностівід звичного їм Windows. Це дозволить надалі правильно інтерпретувати отримувану інформацію та складати з неї цілісну картину функціонування системи, яка перестане бути "чорною скринькою", а команди - "китайською грамотою".

    Також хочемо звернути увагу, що в наших прикладах ми використовували лише стандартні інструменти, що ще раз показує все багатство інструментів адміністрування, незважаючи на те, що вони працюють тільки в командному рядку. Повернемося до останнього прикладу - виведення конфігу squid, а тепер подумайте, яким чином це можна було б зробити за допомогою графічних інструментів і скільки часу це зайняло б?

    Не потрібно боятися командного рядка, Linux надає в руки адміністратора дуже потужний набір інструментів, який дозволяє успішно вирішувати всі завдання, що виникають без залучення сторонніх коштів. Коли ви освоїте хоч частину цих можливостей, то Linuх перестане здаватися вам складним, а консоль похмурою, навпаки, навіть маючи графічну оболонку ви запускатимете термінал, поринаючи в звичне і зрозуміле середовище, розуміючи, що системою керуєте саме ви і робите саме те, що хочете, а не що, що задумали розробники чергової панелі.

    • Теги:

    Please enable JavaScript to view the