LINUX.ORG.RU
ФорумAdmin

Как отмонтировать /usr в debian с systemd?

 , ,


0

1

Дано: debian jessie c systemd и бедами на винте. /, var, usr и др. на отдельных партициях. Хочу проверить все партиции при помощи fsck -vcck. Все отмонтировал кроме /usr. Как отмонтировать /usr? С usb не грузится, cd рома нет ну и неспортивно это использовать livecd.

P.S. Перезагрузился с sysv отмонтировал /usr и проверил. Но все же хочется обойтись без презагрузки в sysv и сохранив ssh.

★★★★★

По-простому — никак. В апстриме systemd считают, что такие вещи легче делать из initramfs.

intelfx ★★★★★
()
Ответ на: комментарий от tyrpyr

уже не работает?

А как дать эти ключики: -vcck?

einhander ★★★★★
() автор топика
Последнее исправление: einhander (всего исправлений: 1)
Ответ на: комментарий от intelfx

Спасибо. +1 к моему личному списку «почему я не люблю systemd» Ситуация не очень распространенная, но жаль что подобный ход теперь закрыт загеморроен)).

einhander ★★★★★
() автор топика
Последнее исправление: einhander (всего исправлений: 1)
Ответ на: комментарий от einhander
mount -o remount,ro /
mount -o remount,ro /usr

Про ssh не было сказано, наоборот, речь шла про загрузку с внешнего носителя.

sin_a ★★★★★
()
Ответ на: комментарий от sin_a

Про ssh не было сказано...

Это в хотелках было, в конце постскриптума.

mount -o remount,ro /

Это безопасно делать read-write badblock check на партиции примонтированной в ro?

einhander ★★★★★
() автор топика
Ответ на: комментарий от einhander

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

sin_a ★★★★★
()
Ответ на: комментарий от einhander

2007

Делал на малине с помощью редактора разделов и resize2fs без всех этих плясок.

Radjah ★★★★★
()
Ответ на: комментарий от leave

Или совсем немного мозгов и минимальную систему в initramfs.

Но голова же у тебя не чтобы думать, а чтобы в неё кашу есть и на ЛОРе говном кидаться, да?

intelfx ★★★★★
()
Ответ на: комментарий от einhander

Обратная совместимость с чем? С чьим-то местечковым трюкачеством? Перефразирую твои страдания:

Вот раньше были запорожцы, можно было на ходу высунуться из окна, открыть капот, ударить по головке блока цилиндров кувалдой, и всё снова работает. А теперь машины быстрые, двигатели интегрированные, кошмар!

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от Deleted

Версия ни при чём. Или у тебя есть открытые файлы на /usr, или нет.

На самом деле я перегнул палку; вполне вероятно, что в этих ваших дебианах трюк с отмонтированием /usr можно провернуть и сейчас. Только нужно предварительно остановить udev, logind, journald и вот это всё. Другими словами, упасть в emergency mode (предварительно сделав что-нибудь с сессиями и ssh, чтобы они не прибились по ходу). Тогда, если основной бинарь systemd слинкован только с библиотеками из /, всё получится.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 3)
Ответ на: комментарий от intelfx

на ходу высунуться из окна, открыть капот, ударить по головке блока цилиндров

Продолжаю аналогию: да хоть с ремонтом двигателя самолета в процессе полета.

Если такая потребность существует, то зачем ее убирать? Ладно, все это демагогия, а хотелось бы рабочий рецепт.

einhander ★★★★★
() автор топика
Последнее исправление: einhander (всего исправлений: 1)
Ответ на: комментарий от intelfx

Ой, пардон, я туплю. Перепутал с /var

Deleted
()
Ответ на: комментарий от einhander

Рецепта для дебиана у меня нет, т. к. в его смотанных скотчем внутренностях я не разбираюсь. Если бы в арче не было бы /usr merge, то рецепт выглядел бы как-то так:

  1. дописать в sshd.service (и в юнит, отвечающий за сеть, всё то же самое кроме строчек про network.target):
    [Unit]
    DefaultDependencies=false
    IgnoreOnIsolate=true
    Conflicts=shutdown.target
    Before=shutdown.target
    Wants=network.target
    After=network.target
    
  2. сделать systemctl isolate emergency.target
  3. сделать fuser -m /usr
  4. прибить всё что сказано
  5. делай что хочешь
intelfx ★★★★★
()
Ответ на: комментарий от einhander

А, ещё systemctl daemon-reload забыл. После редактирования юнитов.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Ты мне вот сейчас предлагаешь в initrd запихнуть полноценную ОС с sshd и статической конфигурацией сети? На полном серьёзе? А чего ради? Какие очевидные плюсы от неотмонтируемого /usr я не замечаю?

leave ★★★★★
()
Ответ на: комментарий от leave

Во-первых, на самом деле, в случае этого конкретного дебиана я в первом комментарии не прав, /usr можно отмонтировать, если дебиановцы собрали всё что нужно с prefix=/.

Во-вторых, лично я считаю, что да, именно так. Ради чего — я какое-то время назад расписывал.

intelfx ★★★★★
()
Ответ на: комментарий от shell-script

Ммм, в моем случае это идея, спасибо.

einhander ★★★★★
() автор топика
Ответ на: комментарий от leave

initrd

Уже 10+ лет как закопали. Сейчас initramfs

запихнуть полноценную ОС с sshd и статической конфигурацией сети? На полном серьёзе?

Есть дистрибутивы, которые так и живут. Самый известный - TinyCore.

border-radius
()
Ответ на: комментарий от border-radius

Уже 10+ лет как закопали. Сейчас initramfs

не суть

Есть дистрибутивы, которые так и живут. Самый известный - TinyCore.

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

leave ★★★★★
()

/, var, usr и др. на отдельных партициях.

какого дьявола так делать в 2016 году? Зачем быть шлимазлом и самого себя бить молотком по пальцам?

slon
()
Ответ на: комментарий от border-radius

ну вот зацени, initramfs и initrd используются свободно и одновалентно, когда говорят про:

initramfs-linux.img
называют его при этом «initrd image».

slon
()
Ответ на: комментарий от slon

какого дьявола так делать в 2016 году?

Это было сделано 2007 вместе с установкой debian etch. 9 лет работы неплохой срок для десктопного винча. Сейчас мне стало интересно может ли современный линукс сам себя починить, в случае проблем с железом.

einhander ★★★★★
() автор топика
Ответ на: комментарий от leave

Просто не вижу никакой сложности. Rescue-шеллы испокон веков располагались в инитраме. С чего это вдруг они не должны уметь сеть?

border-radius
()
Ответ на: комментарий от leave

Мир состоит не только из говнодедиков. В «своей» сети можно использовать dhcp, в «чужой» не вижу особых противопоказаний к статике (если в ней, опять же, не используется dhcp).

nbw ★★★
()
Ответ на: комментарий от Dron

К сожалению рецепт не подходит, т.к. systemd уже стал стандартом по факту. Поэтому я и спрашиваю как сделать те вещи которые раньше делались достаточно просто.

einhander ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.