Bash не записывает свою историю в файл истории, пока он не выйдет или вы не вызовете history -w
. Так что если вы только что добавили свой пароль в историю текущей оболочки, он еще не был записан в .bash _ history
, он просто сидит там в памяти. Можно запустить fc -l
для просмотра списка последних команд, затем history -d
для удаления записи.
$ echo swordfish swordfish Oops, that was my password! $ fc -l -2 1234 ls 1235 echo swordfish $ history -d 1235 $ fc -l -3 1234 ls 1235 fc -l -2 1236 history -d 1236
Если файл истории уже написан (например, из-за наличия history -w
в PROMPT _ COMMAND
или ловушки отладки), выполните это действие и отредактируйте .bash _ history
.
Если вы хотите забыть историю текущей оболочки, отмените установку HISTFILE
и убедитесь, что она не установлена до выхода из оболочки. Если вы хотите забыть текущую историю до этого момента, но начать запись, вы можете вызвать history -c
. Если вы хотите забыть все записи истории 3, кроме последних, установите значение HISTFILE = 3
, затем (в отдельной командной строке) вернитесь к обычному значению.
-121--69854-
У меня была эта проблема, и увеличение оперативной памяти гостя исправило ее. Попробуйте передать -m 1024
.
-121--55617-
ядро использует sysfs для экспорта узлов устройств в пользовательское пространство для использования udev
No. Sysfs не содержит узлов устройств. В основном Sysfs содержит файлы, содержащие информацию об устройствах, а также некоторые файлы, позволяющие процессам управлять работой устройств. Но по большей части устройства не могут использоваться через то, что обеспечивает sysfs.
Возьмем, например, жесткий диск. Существует каталог для него где-то под /sys/devices
, с путем, который зависит от того, как он подключен к компьютеру (например, /sys/devices/pci0000: 00/...
для диска, подключенного к контроллеру, подключенному к основной шине PCI компьютера). В этом каталоге можно найти различную информацию, например, размер, съемность, состояние питания и т.д. Существуют также подкаталоги для разделов. Но там нет ничего, что обеспечивало бы доступ к содержимому диска. В другом месте /sys
имеются символьные ссылки на каталог, соответствующий этому диску: в /sys/block
, в /sys/class/block
и т. д. Но все равно ничего для доступа к содержимому диска.
В /dev
запись для диска представляет собой специальный файл - блочное устройство . Этот файл позволяет процессам читать и записывать содержимое диска. (Хотя для диска, который обычно не происходит; вместо этого устанавливается содержимое диска или раздела, поэтому ядро получает доступ к устройству, а процессы - нет.)
Файлы устройств позволяют выполнять некоторые операции, отличные от чтения и записи содержимого, с помощью ioctl . Можно предоставить всю информацию и интерфейсы управления, которые sysfs предоставляет через ioctl в файле устройства.Однако это было бы менее удобно по нескольким причинам:
/sys
разрешения могут быть наборы на мелкозернистой основе. С одним файлом на устройство в /dev
, это все или ничего. cat
или echo
. С ioctl это намного сложнее: нет оболочечного интерфейса, часто нет интерфейса в других высокоуровневых языках. Идя в другом направлении, можно обеспечить доступ к содержимому устройства через файл в sysfs. Но это потребовало бы дополнительной работы в ядре: sysfs предназначен в первую очередь для обслуживания небольших файлов и символических ссылок, и без поддержки ioctl
, которую ожидают существующие приложения. Я не думаю, что будет значительное преимущество расширения sysfs для поддержки существующих типов устройств, следовательно, продолжение существования файлов устройств.
Sysfs автоматически заполняется ядром, отражая фактически доступные устройства в реальном времени. Значение файла в sysfs определяется путем, выбранным драйвером, предоставляющим этот файл. /dev
работает по-разному: значение файла происходит от типа файла устройства (блок или символ) и его мажорных и второстепенных чисел (именно это перечисляет ls -l
вместо размера файла для устройства). Традиционно /dev
был статическим, с файлами устройств, созданными во время установки системы; но это не так хорошо работает, когда устройства могут быть горячими, следовательно, желание динамического /dev
, который отражает подключенные устройства в реальном времени.
Linux прошел несколько итераций динамического /dev
. Linux 2,4 имеет devfs , где ядро автоматически создает записи для отображения подключенных устройств. Но это было не так приятно , потому что он жестко закодировал политики именования устройств и разрешений в ядре, поэтому он был заменен программой userland udev для управления политикой, и /dev
на простой файловой системе tmpfs (файловой системе в памяти, не имеющей особого значения для ядра). А затем devfs сделал частичный возврат, с devtmpfs , который является экземпляром tmpfs, где записи для доступных устройств автоматически создаются ядром, но udev делает все управление, что он хочет поверх этого.
Как оказалось, любезно предоставлено @dsstorefile1, это была память!
Для всех, кто это видит, максимальный размер памяти равен , а не выделенной памяти. Это штучка с возможностью горячей замены. Используйте первый вариант.
Я идиот.