Что можно делать на linux
🐧 Несколько интересных вещей, которые можно сделать с Linux
Linux – это операционная система с открытым исходным кодом, которая позволяет запускать практически все основные доступные языки веб-разработки.
Вам не нужно платить за установку программного обеспечения, и вы можете найти все в Интернете.
Его можно установить на минимальном оборудовании, и он более стабилен, чем Windows.
Если вы новичок в операционной системе Linux, вы должны знать основные возможности Linux.
Вы можете делать несколько интересных вещей на Linux, чего не можете сделать на Windows.
В этом руководстве мы покажем вам несколько замечательных вещей, которые вы можете делать с Linux.
1) Используйте терминал Linux
Если вы действительно хотите изучить Linux, вы должны знать возможности терминала Linux.
По сравнению с другими операционными системами, Linux дает вам ощущение, что это ваша система и что она вам принадлежит.
Вот несколько основных команд, которые вам следует знать:
2) Как установить последние обновления
После установки Linux рекомендуется обновить системное программное обеспечение до последней версии.
Это убережет вас от ненужных ошибок, добавит новые функции безопасности и улучшит производительность системы.
Вы можете выполнить обновление программного обеспечения с помощью утилиты Software & Updates в Ubuntu:
3) Как добавить дополнительные репозитории
По умолчанию Linux поставляется со встроенными репозиториями, которые можно использовать для установки различного программного обеспечения в вашей системе.
В некоторых случаях необходимое программное обеспечение не включено во встроенный репозиторий. Затем вам нужно будет добавить дополнительные партнерские репозитории для установки дополнительных драйверов и программного обеспечения.
Некоторые репозитории отключены в некоторых версиях Linux, поэтому вам нужно будет включить их в разделе Software & Updates.
Вы можете найти их на следующем экране:
4) Команда очистки системы
Регулярная очистка вашей системы от ненужных файлов и нежелательного кеша необходима для бесперебойной работы вашей системы.
Чтобы очистить частичные пакеты, выполните в терминале следующую команду:
Debian, ubuntu, Mint:
Чтобы очистить кеш apt, выполните следующую команду:
Чтобы удалить неиспользуемые пакеты, выполните следующую команду:
5 причин, по которым я люблю программировать в Linux
Linux — это отличная платформа для занятий программированием. На нашей стороне — логичность, высокая эффективность, лёгкость работы с исходным кодом.
В 2021 году Linux выглядит как никогда привлекательно. Я собираюсь написать материалы, в которых расскажу о 21 способе использования Linux. А в этой статье я хочу поговорить о том, почему так много программистов выбирают Linux.
Когда я начал пользоваться Linux, я работал в сфере кинопроизводства. Я выбрал Linux из-за того, что эта ОС замечательно поддерживала работу с мультимедийными данными. Мы выяснили, что обычные коммерческие приложения для редактирования видео не способны обрабатывать большинство тех записей, которые мы извлекали из практически любых устройств, оснащённых камерами. Тогда я не знал о том, что Linux имеет репутацию операционной системы, рассчитанной на серверы и на программистов. Чем больше задач я решал с помощью Linux, тем сильнее мне хотелось научиться управлять всеми свойствами этой ОС. В итоге я выяснил, что компьютер показывает всю свою мощь тогда, когда его пользователь способен «говорить» на его языке. Через несколько лет после перехода на Linux я уже писал скрипты для автоматического редактирования видео, для объединения аудиофайлов, для пакетного редактирования фотографий, и для решения любых задач, которые мне удавалось сформулировать, и для которых удавалось найти решение. Мне не потребовалось много времени на то, чтобы понять, почему программисты любят Linux. Но именно Linux научила меня любить программирование.
Оказалось, что Linux — это отличная платформа для программистов, и для начинающих, и для опытных. Нельзя сказать, что Linux необходима для того, чтобы писать программы. Успешные разработчики пользуются самыми разными платформами. Но у Linux есть много такого, что она может предложить разработчикам. Кое о чём из этого я и хочу рассказать.
1. Логичность Linux
Linux построена вокруг идеи автоматизации. Основные приложения Linux совершенно осознанно сделаны такими, чтобы их можно было бы, как минимум, запустить из терминала, указав дополнительные опции. А часто их можно и полностью использовать тоже из терминала. Эту идею иногда ошибочно считают чем-то вроде примитивной модели организации вычислений, так как существует распространённое (и неправильное) мнение о том, что писать программы, работающие из терминала, это значит — прилагать абсолютный минимума усилий к тому, чтобы получить работающее приложение. Это — печальный результат непонимания того, как работает программный код, но многие из нас периодически страдают таким вот непониманием. Мы думаем, что больше — это всегда лучше, поэтому приложение, содержащее 1000 строк кода должно быть в 100 раз лучше, чем приложение, содержащее 10 строк кода. Так? Но правда заключается в том, что, при прочих равных условиях, лучше выбрать приложение, отличающееся большей гибкостью, при этом то, из скольких строк кода оно состоит, значения не имеет.
В Linux решение некоей задачи вручную может занять, например, час. То же самое можно, воспользовавшись подходящими инструментами командной строки, сделать буквально за минуту, а возможно — и за меньшее время, если прибегнуть к GNU Parallel. Для того чтобы к этому привыкнуть, нужно определённым образом изменить взгляд на то, как именно работают компьютеры, нужно научиться мыслить не так, как прежде. Например, если задача заключается в том, чтобы добавить к 30 PDF-файлам обложки, можно решить, что приемлемая последовательность действий будет выглядеть так:
После того, как удастся убедиться в работоспособности команды при обработке одного документа, надо будет вложить некоторое время в изучение утилит для обработки наборов данных. В ходе изучения можно обнаружить команду parallel :
Тут представлен подход к размышлениям над задачами, несколько отличающийся от обычного, так как «код», который мы пишем, обрабатывает данные не так, как мы привыкли. Обычно мы ограничены представлениями о последовательной ручной обработке данных. Но выход за границы старых представлений важен для того чтобы позже писать соответствующий код. А побочным полезным эффектом такого «выхода» является получение возможности писать более эффективные программы, чем раньше.
2. Возможности по управлению связями кода
Неважно, для какой платформы вы программируете, вводя в редакторе код. Всё сводится к тому, что программист плетёт сложную сеть из невидимых связей между множеством различных файлов. Практически во всех случаях, за исключением каких-то совсем уж экзотических, код, чтобы стать полноценной программой, обращается к заголовочным файлам и использует внешние библиотеки. Это происходит на всех платформах, но Linux подталкивает программиста к тому, чтобы он сам бы во всём этом разобрался, а не доверял бы заботу обо всём этом исключительно инструментам разработчика для некоей платформы.
Надо сказать, что нет ничего плохого в том, чтобы доверять инструментам разработчика решение задач по нахождению библиотек и по включению в состав программ внешних файлов. Это, наоборот, полезная возможность, наличие которой должно вызывать у программиста лишь чувство благодарности. Но если программист совершенно ничего не понимает в том, что происходит, ему будет гораздо сложнее взять управление всем этим на себя в том случае, если инструменты разработчика просто не будут знать о том, как справиться с некими проблемами.
Это имеет отношение не только к Linux, но и к другим платформам. В Linux можно писать код, который планируется запускать и в Linux, и в других операционных системах. Понимание того, как именно компилируется код, помогает программисту в достижении его целей.
Надо признать, подобным вещам нельзя научиться, просто пользуясь Linux. Можно счастливо писать код в хорошей IDE и никогда даже не задумываться о том, какая версия некоей библиотеки была установлена, или о том, где именно находятся какие-то заголовочные файлы. Но Linux ничего не скрывает от программиста. Очень просто углубиться в недра системы, найти в ней то, что нужно, и прочитать соответствующий код.
3. Удобство работы с существующим кодом
Полезно знать о том, где находятся заголовочные файлы и библиотеки, но возможность видеть их код — это ещё один пример дополнительного преимущества программирования в Linux. В Linux можно посмотреть код практически всего, о чём можно подумать (за исключением приложений, работающих на Linux, но не являющихся опенсорсными). Невозможно переоценить полезность этой особенности Linux. По мере того, как некто всё лучше и лучше осваивает программирование в целом, или разбирается с чем-то новым для себя, он может многое узнать, читая существующий код в своей Linux-системе. Многие программисты научились делать своё дело, читая опенсорсный код других людей.
При работе с системами, код которых закрыт, можно найти документацию, ориентированную на разработчиков и содержащую примеры кода. Это хорошо, документация — это важно, но это не сравнить с возможностью обнаружить именно тот функционал, который планируется реализовать, и с возможностью найти исходный код, демонстрирующий то, как это сделано в приложении, которым вы пользуетесь каждый день.
4. Прямой доступ к периферии
А вот на других платформах это не так. Подключение к системам, находящимся за пределами ОС — это всегда лабиринт, построенный из SDK, библиотек с закрытым кодом, а иногда — и из соглашений о конфиденциальности. Ситуация, конечно, не везде одинакова, она зависит от того, для какой именно платформы пишет код программист, но другим системам сложно поспорить с простотой и предсказуемостью интерфейса Linux.
5. Хорошо продуманные абстракции
Linux, в то же время, даёт нам и разумный набор слоёв абстракции, применимых в ситуациях, когда прямой доступ к чему либо или ручное написание некоего кода может вылиться в больший объём работы, чем тот, к которому готов программист. Много удобных инструментов можно найти в Qt и Java, есть целые стеки вспомогательных технологий, вроде Pulse Audio, Pipewire и gstreamer. Linux стремится к тому, чтобы её пользователи могли бы заниматься программированием, и не скрывает этого.
Итоги
Есть гораздо больше причин того, что программировать в Linux — это удовольствие. Некоторые из них представляют собой широкомасштабные концепции, некоторые — мельчайшие детали, которые избавили меня от многих часов тяжких поисков решения неких задач. Linux — это место, в котором приятно находиться, при этом неважно — на какой именно платформе будет запускаться код, который пишут в Linux. Кем бы вы ни были — человеком который только начал осваивать дело написания программ, или опытным кодером, который ищет себе новый цифровой дом, нет лучше места для программирования, чем Linux.
Какой ОС вы пользуетесь при написании программ?
20 советов для линукс-гиков
Что отличает обычного пользователя Линукса от профессионала? Ответ прост: это — годы, проведенные за изучением хитростей и приемов, которые позволяют решать не быстрые задачи в одно мгновение. Если вы хотите увеличить скорость работы без долгого набивания шишек в консоли, подобрано 20 легких для изучения приемов. Они помогут сделать вашу работу эффективной и выжать максимум возможностей из вашего компьютера.
1. Список не ваших процессов
Представьте ситуацию: вы уже приготовились к игре в Counter-Strike с вашими коллегами в пятничный вечер, но одно — ваш комп не слабо подтормаживает, а указатель мыши показывает вам слайд-шоу. Это может быть кто-то из тех пользователей, которые «крадут» драгоценное время своими научными экспериментами, веб-серверами и другими гиковскими штучками.
Нет проблем, получим список всех процессов, которые запустили не вы:
2. Замена текста в файлах
Сложность: средняя
Приложение: find/Perl
Если надо заменить текст не в одном файле, то есть несколько способов. Для того, чтобы заменить текст «Windows» на «Linux» во всех файлах в текущей директории, название которой начинается с «test», введите в консоли:
Сохраните немало времени и получите статус гуру Линкуса.
3. Исправить консоль
Сложность: легкая
Приложение: bash
Если использовать команду less или cat для просмотра файла, в конце которого — бинарные данные, то можно легко испортить консоль. Потому что в бинарных данных могут попасться любые сочетания управляющих кодов: компьютер будет издавать звуки «бип-бип», появятся прикольные символы, странные цветовые сочетания. В конце концов, шрифт изменится на какие-то иероглифы. Bash, очевидно, продолжает работать, но вы ничего не можете прочитать и не сделать. Просто наберите в консоли команду инициализации:
и все будет хорошо.
4. Создать keywords в Mozill’е
Сложность: легкая
Приложение: Firefox/Mozilla
Полезной особенностью Konqueror’а является возможность, набрав в адресной строке «gg onion», прогуглить слово onion. Тоже самое можно сделать в Firefox’е: сперва найдите меню Bookmarks>Manage Bookmarks и выберите Add a New Bookmark. Добавьте этот URL:
Выберите эту запись в редакторе закладок и откройте ее свойства. Введите в поле keyword gg — и все. Вместо %s будет подставлен текст после gg. Этот прием можно применить к другим сайтам, которые полагаются на данные в URL’е.
5. Запуск множественных X-сессий
Сложность: простая
Приложение: Х
6. Ускорение серфинга
Сложность: простая
Приложение: KDE
В KDE есть малоизвестная, но полезная опция для ускорения веб-серфинга. Запустите KDE Control Center и выберите System > KDE performanсe. Вы можете включить предварительную загрузку Konqueror’а. То есть браузер загрузится при запуске системы в фоновом режиме. Когда он потребуется, то появится практически мгновенно. Совет: прочитайте еще 20 подсказок для ускорения KDE
7. Легкое резервное копирование
Сложность: простая
Приложение: Backups
Если надо сделать резервную копию папки и скопировать только изменившиеся файлы, то можно использовать для этого rsync (вам нужен аккаунт на удаленном компьютере):
Эта команда делает резервную копию всех файлов из /home/jono/backup/ в /home/jono/importantfiles/ на компьютере с IP-адресом 192.168.0.2
8. Поддерживать ваши часы в актуальном состоянии
Сложность: простая
Приложение: NTP
Если кажется, что ваши часы спешат или отстают, то используйте NTP для гарантированной синхронизации с очень высокой точностью. Необходимо установить NTP-пакет и потом произвести синхронизацию с сервером:
Список подходящих NTP-серверов можно найти на http://support.ntp.org/bin/view/Servers/NTPPoolServers. Добавьте эту команду в автозагрузку — и ваши часы всегда будут точными.
9. Поиск самых больших файлов
Сложность: низкая
Приложение: оболочка
Можно столкнуться с проблемой, когда надо удалить несколько больших файлов. Их можно найти в текущей директории с помощью команды:
10. Горячие клавиши Nautilus’а
Сложность: низкая
Приложение: Nautilus
Хотя в наши дни большинство файловых менеджеров должны поддерживать управление мышью, иногда полезно использовать клавиатуру. У Nautilus’а есть несколько сочетаний, которые позволяют мгновенно перемещаться между файлами:
— Открыть директорию — Ctrl+L
— Подняться на уровень выше — Ctrl+Up
— Перемещение внутри директории — стрелки
11. Оптимизация баз данных
Сложность: низкая
Приложение: MySQL
При любом изменении структуры базы данных или удалении больших объемов данных, файлы могут стать фрагментированными, что приводит к потере производительности. Просто запомните простое правило: запускать оптимизатор базы при любом изменении базы:
Вы можете заметить, что следует регулярно оптимизировать базы при использовании полей с типом VARCHAR: эти поля с переменной длиной особенно подвержены фрагментации.
12. Быстрые письма
Сложность: низкая
Приложение: KMail
Не можете позволить себе потерять 3 секунды на поиски вашего почтового клиента? Не устали от поиска указателя мыши среди всей красивой суматохи на вашем рабочем столе? Чтобы вы не делали в KDE, вас отделяет всего несколько нажатий клавиш от отправки письма. Нажмите Alt+F2 для открытия диалога ‘Run command’. Наберите:
Нажмите Enter — и KMail автоматически откроется. Вам даже необязательно набирать полный почтовый адрес. Этот трюк работает также и с Интернет-адресами: просто наберите www.hab.ru для запуска Konqueror’а.
13. Распараллеливание сборки
Сложность: низкая
Приложение: GCC
14. Увеличение время работы батареи
Сложность: средняя
Приложение: hdparm
Вы вероятно сталкивались с hdparm для тюнинга жесткого диска, но это также может увелитчить время работы батареи вашего ноутбука и снизить шум вращающихся деталей.
Первая команда заставляет перейти в режим ожидания, вторая — в спящий режим, а последняя выставляет время автоматического выключения. Числовой параметр кратен 5.
15. Управление скоростью беспроводного подключения
Сложность: средняя
Приложение: iwconfig
Скорость, на которой радио-приемник и передатчик могут взаимодействовать, зависит от силы сигнала. Для того, чтобы поддерживать связь при ухудшении сигнала, данные должны передаваться с меньшей скоростью. Обычно, радио пытается вычислить доступный сигнал и автоматически выбирает наибольшую скорость передачи.
В областях интерференции с недостаточным уровнем сигнала, пакеты могут самопроизвольно пропадать, при этом приемник и передатчик постоянно регулируют скорость. Если нельзя добавить антенны или переместить ваше оборудование для усиления сигнала, то надо уменьшить скорость синхронизации. Это означает меньшее количество переподключений и может быть значительно быстрей, чем триггерное (flip-flop) соединение. У каждой сетевой карты свой способ установки соединения. В Линуксе ограничение скорости можно задать через iwconfig:
iwconfig eth0 rate 2M
iwconfig eth0 rate 5.5M auto
iwconfig eth0 rate auto
Сетевые карты могут работать на больших расстояниях при скорости 1Mbps, чем при скорости 11Mbps. Разница между 1Mbps и 11Mbps — 12 децибел для карт Orinocco, т.е., теоретически, можно увеличить максимальную дистанцию работы в 4 раза, уменьшив скорость передачи.
16. Список откртых портов
Сложность: средняя
Приложение: nestat
Получить список открытых портов в состоянии Listen очень просто в Линуксе:
В этом примере видно, что процесс с PID’ом 698 — процесс интерпретатора Перл, который слушает порт 5280. Если вы не рут в системе, то система не покажет пути к программам.
17. Увеличение скорости работы жестких дисков
Сложность: высокая
Приложение: hdparm
hdarm можно использовать для повышения производительности. Будьте осторожны: изменение этих настроек может привести к потере данных, поэтому предварительно сделайте резервную копию данных. Тестирование скорости можно произвести следующей команды:
/dev/sda:
IO_support = 0 (default)
readonly = 0 (off)
readahead = 256 (on)
geometry = 4865/255/63, sectors = 78165360, start = 0
В большинстве дистрибутивов выбраны безопасные настройки, подходящие для большинства жестких дисков. Для того, чтобы увеличить скорость, можно включить DMA-режим. Большинство компьютеров поддерживают 3 режим — 32-битная передача данных, что увеличивает скорость почти в два раза:
18. Удаленный доступ к вашим программ.
Сложность: низкая
Приложение: X
Если необходим удаленный доступ к графическим приложениям, то это можно сделать с помощью SSH. Во-первых, надо включить эту опцию в /etc/ssh/sshd_config:
19. Более удобные маны
Сложность: низкая
Приложение: man
При чтении манов полезно использовать поиск: просто нажмите клавишу / и набирайте нужное слово.
20. Диаграмма взаимосвязи пакетов
Сложность: низкая
Приложение: Debian
Наиболее важная часть Debian’а — возможность устанавливать пакеты вместе со всеми зависимостями. Если вы хотите увидеть все взаимосвязи между пакетами, можно использовать пакет Graphiz из несвободного (non-free) репозитория Debian:
apt-cache dotty > debain.dot
21. Принудительное отключение занятых устройств
Сложность: низкая
Приложение: bash
Вам наверняка сталкивались с ситуацией, когда надо отмаунтить диск, но система при попытке отключения сообщает о том, что он занят. Одной командой можно узнать, какое приложение использует его:
Она показывает PID и команду запуска любого процесса, использующего /mnt/windows.
22. Конвертирование кодировок текстовых файлов
Сложность: низкая
Приложение: recode
recode — маленькая утилита, которая упростит перенос текстовых файлов, созданных на разных платформах. Одна из главных причин — различие переносов строк. В некоторых системах используется символ переноса строки, в других — символ возврата каретки, в остальных — оба способа. В итоге, если вы переносете текст с одной платформы на другую, то вы, открыв файл, увидете множество (или, наоборот, мало) переносов строк и много странных символов.
Параметры утилиты немного запутаны, но это можно обойти задав алиасы:
alias dos2unix=’recode dos/CR-LF..l1′
alias unix2win=’recode l1..windows-1250′
alias unix2dos=’recode l1..dos/CR-LF’
Существуют множество опций: recode может конвертировать тексты между рядом кодировок.
23. Поиск измененных сегодня файлов
Сложность: низкая
Приложение: различные
Например, утром вы создали файл, который именно сейчас очень нужен. Однако, вы не можете вспомнить его название. Вручную перебирать домашнюю директорию бессмысленно, где скопилась не одна тысяча файлов. Но есть небольшой прием, показывающий эффективность пайпов и объединения нескольких комманд консоли:
Параметры команды ls требуют вывода даты в определенном формате. Хитрость в том: то, что выдаст ls, идет на вход grep. Параметр grep сами по себе команда (заключена в обратные апострофы), которая подставляет текущую дату в шаблон для отсева. Ее легко модифицировать для поиска по другим датам, размеру файла и т.д.
Линукс для начинающих и его практическое применение
Что такое Линукс
реклама
Первые Линукс изначально были написаны программистами для самих себя. Позднее увеличился выбор программ и появились различные графические интерфейсы (GNOME, KDE, Cinnamon, MATE, XFCE).
реклама
реклама
Разновидностей Линукс довольно много, самые популярные: Linux Mint, Ubuntu, Debian, Mageia, Fedora, OpenSUSE, ArchLinux, CentOS, PCLinuxOS, Slackware.
В России были созданы собственные версии Линукс: Rosa, ALT Linux, ASPLinux, НауЛинукс, Calculate Linux, Runtu, Rosinka, Astra Linux. Их последние годы внедряют в государственных учреждениях.
реклама
Плюсы и минусы Линукс
У Линукс, как и любой другой операционной системы, есть свои достоинства и недостатки. Поэтому прежде чем переходить на одну из ОС этого семейства, изучите её преимущества, а также некоторые особенности, которые в будущем могут сказаться на эффективности Вашей работы.
Основные достоинства Линукс:
Недостатки Линукс, с которыми её разработчики постоянно борются:
Применение Линукс на практике
В интернет-кафе
Линукс позволяет использовать относительно устаревшие компьютеры для комфортного сёрфинга в интернете. На такие компьютеры нет необходимости ставить антивирус и переживать, что кто-нибудь из пользователей что-то закачает и заразит всю локальную сеть интернет-кафе. Linux более экономно обращается к жёсткому диску ПК, поэтому по быстродействию он не сильно отстаёт от SSD.
Для обучения ребёнка
Дети любят необычный дизайн и яркие краски, многие версии Линукса предлагают подобный интерфейс. Можно не бояться, что ребёнок поймает вирус в интернете, а также он не будет жаловаться, если будет сидеть за стареньким компьютером, поскольку тот будет работать вполне резво.
Для встречи с клиентами и проведения презентаций.
Линукс имеет открытый код, а значит Вам не придётся оплачивать лицензию, как в случае с Виндовс. Для презентаций есть отличная замена Майксофт офиса – WPS office, используя его Вы покажете своим клиентам отличные знания компьютера, так как в основном опытные пользователи решаются установить Linux, а полностью на него переходят, только самые продвинутые.
В командировках
Если в командировке Вам нужно работать с почтой и текстовым редактором, а смартфон неудобен для этих целей, то можно приобрести слабый ноутбук, который на Линуксе будет работать на уровне более дорогих моделей. Линукс имеет шикарную подборку программ для работы специалистов всех сфер деятельности. Можно не бояться вставлять флешки с различных презентаций (если на них будет вирус, то ваш ноутбук он не поразит).
Для путешественников
Путешествуя, вам придётся скачивать различные программы, например, карту местности, читать много текста вроде списка местных законов и описания достопримечательностей. За пиратские программы во всём мире наказывают строже, чем в России, поэтому все Ваши программы должны быть либо куплены, либо быть бесплатными.
Для серверов
Высокая надёжность Линукса позволяет использовать его в качестве серверной операционной системы. Например, если у человека есть старый ПК, и он хочет запустить на нём свой сайт или онлайн-магазин.
Для обучения программистов и системных администраторов
Линукс позволяет проводить очень тонкую настройку любых своих функций, поэтому незаменим как для работы, так и для обучения будущих компьютерщиков.
Большая просьба к пользователям Линукс, напишите в комментариях, какой именно версией ОС Вы пользуетесь и какие задачи она решает?