Ви, можливо, думаєте, що ніколи не мали справи з Linux. Але якщо ви користувалися телефоном на Android чи комп’ютером Mac – ви весь цей час стояли на його близьких родичах. Під їхніми привітними екранами живе та сама родина внутрішніх механізмів – ті самі уявлення про файли, користувачів і команди. Вивчити трохи Linux – це не вивчити щось чуже; це роздивитися форму землі, якою ви й так уже ходите.
І добра новина, справді заспокійлива новина, така: вам не потрібно досконало опановувати Linux. Для більшості сучасних справ – тримати сервер, розгорнути сайт, дозволити штучному інтелектові допомогти вам щось збудувати – потрібна лише невелика, дружня жменька ідей і команд. Саме про них ця сторінка.
Одна велика ідея: користувачі й дозволи
Уявіть спільне помешкання. У кожного, хто там живе, є своя кімната, свої речі й ключ від власних дверей. У своїй кімнаті ви робите, що заманеться, але не можете просто зайти до сусідової кімнати й попереставляти там речі на полицях – у вас немає ключа.
Комп’ютер під Linux – це рівно таке помешкання. Кожен файл комусь належить – користувачеві – і кожен файл несе на собі невеличкі правила, які називають дозволами: кому можна його читати, змінювати чи запускати. Ось чому іноді комп’ютер увічливо повідомляє вам «так не можна» – ви тягнетеся до дверей, ключа від яких у вас немає. Він не зламався; він обережний.
А що таке «sudo»? Головний ключ.
Іноді вам справді треба зробити щось, що стосується всього дому: встановити програму для
всіх, змінити спільне налаштування. Для таких моментів існує головний ключ, і звати його
sudo. Ви ставите його перед командою, щоб сказати «зроби це з повними правами»:
sudo somethingЗазвичай він запитає ваш пароль, бо головний ключ вартий миті роздумів. Лагідна мудрість
тут така: тягніться по sudo лише тоді, коли команді це справді потрібно. Більшість
щоденної роботи спокійно відбувається у вашій власній кімнаті, без жодного головного
ключа.
Невелика жменька команд, які вас несуть
Командний рядок – це просто місце, де ви набираєте вказівку й натискаєте Enter, замість того щоб клацати мишкою. Спершу він виглядає голим, але це лише розмова: ви кажете коротке слово – комп’ютер робить справу. Ось ті слова, що проведуть вас крізь більшість днів; кожне з них – одне маленьке слово:
ls– list, «перелічи»: покажи, що лежить у цій теці.cd– change directory, «зміни теку»: перенеси мене в теку.cat– покажи вміст файла.mkdir– створи нову теку.nano– відкрий простий редактор, щоб змінити файл.
ls і cd – ті дві, якими ви користуватиметеся найчастіше: саме ними ви ходите. Спробуйте
просто зараз найпростішу й найбезпечнішу – вона лише перелічує те, що навколо вас, і нічого
не змінює:
ls
Далі cd foldername заводить вас усередину теки, а cd .. виводить назад. Ось вам майже
вся навігація, отут-таки.
Ще кілька – на випадок, коли знадобляться, і серед них перлина для прибирання
du– disk usage, «використання диска»: скільки місця це займає?ncdu– привітніша, наочна версіяdu, чудова для прибирання.chown– змінити, кому належить файл.chmod– змінити дозволи файла (його правила читання, запису й запуску).
ncdu заслуговує на окрему згадку: коли диск загадковим чином заповнений, ви
запускаєте її – і вона малює вам ясну картину, якою можна ходити, показуючи, що з’їдає
ваше місце, від найбільшого до найменшого. Вона врятувала не один вечір. (Можливо, її
доведеться один раз встановити; вона маленька й того варта.) Щойно її встановлено, одне
це слово відкриває ту картину:
ncduchown і chmod – це просто інструменти для зміни тієї власності й тих дозволів, про
які ми говорили вище, тобто налаштувань на кшталт «у кого ключ». Ви зустрінете їх час від
часу, найчастіше тоді, коли щось каже «доступ заборонено» і треба поправити, кому можна
ввійти.
Чому дрібка цього відмикає так багато
Ось у чому тиха винагорода. Ті самі ідеї – користувачі, дозволи й той невеликий словничок команд – усюди однакові. Linux на далекому сервері, Термінал на Mac, нутрощі телефона на Android: усі вони говорять цією спільною мовою. Вивчіть її потрохи на власному ноутбуку, маленькими щоденними дозами – і вона стане пам’яттю пальців, а тоді перенесеться, незмінна, на кожен сервер, якого ви колись торкнетеся.
Це ще й двері до кількох більших інструментів, кожен з яких вартий окремої розповіді, – під’єднання до інших комп’ютерів, запуск маленьких самодостатніх машин, встановлення частин для проєкту. Усі вони спираються просто на ту землю, на якій ви щойно постояли.
Отже, одним подихом
Linux – це надійний фундамент під більшістю серверів, а також під вашим Mac і Android, – і
вам потрібна з нього зовсім дрібка: думка про те, що файли належать користувачам і мають
дозволи, зрідка – головний ключ sudo, та невеликий, дружній набір набраних команд на
кшталт ls і cd, які, щойно опиняться у ваших пальцях, працюють однаково всюди, куди б
ви не пішли.