Рабочий диск с linux

Разметка системного диска при установке desktop-дистрибутива Linux

Linux — самая «щедрая» desktop ОС в плане выбора файловых систем и их использования. Глупо не воспользоваться таким ресурсом, ведь при умелом подходе мы сможем сделать нашу систему быстрее и безопаснее.

Итак, как недостойное try-юниксоида отметаем предложение «распилить диск одним куском», произрастающее явно из win-мира. У нас тут свои идеи имеются, что строить и куда копать.
Однако, для начала следует определится, как именно будет использоваться данный ПК после установки на него системы. Тактика разметки для рабочей станции заметно отличается от тактики разметки для сервера. Далее я буду указывать предпочтительные настройки для своего домашнего semi-headless сервера — эдакого промежуточного варианта, а в примечании — более оптимальные параметры для (возможного) узкоспециализированнного решения.
Итоговый список разделов и их размеры примерно таковы-

Давайте разберемся, достаточно ли это оптимально?
Я считаю, что более чем. Прежде всего — разделов не «многовато» — их в самый раз. Пройдемся по ним более детально:

/dev/hda1 100M ext2 /boot
Совершенно очевидный шаг для тех, кто не собирается денно и ношно компилировать новые варианты ядра системы и экспериментировать с загрузчиками.

Обратите внимание на ТИП — ext2 — использование «старого» формата позволит избежать любых возможных проблем с любым загрузчиком.
Имеет смысл разместить на самостоятельном первичном разделе.

/dev/hda2 980M swap
SWAP ака область подкачки обычно рекомендуют устанавливать размером вдвое больше размера оперативной памяти, однако при достаточном ее количестве множитель 1,5 будет уместнее. В крайнем случае мы всегда сможем выделить на любом диске еще одну область подкачки и подключить ее к системе. Суммарный эффект от 2-х областей на разных дисках будет больше, чем от одной большой области на одном диске, тем паче системном. Кстати, если Вы планируете запускать что-то активно использующее память — наиболее верной стратегией будет сразу разместить область подкачки на другом, отличном от системного, диске. Этот совет частенько встречается и он довольно разумен.
А вот другой часто встречающийся совет — «отказаться от файла подкачки» я не могу назвать разумным. В случае непредвиденной ситуации «экономия» гигабайта жесткого диска может оказаться весьма накладной.

Вновь обращаю внимание на ТИП — swap и отсутствие точки монтирования — разделу подкачки она не требуется.
Размещаем на расширенном разделе вместе с остальными партициями.

/dev/hda3 10G ext3 /
Это, как видно из точки монтирования — корень (или root) нашей файловой системы. Все необходимые системе каталоги, не получившие от нас собственных разделов, будут размещаться здесь. Включая каталоги с устанавливаемыми программами и обновлениями.

И снова к типу файловой системы — ext3 — это журналируемая версия ext2, обеспечивающая более быструю проверку в случае предыдущего аварийного завершения работы ПК. Поверьте мне, когда я пишу «более быструю» — я подразумеваю «ОЧЕНЬ быструю в сравнении с ext2». Выбирайте этот тип файловой системы, если не знаете, что Вам взять.

PS. «Журналируемая» — не синоним «избыточная». Журнал файловой системы используется ею для своих собственных нужд (если Вам интересно — для непротиворечивости ссылочной целостности), на Ваши данные система чихать хотела. Отсюда совершенно логичное правило — хочешь сделать хорошо — сделай сам! Делайте бекапЫ самостоятельно.

/dev/hda4 10G
Нет, это не опечатка. Тут действительно (пока) ничего нет. Собственно, этот раздел Вы можете и не создавать, но в таком случае у Вас не будет возможности оценить шелковистость и уместность подложенной соломки :). Место размещения нашего НЗ так же очень примечательно — после root и перед home — если один из разделов начнет быстро расти — без особых проблем сможете увеличить его вдвое.
Вероятнее всего Вам этого хватит.

PS. Хотя я бы рекомендовал расходовать НЗ постепенно, заниматься расширением раздела с захватом пустого пространства не так весело, как перераспределять место между двумя забитыми смежными. Я уж не говорю о потенциальной небезопасности передвижении стен, за которыми кто-то сидит :).

Читайте также:  Mac os команды терминала для работы с диском

/dev/hda5 10G ext3 /home
О, мы уже дошли до нашего «хомяка»! Раздел home, как это и следует из названия, дает пристанище всем личным директориям пользователей, с их, пользователей, картинками, документами и прочим нехитрым скарбом. Кроме того в личной «папке» пользователя лежат разнообразные настройки и прочая и прочая. Отсюда вполне логичная арифметика — на каждого пользователя стоит отводить по 8-10G места. Если Вы собираетесь активно использовать систему в содружестве с кем-то еще — заложите места побольше моих 10G.

PS. Не то, чтобы не очевидно, но на всякий случай напоминаю — при создании на своем ПК ftp-сервера в этом же разделе поселится и «пользователь» FTP, ему так же, как и Вам, будет нужно место для директорий upload, download и что Вы там еще придумаете. Имеет смысл обдумать этот вопрос заранее. Или «расширить» директорию, подмонтировав в нее на место /home/ftp/upload какой-нибудь отдельный жесткий диск, если Вы жестко собрались что-то обменивать.

PPS. Уповаю на Вашу благоразумность, но все же не могу не обратить Вашего внимания на тот очевидный факт, что… Директория /home самая ценная часть Вашего жесткого диска. Делайте бекапы. Целиком или выборочно, всех файлов или только определенных документов, но бекапы нужны. Восстановление «умерших» треков ничто по сравнению с попыткой еще раз набрать две-три сотни страниц по какой-нибудь не особо интересной теме.

PPPS. Совершенно очевидно, что фраза «делайте бекапы» означает:

  • планомерность их создания по расписанию.
    Компьютеры, в отличие от людей, почти не страдают от лени. Просто признайте что он дисциплинированнее Вас и поручите ему самому следить за однажды данным Вами графиком.
  • множественность их создания.
    Хорошая тактика — по меньшей мере 2 дополнительных места хранения Вашего реферата или что там у Вас есть.
  • распределенность их местонахождения.
    Положить в той-же директории архив с файлом — плохая идея. Гремлены, поселившиеся в одночасье на вашем жестком диске, одинаково хорошо хомячат и текстовые документы, и бинарные архивы. Положите бекап на физически другой диск. На флешку. На CD. Научитесь пользоваться Dropbox. Умеете? Ну, тогда научите меня им пользоваться 🙂
    Перечисленные меры — минимальный уровень безопасности сохранности Вашей информации! Минимальный означает «ниже некуда». Осознайте это до того, как ваша докторская по-английски удалится к цифровым праотцам.

/dev/hda6 10G ext3 /var
Вот мы и дошли до последнего (по моему скромному мнению) обязательного раздела нашей системы. Довольно странная директория на самом деле вполне обыденна — там лежат всякоразнообразные логи /log, директория /tmp, директория /www, содержащая документы и скрипты Вашего возможного сервера и директория /lib, в которой к примеру, лежат файлы Вашей базы MySQL. Если Вы точно не планируете делать общедоступный сервер с активной нагрузкой — можете уполовинить предложенные мною 10G — вероятнее всего проблем не будет.

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

Подготовлено с помощью pod2html.

UP. Всем, кого мысль о разбивке на «о ужас» 4-5 разделов так коробит:
1) Сделать деление на разделы нужно только один раз, при установке системы. Вам не нужно каждый раз по памяти монтировать каталоги при загрузке. Не понимаю, что вас беспокоит.
2) Пока о налоге на «лишние разделы» как-то не слышал. Не вижу причин делать разделов меньше, чем того хочется.

Источник

Разворачиваем рабочий образ linux с минимальным интерактивом

Эта публикация может быть интересна тем ленивым системным администраторам, которые используют что-то из нижеперечисленнго:

  • Linux — based систему на машинах-клиентах;
  • Тонкие/толстые однотипные клиенты на различном железе;
  • Сетевое хранилище клиентских данных;
  • Предустановленный регламентированный софт;
  • Openvpn/rdp к серверам приложений.
  • Плюшевый (мягкий и пушистый) мониторинг linux клиентов типа Nagios.
Читайте также:  Настройка локальной папки windows 10

Речь пойдет о том, как с минимальными усилиями со стороны пользователя или штатного «эникейщика» установить на компьютер пользователя готовую систему с набором софта, настроенными сетевыми службами, предопределенными конфигами и т.д. Статья ориентирована в первую очередь на энтузиастов и начинающих линуксоидов, но приемы и скрипты вполне могут использоваться в боевом развёртывании группы из десятков машин ежедневно.

Для начала определимся с дистрибутивом. Это, конечно, зависит прежде всего от задач. Я выбрал xubuntu 14.04 по трем простым причинам:

1. ubuntu — deb based система с широчайшей поддержкой и огромным количеством форумов;
2. xubuntu — легковесный вариант без рюшек и понтов, который не тормозит на машинах от 512Мб ОЗУ (есть в моём парке и такие динозаврики);
3. 14.04 — это LTS (Long Term Support) вариант c поддержкой до 2019 года.

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

Забегая вперед, отмечу: чтобы повторить описанное потребуется настроенный vpn сервер или «конфиг-мониторинг-сервер» в локальной сети, пара виртуальных или реальных машин, пара часов свободного времени и внимание к деталям.

Итак, первое, подготовка образа. Все этапы важны, но первый — это фундамент. Устанавливаем систему с cd/dvd/usb/сети и выбираем разметку дисков. Важно понимать, что наш образ не будет поддерживать динамического ресайза ДО развёртывания. А после, скорее всего такой ресайз и не потребуется. Под корень имеет смысл отдать 6-10 Гб.

Больший объем оправдан в случае, когда заведомо известно, что а) диски на клиентских машинах не будут меньше этого объема и б) действительно будет установлено много разных нужных пакетов.

Разметим /home и, наконец, swap разделы. В совокупности все три раздела у автора не вылезают за 30Гб (чтобы спокойно разместиться на ssd 30 Gb, это минимальная конфигурация по диску для моих клиентов). В случае, если заранее известен минимальный объём диска — приемника, имеет смысл подгонять разделы под него. Своп рекомендую размечать сразу за корнем диска, /home сразу за свопом, чтобы в случае ресайза не «возить их по диску в консоли», а сделать изящно одной командой. Устанавливаем локаль, имя пользователя, пароль, hostname и заходим в новоиспеченный Linux. Для продолжения потребуются пакеты x11vnc, ssh, rsync, openvpn, mc (обожаю mcedit, он мне родной, как нортон из девяностых).

В базу я на свой вкус добавил skype, icedove (thunderbird), iceweasel(firefox), chromium-browser, rdesktop калькулятор, монитор ресурсов, viber, libre office, wine и пару windows-приложений (гореть мне, конечно, за это в аду, но аналогов нет и не предвидится). Настраиваем медленно и неторопливо всё это дело. Проверяем, что всё запускается и работает.

Настраиваем vpn. У меня сеть распределенная, по два-три компьютера на одну геолокацию, больше 50 локаций по России, не наездишься. Создаем ssh-ключ к серверу и на сервере к клиенту (кому надо вводить эти пароли, подробности, к примеру, тут). На сервере создаем каталог безусловной синхронизации (для меня это рабочие скрипты, ключи openvpn, клиентский cron, служебные скрипты на python, бинарники С++). В рабочем примере это /var/sync/in, /var/sync/in/cron, /var/sync/out. В out будут логи и любая нужная нам информация с клиентов: скриншоты, отчеты по процессам, итд. В in как раз и будут скрипты синхронизации, задания cron, скрипты хартбитов для мониторинга, многочисленные конфиги системных служб (того же cups или openvpn).

Подготовка всего этого дела к тиражированию займет не многим больше времени, чем установка системы одному пользователю, но тщательная проработка деталей может существенно уменьшить время, которое админ в будущем потратит на скрипты «допиливающие» все образы в бою. Настроим openvpn на клиенте и убедимся, что пользовательский ключ[и] работа[ею]т. Не лишним будет и настроить grub2.

  • Хинт1: Хорошо, когда хостнейм, ip в openvpn и сертификат юзера содержат свой уникальный id, к примеру user10.key, x.y.z.10 и vladivostok_10 в качестве хостнейма;
  • Хинт2: Хорошо, когда копии этих файлов лежат под рукой, скажем /var/sync/hostname, /var/sync/id, /var/sync/location;
  • Хинт3: Зарезервировать 5-10 адресов под незарегистрированных пользователей тоже будет полезным.
Читайте также:  Kali linux настройка звука

Файлы из Хинт2 мы создавать не будем сознательно, по их отсутствию будет понятно, когда «новенькие» подключатся к нашему vpn.

Итак, всё шуршит, офис работает, калькулятор запускается, для rdp с сервером приложений уже есть ярлычок на рабочем столе.

Пришло время делать образ.

Разрешу себе отвлечься. Способов сделать образ с готовой системой под тираж я перепробовал немало. Данная статья не претендует на звание лучшего способа, скажу лишь, что способ лучший для меня и очень кратко прокомментирую другие способы и их минусы.

Clonezilla — отличная вещь, но в интерактивном режиме вводит в ступор любого эникейщика за триста миль от админа.
dd if=/dev/sda of=img.img — волшебная вещь, но вместе с данными мы получим мусор с пустой части диска, объём и скорость метода ужасают.

Norton ghost — не поддерживает ext4.

Partition copy из gparted — классная вещь, но, увы, тоже не для начинающих.

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

  • Образ должен помещаться на небольшой (в моем случае 2Гб) флешке;
  • Образ должен ставиться нажатием одной-двух кнопок;
  • После развертывания образ сам должен синхронизироваться и «докладывать» админу, что новая машина «в строю»;
  • Регистрация новой машины не должна занимать много времени;
  • (Важно!) Образ скорее всего будет записан на флешку из-под windows непрофессионалом по инструкции;
  • (АрхиВажно!) Образ скорее всего будет развиваться версионно, и его нужно периодически доделывать и быстро распространять.

Пришлось изобретать маленький велосипед, а точнее — писать разворачивающий скрипт. Для вышеупомянутых задач был выбран дистрибутив PartedMagic. Для заворачивания образа потребуется unetbootin+partedmagic или любой live-cd(usb) с линуксом и tar+b[g]zip на борту. Будем считать, что образ мы загрузили PartedMagic «run from ram» и флешка монтирована в /media/sdb1 (FAT32).

  • Ахтунг1 Напоминаю, раздел файла в fat32 не должен быть более 4Гб, следите за объёмом образа или выбирайте ext4 раздел.
  • Ахтунг2 NTFS раздел флешки под linux хоть и работает, но забирает огромное кол-во процессорного времени.

После загрузки монтируем наш диск (скорее всего /dev/sda1) и жмём прямо с него всю нашу систему, не забываем и про /home раздел:

Затем сделаем архив со всем содержимым нашего диска:

Тоже самое и для /home раздела:

Затем дампим таблицу разделов в файл на нашу суперфлешку:

Таким образом, на флешке у нас появятся архивы и файл с таблицей разделов эталонного образа.

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

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

cat /pmagic/pmodules/scripts/kill_your_hdd_data.sh (путь для автозагрузочного скрипта в PartedMagic)

Вместо эпилога:

Данный метод используется в Urban Software для заливки информационных сенсорных киосков c веб-приложениями под управлением linux. Чаще всего это бесклавиатурные машины, которые разворачиваются десятками вдали от цивилизации нашей техподдержки, поэтому важно изначально не создать проблем при их мониторинге и вводе в работу.

Источник

Оцените статью