загрузка ubuntu 12.04 с флэшки - как достаточно безопасно извлечь диск после загрузки?

dc -f infile -e '[+z1

Примечание, что отрицательные числа, снабженные префиксом знак "минус", должны быть переведены для dc, так как это использует _ префикс, а не - префикс для этого. Например, через tr '-' '_' | dc -f- -e '...'.

Редактирование: Так как этот ответ получил столько голосов "за мрак", вот подробное объяснение:

выражение [+z1 делает следующий :

[   interpret everything to the next ] as a string
  +   push two values off the stack, add them and push the result
  z   push the current stack depth
  1   push one
  

Как псевдокод:

  1. Определяют "add_top_of_stack" как:
    1. Удаляют два главных значения от стека и добавляют результат назад
    2. , Если стек имеет два или больше значения, выполните "add_top_of_stack" рекурсивно
  2. , Если стек имеет два или больше значения, выполненная Печать "add_top_of_stack"
  3. результат, теперь единственный объект, оставленный в стеке

Для реального понимания простоты и питания dc, вот является рабочим сценарием Python, который реализует некоторые команды от dc и выполняет версию Python вышеупомянутой команды:

### Implement some commands from dc
registers = {'r': None}
stack = []
def add():
    stack.append(stack.pop() + stack.pop())
def z():
    stack.append(len(stack))
def less(reg):
    if stack.pop() < stack.pop():
        registers[reg]()
def store(reg):
    registers[reg] = stack.pop()
def p():
    print stack[-1]

### Python version of the dc command above

# The equivalent to -f: read a file and push every line to the stack
import fileinput
for line in fileinput.input():
    stack.append(int(line.strip()))

def cmd():
    add()
    z()
    stack.append(1)
    less('r')

stack.append(cmd)
store('r')
z()
stack.append(1)
less('r')
p()
0
задан 18.05.2020, 14:48

1 ответ

После того, как машина подходит, необходимо быть в состоянии использовать что-то как

# Remount as read-only
mount -o remount,ro /

, С другой стороны, можно установить ее на только для чтения в fstab и использовать что-то как

# Remount as read-write
mount -o remount,rw /
0
ответ дан 18.05.2020, 14:49
  • 1
    Я наконец понял его - x среда была из-за/var/lib/lightdm., монтирующего, что, поскольку tmpfs зафиксировал это, но тогда я не смог войти в систему. таким образом монтируя мой корневой каталог, поскольку tmpfs зафиксировал это, и теперь это загружается прямо в на рабочий стол! предоставленный, всех моих файлов корневого каталога не стало каждый раз, но это хорошо для моей цели. – HemOdd 18.05.2020, 14:49
  • 2
    когда я выполняю первый, он говорит, смонтируйтесь: / занято. Второй подход почти работает - однако, если я установил fstab для монтирования ro, тогда мои X сред не загружаются. На самом деле я не вижу приглашения ко входу в систему вообще. Я смог к ssh в к нему, и затем повторно смонтируйте rw, но кажется, что я должен позволить начальной загрузке системы в к X, затем переключиться на только для чтения, если это возможно. – duskwuff 18.05.2020, 14:50
  • 3
    тем не менее никакие не идут - it' s странный, это пробует - экран чернеет, но тогда ничто. Я смотрю в dmesg и системном журнале, но ничем очевидном все же. Я также попробовал startx, и lightdm запускаются и то же самое - черный экран. – duskwuff 18.05.2020, 14:50
  • 4
    Измените свой/tmp на tempfs. Возможно, также Ваш/var/log - знать это будет стерто на перезагрузке. – CID 18.05.2020, 14:50
  • 5
    Я знаю it' s возможный, that' s, как живой DVD работает (например, только для чтения), возможно, Вам нужен перезаписываемый unionfs (с tempfs). – CID 18.05.2020, 14:51

Теги

Похожие вопросы