Софт для Linux: ПК и «облака»

   

Белогривые лошадки… И эти «лошадки» тащут груз бесценной исключительно для нас информации. И, да, речь далее пойдёт только об облачных хранилищах информации. Темы про вычисления в «облаке» и всякие облачные хостинги затрагивать не будем, поскольку они, как правило, обычного пользователя на ПК не очень интересуют.

В первой части мы рассмотрели ПО для работы в интернете в Linux. Теперь осталось обозреть ситуацию с «облаками», причём сначала разберём ситуацию с импортным ПО, а потом с отечественным.

Сначала надо определиться с понятиями, о которых далее будет вестись речь, поэтому введём такое определение облачных хранилищ — это некое место («облако»), в котором хранится и обрабатывается информация и доступ к ней предоставляется посредством некоего сервиса. «Под капотом» для пользователя остаётся то, каким образом происходит хранение и обработка информации, в том числе надежность хранения и защищённость от утечки данных. Подразумевается, что обычному пользователю достаточно гарантий владельца сервиса, особенно если это крупные сетевые корпорации, типа Google, Microsoft, Яндекс и Mail.ru.

Понятно, что определение весьма расплывчатое и реальные облачные сервисы по хранению данных могут отличаться друг от друга как своими параметрами для пользователя (доступным местом, стоимостью дополнительного места, скоростью доступа), так и протоколами и ПО для работы с данными. И в последнем для обычных пользователей Linux засада — зачастую используемые протоколы являются закрытыми (проприетарными), по открытым протоколам (WebDAV) доступ зачастую не предоставляется или предоставляется на платной основе, а клиенты для Linux’а либо вообще отсутствуют, либо представляют из себя консольные утилиты, либо какие-то неофициальные и, возможно, недоработанные версии.

Поэтому дальше я хочу разобрать работу с наиболее популярными сервисами облачного хранения данных в РФ: Dropbox, Google Диск, Microsoft Onedrive, Яндекс.Диск и Облако Mail.ru и ещё затронем парочку интересных сервисов (MEGA и pCloud) с клиентами под Linux. Безусловно есть ещё много разных ресурсов, но они гораздо менее распространены в России и сейчас они останутся за кадром.

1 + 0 -

Софт для Linux: Интернет

После предыдущей статьи, в которой я заранее оговорил всякие холиварные вопросы об отсутствии ПО под Linux, сегодня я начну краткий обзор программного обеспечения для обычного домашнего пользователя ПК. Основная задача этого цикла — показать, что использование Linux’а в качестве операционной системы на домашнем ПК может практически ничем не отличаться от использования того же Windows. Ну и от MacOS (кстати, MacOS — это не Linux, её ядро скорее дальний родственник систем BSD) — но для MacOS в общем случае нужно специфическое оборудование от Apple, а вот Windows работает на том же железе, на котором, как правило, может работать и Linux.

Писать про современные программы Linux для работы в интернете довольно-таки просто и приятно, поскольку тут всё достаточно хорошо уже довольно давно и ещё лет 10-15 назад мне уже вполне комфортно было сидеть в интернете при использовании Linux’а. Уже были браузеры, практически ничем не уступающие браузерам под Windows (и эти же браузеры были и под Windows), вопросы с общением через электронную почту и многочисленные протоколы интернет-общения тоже были неплохо решены, были различные программы с графическим интерфейсом для скачивания файлов через протоколы FTP, eDonkey2000, BitTorrent и прочего. И на текущий момент по этому направлению принципиально ничего не изменилось, кроме одного нюанса — у пользователей добавились различные облачные хранилища. Но этот интересный нюанс я буду разбирать в следующей статье, а сегодня поговорим о браузерах, почтовых клиентах, мессенджерах и программ для закачки данных из интернета.

 

0 + 1 -

Linux и софт

Прежде чем перейти к обзорам прикладного программного обеспечения для Linux, мне хотелось бы в общих чертах рассмотреть столь холиварный вопрос — как наличие или отсутствие ПО в этом самом Linux.

Это воистину непростой и диалектичный вопрос вызывающий жаркие споры в интернете. Но нельзя сказать однозначно, что в Linux программного обеспечения мало или недостаточно, пока мы не определим конкретную ситуацию — для какой цели нужно это ПО.

Профессиональное ПО

Профессиональное — это значит, что это ПО разработано для тех, кто зарабатывает с помощью него деньги. И если взять вопрос профессионального программного обеспечения для ПК — то да, тут явно есть определённые лакуны, т.е. того ПО, к которому привыкли все — его просто нет. Нет Microsoft Office, Visual Studio, Adobe Photoshop, Autodesc 3D Max, Autodesc AutoCAD, Graphisoft ArchiCAD и т.д. и т.п. Можно было бы даже обобщить и сказать, что профессионального ПО для Linux вообще нет, но иногда-таки попадаются исключения, например, тот же Lightworks.

Эта ситуация вполне понятна — разработчики профессионального ПО вполне себе профессионалы и тоже хотят получать за свою работу хорошие деньги и, являясь капиталистами, озабочены ровно одним — прибылью. Таким образом поддержка систем, которые не имеют большого количества платёжеспособных клиентов — не очень интересна. Например, поддержка MacOS с её 10% платёжеспособных клиентов — она значительно интереснее (и ведь Microsoft Office for Mac есть), чем поддержка разнообразных версий Linux с их 2% прижимистых пользователей. Утрировано, конечно, но ситуация примерно такая.

Тут, конечно, можно вспомнить про долю серверов под управлением Linux, которые используют вполне себе профессиональное ПО — СУБД MySQL, PostgreSQL, веб-серверы Apache и Nginx и другие решения — но я тут пишу про ситуацию с обычными ПК.

0 + 0 -

Linux. Утилиты

На раздватричетыре мы закончили с настройкой Linux Mint и теперь можно переходить к тому, для чего и создаются все операционные системы: установке, запуску и использованию программ для удовлетворения своих потребностей. Но сначала перекинем мостик между настройкой ОС и её непосредственным использованием — поговорим об утилитах, которые иногда всё-таки необходимы обычному пользователю.

 

0 + 0 -

Настройка Linux Mint, часть 4: обновление и резервирование


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

Начнём с обновления ПО — в системе должно использоваться самые свежие версии ПО, чтобы не пропустить обнаруженную уязвимость. В Linux Mint, как и в Windows, есть свой центр обновления ПО — менеджер обновлений.

 

0 + 0 -

Настройка Linux Mint, часть 3: шрифты и внешний вид

После установки и настройки в первой и второй частях, мы добрались до внешнего вида Linux Mint. И начнём с того, что сразу бросается в глаза тем, кто ранее работал в Windows — это шрифты.

В Linux шрифты есть и шрифты отличные. Но отличные и от шрифтов в Windows:

  

2 + 0 -

Настройка Linux Mint, часть 2: диски и сетевые папки

С одной стороны в Linux с открытием диcковых носителей и сетевых папок всё очень неплохо — стандартный файловый менеджер их отображает в левой части в разделе «Носители» и их можно щелчком мыши открыть (примонтировать в терминах Linux):

И если мы, например, щёлкнем по носителю с именем DATA — у нас откроется окно с данными этого диска. Система автоматически создаст точку монтирования в своей файловой системе (в каталоге /media) и присоединит туда этот дисковый том. Всё происходит незаметно для пользователя и ему не надо писать команды типа mount.

3 + 0 -

Настройка Linux Mint, часть 1: устройства ввода/вывода

Мы установили Linux Mint и теперь надо провести его первоначальную настройку, чтобы нам было приятно и комфортно в нём находится. Начнём с устройств ввода-вывода.

Перед этим хотелось бы отметить, что все драйверы, используемые в Linux, встроены в его ядро (кроме драйверов видеокарты — они являются частью Xorg и драйверов принтеров — они включены в системы печати CUPS) и теоретически все устройства должны работать из «коробки». Для некоторых устройств (в основном видеокарт) есть проприетарные (закрытые) драйверы, которые поставляет производитель — их можно скачать и попробовать установить. Но может оказаться ситуация, когда на устройство либо ещё не выпущен драйвер (слишком новое, но всё может быть), либо он еще не встроен в ядро (и надо подождать), либо ни его производитель, ни энтузиасты не заинтересованы в его разработке (вот тут тупик). У меня был конкретный пример с аудиокартой ASUS Xonar DS — года два в ядре не было драйвера для этой карты, и отдельно его скачать и поставить было нельзя. Пришлось ждать и сидеть на встроенной в материнскую плату. Для обычного пользователя это означает, что если его устройство не поддерживается сразу — то либо нужно ждать, когда оно заработает после очередного апгрейда ядра, либо просто забить на него (хорошо что сейчас это действительно редкость). Но ждать можно долго. Поэтому хороший совет — перед покупкой чего-либо для ПК удостовериться в том, что на сайте производителя есть драйвера для Linux или в интернете найти информацию о работе данного компонента в Linux.

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


Параметры системы

 

0 + 0 -

Linux и домашний ПК — а оно нам надо? Установка Linux Mint

После сборки slim-PC из оставшихся у меня компонентов я встал перед выбором — что установить на это «чудо». Windows устанавливать не хотелось, да и лицензии лишней у меня не было (а сам я, как программист, не одобряю установку пиратского софта), поэтому выбор сам собой пал на одну из систем отряда Linux, а далее подотряд Ubuntu-подобных, семейство Linux Mint-овых.

Почему именно Linux Mint?

Потому что системы основанные на Ubuntu уже широко разошлись по миру, сообщество большое и есть где получить информацию в случае проблем. А Linux Mint это не просто клон Ubuntu, это наиболее дружелюбная к обычному пользователю система, заточенная под то, чтобы пользователю как можно меньше нужно было бы лазить под капот и что-то запускать в командной строке. При этом оболочку разработчики постарались сделать «под Windows», т.е. пользователю пересевшему с одной ОС на другую, не особо приходится задумываться где что. Кнопка меню слева внизу, справа от неё запущенные программы, справа в нижнем углу трей. Всё как обычно.

0 + 0 -

ASP.NET MVC — работаем с MySQL через Entity Framework

Решил немного расширить предыдущую статью про ASP.NET MVC и MySQL. В ней речь шла про работу с MySQL в ASP.NET MVC не через практически стандартный ORM Entity Framework (EF), а с помощью прямого доступа к СУБД через ADO.NET. И была приведена реализация этого метода доступа. И хотя метод устаревший и не рекомендуемый к использованию, но иногда полезен: например, в высоконагруженных приложениях или когда разработчик сталкивается с ситуацией, когда ORM не может сгенерировать корректно работающий SQL-запрос. И иногда можно совмещать в приложении оба способа — и через ORM и через ADO.NET. В итоге я подумал, и решил дописать приложение: добавив в него реализацию репозитория для Entity Framework и сделать выбор из них зависимым от параметра приложения с помощью Dependency Resolver.

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

0 + 1 -

Сборка ПК в slim-корпусе из «остатков»

После последнего агрейда оставшиеся комплектующие пошли на усиление компьютеров родных и близких, но и после этого осталась груда устаревшего железа, годная сейчас разве что на печатную машинку и интернет (а эти ваши ынтернеты нынче очень прожорливы):

  1. Материнская плата ASUS P5KPL-CM форм-фактора MicroATX и поддержкой сокета Intel LGA 775;
  2. Процессор Intel Core 2 Duo E7200 Wolfdale (BOX) — настоящий двухядерник с частотой 2,53 ГГц;
  3. Два модуля памяти по 2 Гб каждый (больше в эту плату всё равно не влезет);
  4. Видеокарта ASUS GeForce 210: тормозная, зато с пассивным охлаждением, с 1 Гб памяти и тремя выходами (DVI, VGA и HDMI) — ничего больше от неё и не было надо (в материнской плате нет видеовыходов);
  5. Звуковая карта ASUS Xonar DS с интерфейсом PCI — это, конечно, не топовая звуковуха, но явно получше встроенного в материнскую плату (всё-таки ЦАП 24 бит / 192 кГц) + оптический выход, что немаловажно.
  6. Твердотельный накопитель OCZ VTX3-25SAT3-60G на 60 Гб — тоже старьё, но материнская плата всё равно поддерживает SATA только до 3 Гбит/c.

И это всё красиво объединяла одна маленькая и, на первый взгляд, незаметная вещь — все комплектующие были укороченного размера: материнская плата MicroATX, а платы расширения — slim-формата, причём у меня сохранились (я ведь ничего нужного не выбрасываю) укороченные брекеты для крепления их к корпусу. Собирать железо ещё в один огромный железный ящик мне совершенно не хотелось, а вот попробовать что-то этакое миниатюрное — это гораздо интереснее.

1 + 1 -

О справедливости

Иногда слышу возгласы «вопиющих в пустыне»: «Это же несправедливо! Где же справедливость!»

А нет её. Точнее, поскольку это понятие субъективно, справедливость у каждого своя, как и правда. И, что естественно, «подкрученная» в свою сторону и, таким образом, возможно, ущемляющая понятия о справедливости у других членов общества.

0 + 0 -

ASP.NET MVC – работаем с MySQL через ADO.NET

Уже, наверное, раза три подбираюсь к ASP.NET MVC. После десяти лет с ASP.NET WebForms немного сложно переходить именно к технологии MVC, поскольку отличий столько, что скорее проще перечислить, что у этих технологий общего – это разве что библиотеки .NET Framework. Я не буду писать тут – лучше или хуже MVC чем WebForms, просто они обе хороши, и на обеих технологиях можно построить хорошее приложение. Свои мысли по поводу необходимости TDD я тоже пока оставлю при себе, хотя их есть у меня.

А сейчас я буду говорить о стандартнейшей задаче – обычной работе с данными: просмотре в табличном виде списка записей, добавлении, изменении и удалении данных (операции CRUD). Однако практически во всех книгах и во многих решениях в интернете для ASP.NET MVC почему-то рассматривается вариант исключительно через ORM (Object Relation Mapping): или Entity Framework (EF) или LINQ для SQL. Технологии отличные, спору нет, наконец-то программист может и не разбираться – а как вообще эта самая реляционная СУБД (которой он, скорее всего, пользуется) вообще работает, и даже SQL, по идее, знать уже необязательно: прокладка в виде EF и коннектора для СУБД разберутся между собой. «Вот оно счастье – нет его краше». Но тем программистам, которые не боятся прямой работы с базой данных через механизм ADO.NET, зачастую непонятно – а с чего вообще начинать в ASP.NET MVC и надо ли.

1 + 0 -

Tronsmart Spunky Beat: тот случай, когда AptX есть, но не нужен

Во время «распродажи 11.11» 2019 года на Алиэкспресс прикупил true wireless (TWS) наушники Tronsmart Spunky Beat. Купился я на присутствующий в них AptX и хорошие отзывы в интернете от реальных пользователей. Ехали они, ехали до меня месяц, и вот, наконец, приехали:

Брал я их на смену своим QCY Q29 Pro (про опыт их использования написал в другой статье). Меня не оставляла надежда таки приобрести в Китае, что-то, что устраивало бы больше чем QCY Q29 Pro и на чём можно слушать те же подкасты и иногда музыку (уж если вдруг не оказалось рядом наушников Silicon Power BP61).

0 + 0 -