Я предполагаю Ваш vsftpd
никогда не запускался. Вы, возможно, должны попытаться запустить его вручную через /etc/init.d/vsftpd start
и исследуйте системные журналы на то, что происходит.
Что касается этого,
tail --follow=name my-rolling-file.log | strings
По умолчанию для строк
выводятся только печатные символы длиной 4 (или более), но вы можете изменить это с помощью -n {number}
.
Можно переводить специальные символы (двоичные данные).
в обычные символы, которые безопасно отображать
путем суммирования вашей команды хвоста
в cat -v
:
tail --follow=name my-rolling-file.log | cat -v
вариант -v
(подробный) команды cat
(также известный как -показ-непечать
).
отображает "непечатные" символы с помощью ^
и M-
примечаний:
^@
^A
^B
^?
M-
, за которым следует изображение
низкого порядка семь битов байта. Или, если вы предпочитаете отказаться от символов, используйте:
tail --follow=name my-rolling-file.log | tr -cd "\t\n -~"
tr
"переводит" символы, т.е. наносит их на карту.
Это может быть использовано, например, для смены нижнего регистра на верхний.
Опция -d
говорит об удалении символов;
например, -d aeiou
удаляет все (нижний регистр) гласные.
Опция -c
означает дополнение;
т.е. делать все символы, кроме тех, которые я указываю.
"\t\n -~"
- это табуляция, новая строка и все обычные символы для печати.
Преобразовать (некоторые хлопотные) символы в .
с TR
:
tail -f data | tr "\000-\011\013-\037\177-\377" "."
Я спросил и ответил на аналогичный вопрос на сайте вопросов и ответов Fedora .
Получается, что Yum сохраняет свою историю в базе данных SQLite в /var/lib/yum/history
. Я смог создать это соединение SQL, которое показывает все установленные вручную пакеты вместе с их датой и временем установки.
В моем случае меня интересовали только пакеты, которые я установил вручную, поэтому я мог создать новую систему с инструментами, аналогичными тем, которые были установлены в моей исходной системе.
Следующая команда выводит на печать каждый установленный вручную пакет, идентификатор транзакции, дату и команду yum
из журнала. Обратите внимание, что имя базы данных будет отличаться в системе.
$ sudo sqlite3 /var/lib/yum/history/history-2014-12-03.sqlite "select c.tid, datetime(t.timestamp, 'unixepoch'), c.cmdline from trans_cmdline as c join trans_beg as t where c.tid = t.tid"
Пример вывода (столбцы: идентификатор транзакции, дата, команда):
4|2015-02-21 20:28:03|install mutt wget emacs coreutils
5|2015-02-21 20:28:37|install firefox
6|2015-02-21 20:35:02|install pgp-tools
-121--31801- меньше
справиться с проблемой, так как она хороша. Пейджер меньше
достаточно хорошо формирует двоичные файлы для вывода. Кроме того, часто полезны функции пейджера, такие как прокрутка и поиск.
Он не имеет прямой опции для отслеживания файла, который растет, но он имеет способ предоставить нажатие клавиш «type» после запуска.
Клавиша F начинает следовать за растущим файлом, обновляя экран по мере роста файла.
Префикс ключа: +
вместо -
и используйте его так же, как параметр:
tail -f
: less +F growing-file.log
Чтобы продолжить следовать за файлом по имени, даже если он был удален или удален, и воссоздан с тем же именем, добавьте параметр --follow-name
; Он изменяет то, что делают клавиши F и + F
, он не начинает следовать сам по себе:
tail -F
( -follow = name
): less --follow-name +F rolling-file.log
Если файл распознан как «двоичный файл», меньше
спрашивает, действительно ли его нужно видеть - чтобы избежать вопроса, используйте также опцию -f
( -force
):
less --follow-name +F -f rolling-binary-file.log
(Обратите внимание, что значение -f
для меньше
отличается от того же параметра для хвоста
.)
Используйте Ctrl + c , чтобы остановить следование, что позволяет выполнить прокрутку или поиск.
$ less +F /usr/bin/vim
"/usr/bin/vim" may be a binary file. See it anyway?
После нажатия y (чего можно избежать с помощью -f
) на экране отображается:
^A^@^@^@^@^@<E5>
^A^@^@^@^@^@<E6>
^A^@^@^@^@^@^@^P^A^@^@^@^@^@^B^P^A^@^@^@^@^@8^P^A^@^@^@^@^@F^P^A^@^@^@^@^@
<F1>^A^@^@^@^@^@^P<F1>^A^@^@^@^@^@-<F1>^A^@^@^@^@^@0<F1>^A^@^@^@^@^@i<F1>^A
^L(^@^@^@^@^@^@^@^@^@^@^@^@^@<A3><A5>&^@^@^@^@^@^@^@^@^@^@^@^@^@b['^@^@^@^@
@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@@<A7>&^@^@^@^@
<AB>&^@^@^@^@^@Ȣ&^@^@^@^@^@^L,^@^@^@^@^@^@<FF><FF><FF><FF><FF><FF><FF><FF>
^@^@^@^@^@^@s]&^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^_<D3>%^@^@^@^@^@̢
<AF>&^@^@^@^@^@<CA><(^@^@^@^@^@^B^D^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
<B1>&^@^@^@^@^@^D^D^H^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^R<B1>&^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@<A9><B3>&^@^@^@^@^@D<B8>&^@^@
<B5>&^@^@^@^@^@^]T&^@^@^@^@^@^BL^@^@^@^@^@^@H<8A>O^@^@^@^@^@F@^@^@^@^@^@^@
K'^@^@^@^@^@^C<C4><FF><FF>^@^@^@^@^OK'^@^@^@^@^@^C<C3><FF><FF>^@^@^@^@^TK'
#^@^@^@^@^@^D^@^@^@^@^@^@^@<E7>v&^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
#^@^@^@^@^@^D^@^@^@^@^@^@^@<E7>v&^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
#^@^@^@^@^@p|#^@^@^@^@^@P~#^@^@^@^@^@^@^@^@^@^@^@^@^@^P
#^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@<90>{#^@^@^@^@^@^@^@^@^@^@^@^@^@
Waiting for data... (interrupt to abort)
Управляющие символы отображаются в виде символов типа ^ A
( ^ @
является нулевым байтом).
Они также выделяются на терминале (что не показано выше), чтобы символ Control-A, ^ A
отличался от символа ^
, за которым следует A
.
От man less
:
Control and binary characters are displayed in standout (reverse
video). Each such character is displayed in caret notation if possible
(e.g. ^A for control-A). Caret notation is used only if inverting the
0100 bit results in a normal printable character. Otherwise, the char‐
acter is displayed as a hex number in angle brackets. This format can
be changed by setting the LESSBINFMT environment variable. LESSBINFMT
may begin with a "*" and one character to select the display attribute:
"*k" is blinking, "*d" is bold, "*u" is underlined, "*s" is standout,
and "*n" is normal. If LESSBINFMT does not begin with a "*", normal
attribute is assumed. The remainder of LESSBINFMT is a string which
may include one printf-style escape sequence (a % followed by x, X, o,
d, etc.). For example, if LESSBINFMT is "*u[%x]", binary characters
are displayed in underlined hexadecimal surrounded by brackets. The
default if no LESSBINFMT is specified is "*s<%02X>". Warning: the
result of expanding the character via LESSBINFMT must be less than 31
characters.
When the character set is utf-8, the LESSUTFBINFMT environment variable
acts similarly to LESSBINFMT but it applies to Unicode code points that
were successfully decoded but are unsuitable for display (e.g., unas‐
signed code points). Its default value is "<U+%04lX>". Note that
LESSUTFBINFMT and LESSBINFMT share their display attribute setting
("*x") so specifying one will affect both; LESSUTFBINFMT is read after
LESSBINFMT so its setting, if any, will have priority. Problematic
octets in a UTF-8 file (octets of a truncated sequence, octets of a
complete but non-shortest form sequence, illegal octets, and stray
trailing octets) are displayed individually using LESSBINFMT so as to
facilitate diagnostic of how the UTF-8 file is ill-formed.