Примечание: этот пост — ироничное наблюдение на тему цикличности истории. Это самое наблюдение не несет какой-либо практической пользы, но в сути своей — весьма меткое, так что я решил, что им стоит поделиться с аудиторией. Ну и конечно же, встретимся в комментариях.
На прошлой неделе ноут, который я использую для разработки под MacOS, сообщил, что доступно обновление XCode. Я попытался его установить, но система сообщила, что ей недостаточно свободного места на диске для запуска программы установки. Окей, я удалил кучу файлов и попробовал снова. Все та же ошибка. Я пошел дальше и удалил еще кучу файлов и в довесок несколько неиспользуемых образов виртуальных машин. Эти манипуляции освободили на диске несколько десятков гигабайт, так что все должно было заработать. Я даже вычистил корзину, чтобы там ничего не «зависло», как это обычно бывает.
Но даже это не помогло: я получил все ту же ошибку.
Я понял, что пришло время запускать терминал. И действительно, по информации от df
, на диске было всего 8 гигов пространства, хотя я только что удалил файлов более чем на 40 гигабайт (замечу, что делал я это не через графический интерфейс, а через rm
, так что «выжить» шансов не было ни у кого). После долгих поисков я обнаружил, что все удаленные файлы переместились на «reserved space» файловой системы. И добраться до них и удалить не было никакой возможности. Почитав документацию я узнал, что ОС будет сама удалять эти файлы «по требованию, когда понадобится больше места». Это не сильно радовало, потому что система определенно не собиралась делать то, что должна, хотя вы обычно думаете, что софт от Apple такие вещи выполняет без ошибок.
После нескольких попыток разобраться в чем дело, я наткнулся на скрытый в глубинах Reddit тред, в котором некто перечислял магические пассажи, с помощью которых можно вычистить зарезервированное пространство. Собственно, эти пассажи содержали в себе такие вещи, как запуск tmutil
. Причем запуск проводится с кучей аргументов, которые, на первый взгляд, вообще не имеют никакого смысла или отношения к тому, что вы хотите сделать. Но, как ни удивительно, этот шаманизм сработал и я в итоге сумел обновить XCode.
Когда уровень моего артериального давления вернулся к нормальным значениям, я ощутил, как меня захлестывает чувство дежавю. Вся эта ситуация до боли напоминала мне мой опыт работы с Linux в начале нулевых. Что-то абсолютно рандомно, без каких-либо адекватных и понятных вам причин ломается, а единственный способ «вернуть все взад» — это откопать какие-то упоротые команды для консоли на каком-нибудь тематическом форуме и надеяться на лучшее. И в момент осознания этого факта я прозрел.
Ведь история с пространством файловой системы — это не единичный случай. Параллели есть везде. Вот, например:
Внешние мониторы
Linux 2000: подключение второго монитора, скорее всего, закончится фейлом. Фанаты говорят, что это все производители виноваты, что не предоставили полную информацию о модели.
Apple 2019: подключение проектора, скорее всего, закончится фейлом. Фанаты говорят, что это все производители виноваты, так как они не гарантируют, что их HW работает с каждой моделью техники Apple.
Установка ПО
Linux 2000: существует единственный расово-верный способ установки ПО: юзай пакетный менеджер. Если ты делаешь что-то иное, то ты мудила и должен страдать.
Apple 2019: существует единственный расово-верный способ установки ПО: юзай магазин Apple. Если ты делаешь что-то иное, то ты мудила и должен страдать.
Аппаратная совместимость
Linux 2000: из коробки работает весьма ограниченный перечень оборудования, даже если речь идет о таких популярных устройствах, как 3D-видеокарты. Оборудование или не работает вообще, или имеет урезанную функциональность, или вроде как работает, но время от времени крашится без каких-либо явных к этому причин.
Apple 2019: из коробки работает весьма ограниченный перечень оборудования, даже если речь идет о таких популярных устройствах, как телефоны на Android. Оборудование или не работает вообще, или имеет урезанную функциональность, или вроде как работает, но время от времени крашится без каких-либо явных к этому причин.
Техподдержка
Linux 2000: если ответ на вашу проблему не вылазит на первой странице поисковой выдачи, то все, это конечная. Обращение к друзьям за помощью приведет лишь к тому, что они введут вашу проблему в поисковик и зачитают информацию из первой ссылки выдачи.
Apple 2019: если ответ на вашу проблему не вылазит на первой странице поисковой выдачи, то все, это конечная. Звонок в службу техподдержки за помощью приведет лишь к тому, что они введут вашу проблему в поисковик и зачитают информацию из первой ссылки выдачи.
Особенности ноутбуков
Linux 2000: очень трудно найти ноутбук с более чем двумя USB-портами.
Apple 2019: очень трудно найти ноутбук с более чем двумя USB-портами.
Любовь до гроба
Linux 2000: фанаты пингвина недвусмысленно говорят вам, что их система — лучшая, и рано или поздно она будет стоять на всех ПК. Упомянутые фанаты — высокомерные компьютерные гики.
Apple 2019: фанаты Apple недвусмысленно говорят вам, что их система — лучшая, и рано или поздно она будет стоять на всех ПК. Упомянутые фанаты — высокомерные дизайнеры-хипстеры со стаканчиком латте в руках.
Источник: habr.com