Scroll to navigation

LSFD(1) Корисничке наредбе LSFD(1)

НАЗИВ

lsfd - исписује описнике датотека

УВОД

lsfd [опција]

ОПИС

lsfd је замишљено да буде савремена замена за lsof(8) на Линукс системима. За разлику од lsof-а, lsfd је специјализован за Линукс кернел; подржава Линуксу специфичне функције као што су називни простори са једноставнијим кодом. lsfd није уметнута замена за lsof; разликују се у линији наредби сучељу и излазним форматима.

Основни излаз је субјекат за измену. Тако да кад год је могуће, треба да избегавате коришћење основних излаза у вашим скриптама. Увек изричито дефинишите очекиване колоне користећи --output списак-колона у окружењима у којима се захтева стабилан излаз.

lsfd користи „Libsmartcols“ за форматирање излаза и филтрирање. Видите опис --output опције за прилагођавање формата излаза, и опцију --filter за филтрирање. Користите lsfd --help да добијете списак свих доступних колона.

ОПЦИЈЕ

-l, --threads

Исписује ниво у нитима.

-J, --json

Користи ЈСОН формат излаза.

-n, --noheadings

Не исписује заглавља.

-o, --output списак

Наводи које колоне излаза ће се исписати. Видите одељак КОЛОНЕ ИЗЛАЗА за појединости о доступним колонама.

Основни списак колона се може проширити ако је списак наведен у формату +списак (нпр., lsfd -o +DELETED).

-r, --raw

Користи сирови излазни формат.

--notruncate

Не скраћује текст у колонама.

-p, --pid пидови

Прикупља информације само за наведене процесе. pids је списак пид-ова. Зарез или празнине се могу користити као раздвајачи. Можете да користите ову опцију са pidof(1). Видите ПРИМЕРИ ФИЛТЕРА.

Обе опције, како опција -Q са изразом укључујући ПИД, тј. „-Q (ПИД == 1)“, тако и опција -p, тј. „-p 1“, могу исписати исти излаз, али коришћење опције -p је делотворније јер опција -p ради на много ранијем стадијуму обраде него опција -Q.

-i[4|6], --inet[=4|=6]

Исписује само IPv4 и/или IPv6 прикључнице.

-Q, --filter израз

Исписује само датотеке које одговарају услову представљеном са израз. Видите такође scols-filter(5) и ПРИМЕРИ ФИЛТЕРА.

-C, --counter натпис:филтер_израз

Дефинише произвољни бројач коришћен у --summary излазу. lsfd прави бројач под називом натпис. За време прикупљања информација, lsfd броји датотеке које одговарају филтер_изразу, и складишти избројани број у бројач под називом натпис. lsfd примењује филтере дефинисане опцијама --filter пре бројања; датотеке искључене филтерима се не броје.

Видите scols-filter(5) о изразу_филтера. натпис не треба да обухвати „{“ нити „:“. Можете да дефинишете више бројача навођењем ове опције више пута.

Видите такође ПРИМЕРИ БРОЈАЧА.

--summary[=when]

Ова опција контролише излаз сажетка редова. Опционални аргумент када може бити only, append ili never. Ако је аргумент када изостављен, подразумева се only.

Бројачи извештаја сажетка. Бројач се састоји од натписа и целобројне вредности. --counter је опција за дефинисање бројача. Ако корисник не дефинише бројач, lsfd користи дефиниције унапред девинисаних уграђених бројача (основни бројачи) да сачини излаз сажетка.

ОПРЕЗ: Коришћење --summary и --json може учинити излаз оштећеним. Исправно је само комбиновање --summary=only и --json.

--debug-filter

Исписује структуру унутрашњих података за филтер и излази. Ово је од користи само lsfd програмерима.

--dump-counters

Исписује дефиницију бројача коришћених у излазу --summary.

--hyperlink[=mode]

Print paths as terminal hyperlinks. The mode can be set to "always", "never", or "auto". The optional argument when can be set to "auto", "never", or "always". If the when argument is omitted, it will default to "auto". The "auto" setting means that hyperlinks will only be used if the output is on a terminal.

-H, --list-columns

Исписује доступне колоне које можете навести на опцији --output.

-h, --help

Приказује текст помоћи и излази.

-V, --version

Display version and exit.

КОЛОНЕ ИЗЛАЗА

Свака колона има врсту. Врсте су између < и >.

ОПРЕЗ: Називи и врсте колона нису стабилни још увек. Могу се изменити у будућим издањима.

AINODECLASS <ниска>

Класа анонимног и-чвора.

ПРИДРУ <ниска>

Придруживање између датотеке и процеса.

БЛКДРВ <ниска>

Назив уграђеног програма блок уређаја решеног од стране „/proc/devices“.

BPF-MAP.ID <број>

ИД бфп мапе.

БФП-МАПА.ВРСТА <ниска>

Дешифрован назив врсте „bpf“ мапе.

ВРСТА.БФП-МАПЕ.НЕОБРАЂЕНА <број>

Врста бфп мапе (необрађено).

БФП.НАЗИВ <ниска>

Назив бфп објекта.

ИД.БФП-ПРОГ <број>

ИД бфп програма.

BPF-PROG.TAG <string>

Bpf program TAG.

ВРСТА.БФП-ПРОГ <ниска>

Дешифрован назив врсте „bpf“ програма.

ВРСТА.БФП-ПРОГ.НЕОБРАЂЕНО <број>

Врста бфп програма (необрађено).

ЗНКДРВ <ниска>

Назив уграђеног програма знаковног уређаја решеног од стране „/proc/devices“.

НАРЕДБА <ниска>

Наредба процеса који отвара датотеку.

ОБРИСАНО <логичка>

Досежност са система датотека.

УРЕЂ <ниска>

ИД уређаја који садржи датотеку.

ВРСТАУРЕЂ <ниска>

Врста уређаја (blk, char, или nodev).

ENDPOINTS <string>

Информације IPC крајњих тачака комунициране описником датотека.

lsfd прикупља крајње тачке у процесима које lsfd скенира; lsfd може промашити неке крајње тачке ако ограничите процесе опцијом -p.

Формат колоне зависи од објекта придруженог са описником датотеке.

ПУПИ врста, врста м-реда, „ptmx“ и „pts“ извори

ПИД,НАРЕДБА,ПРИДРУЖ[-r][-w]

The last characters ([-r][-w]) represent the read and/or write mode of the endpoint.

врста описника датотеке догађаја

ПИД,НАРЕДБА,ПРИДРУЖ

UNIX-STREAM

ПИД,НАРЕДБА,ПРИДРУЖ[-r?][-w?]

О последњим знацима ([-r?][-w?]), видите опис за ПРИКЉ.ГАШЕЊЕ.

ИД_ОДДОГАЂАЈА <број>

ИД описника датотеке догађаја.

EVENTPOLL.TFDS <ниска>

Описници датотека нациљани „eventpoll“ датотеком.

ОД <број>

Описник датотеке за датотеку.

ЗАСТАВИЦЕ <ниска>

Заставице наведене приликом отварања датотеке.

ДУИД <број>

ИД број корисника власника датотеке.

ИНЕТ.ЛАДР <ниска>

Локална ИП адреса.

ИНЕТ.УАДР <ниска>

Удаљена ИП адреса.

ИНЕТ6.ЛАДР <ниска>

Локална ИП6 адреса.

ИНЕТ6.УАДР <ниска>

Удаљена ИП6 адреса.

И-ЧВОР <број>

Број и-чвора.

INOTIFY.И-ЧВОРОВИ <ниска>

Обрађено издање INOTIFY.INODES.RAW-а. Формат елемента је број-и-чвора,извор-и-чвора.

INOTIFY.И-ЧВОРОВИ.НЕОБРАЂЕНИ <ниска>

Списак и-чворова праћења. Облик елемента је број-и-чвора,главни-уређај:споредни-уређај.

НАЗИВ <ниска>

Сирови назив датотеке извучен из „/proc/“пид„/fd/“од или „/proc/“пид„/map_files/“регион.

КНИТ <логичка>

Да ли је процес нит кернела или није.

MAJ:MIN <ниска>

ИД уређаја за специјални, или ИД уређаја који садржи датотеку.

МАПДУЖ <број>

Дужина мапирања датотеке (у страници).

РАЗНУРЕЂ <ниска>

Назив разног знаковног уређаја ког решава „/proc/misc“.

ИДКЧЊА <број>

ИД качења.

РЕЖИМ <ниска>

Режим приступа (rwx).

НАЗИВ <ниска>

Обрађено издање КНАЗИВ-а. Углавном је исто као КНАЗИВ.

Неке датотеке имају посебне формате и изворе информација:

AF_VSOCK

state=SOCK.STATE type=SOCK.TYPE laddr=VSOCK.LADDR[ raddr=VSOCK.RADDR]

raddr is not shown for listening sockets.

бфп-мапа

ид=ИД.БФП-МАПЕ врста=ВРСТА.БФП-МАПЕ[ назив=БФП.НАЗИВ]

бфп-прог

id=BPF-PROG.ID type=BPF-PROG.TYPE tag= BPF-PROG.TAG [ name=BPF.NAME]

eventpoll

tfds=EVENTPOLL.TFDS

eventfd

ид=ИД.ОДДОГАЂАЈА

inotify

и-чворови=INOTIFY.И-ЧВОРОВИ

разно:тун

iface=TUN.IFACE

МРЕЖНАВЕЗА

protocol=NETLINK.PROTOCOL[ lport=NETLINK.LPORT[ group=NETLINK.GROUPS]]

ПАКЕТ

type=SOCK.TYPE[ protocol=PACKET.PROTOCOL][ iface=PACKET.IFACE]

pidfd

pid=TARGET-PID comm=TARGET-COMMAND nspid=TARGET-NSPIDS

lsfd ИЗВЛАЧИ TARGET-PID И TARGET-NSPIDS из „/proc/“пид„/fdinfo/“од.

ПИНГ

state=SOCK.STATE[ id=PING.ID][ laddr=INET.LADDR [ raddr=INET.RADDR]]

ПИНГв6

state=SOCK.STATE[ id=PING.ID][ laddr=INET6.LADDR [ raddr=INET6.RADDR]]

ptmx

tty-index=PTMX.TTY-INDEX

lsfd ИЗВЛАЧИ TARGET-PID И TARGET-NSPIDS из „/proc/“пид„/fdinfo/“од.

RAW

state=SOCK.STATE[ protocol=RAW.PROTOCOL [ laddr=INET.LADDR [ raddr=INET.RADDR]]]

RAWv6

state=SOCK.STATE[ protocol=RAW.PROTOCOL [ laddr=INET6.LADDR [ raddr=INET6.RADDR]]]

од_сигнала

mask=МАСКА.ОПСИГНАЛА

TCP, TCPv6

state=SOCK.STATE[ laddr=TCP.LADDR [ raddr=TCP.RADDR]]

timerfd

clockid=TIMERFD.CLOCKID[ преостало=TIMERFD.REMAINING [ период=TIMERFD.INTERVAL]]

UDP, UDPv6

state=SOCK.STATE[ laddr=UDP.LADDR [ raddr=UDP.RADDR]]

lsfd скрива „raddr=“ ако је UDP.RADDR „0.0.0.0“ и UDP.RPORT 0.

UDP-LITE, UDPLITEv6

state=SOCK.STATE[ laddr=UDPLITE.LADDR [ raddr=UDPLITE.RADDR]]

UNIX-STREAM

state=SOCK.STATE[ path=UNIX.PATH]

UNIX

state=SOCK.STATE[ path=UNIX.PATH] type=SOCK.TYPE

Знајте да су „(обрисани)“ означавачи уклоњени из ове колоне. Погледајте К-НАЗИВ, ОБРИСАНО, или X-РЕЖИМ да сазнате читљивост датотеке из вашег система датотека.

МРЕЖНАВЕЗА.ГРУПЕ <број>>

Мултикаст групе мрежне везе.

МРЕЖНАВЕЗА.ЛПРИКЉУЧНИК <број>>

Ид локалног прикључника мрежне везе.

МРЕЖНАВЕЗА.ПРОТОКОЛ <ниска>>

Протокол мрежне везе.

БВЕЗЕ <број>

Укупност везе.

НС.НАЗИВ <ниска>

Назив (NS.TYPE:[INODE]) називног простора наведеног датотеком.

НС.ВРСТА <ниска>

Врста називног простора наведеног датотеком. Врста је „mnt“, „cgroup“, „uts“, „ipc“, „user“, „pid“, „net“, „time“ или „unknown“.

ВЛАСНИК <ниска>

Власник датотеке.

ПАКЕТ.IFACE <ниска>

Назив сучеља придруженог са прикључницом пакета.

ПАКЕТ.ПРОТОКОЛ <ниска>

L2 protocol associated with the packet socket.

ПАРТИЦИЈА <ниска>

Назив блок уређаја како га решава „/proc/partition“.

ПИД <број>

ПИД процеса који отвара датотеку.

ОДПИД.НАРЕДБА <ниска>

Наредба процеса који је на мети „pidfd“-а.

ОДПИД.НСПИД <ниска>

Закон NSpid поља у „/proc/“pid„/fdinfo/“fd „pidfd“-а.

Цитирано из „кернела/fork.c“ стабла избора Линукса:

Ако су пид називни простори подржани, тада ће ова функција такође исписати пид датог „pidfd“-а на који се односи за све подређене пид називне просторе почевши од тренутног пид називног простора примерка, тј. Пид поље и први унос у „NSpid“ пољу биће истоветни.

Имајте на уму да се ово разликује од поља „Pid“ и „NSpid“ у „/proc/<пид>/статус“ где су Пид и НСпид увек приказани у односу на пид називни простор „procfs“ примерка.

ОДПИД.ПИД <број>

ПИД процеса који је на мети „pidfd“-а.

ПИНГ.ИД <број>

Ид захтева ICMP еха који се користи на PING прикључници.

ПОЛ <број>

Положај датотеке.

RAW.PROTOCOL <број>

Број протокола сирове прикључнице.

RDEV <ниска>

ИД уређаја (ако је посебна датотека).

МАСКА.ОПСИГНАЛА <ниска>

Маскирани сигнали.

ВЕЛИЧИНА <број>

Величина датотеке.

SOCK.LISTENING <логичка>

Прикључница ослушкивања.

SOCK.NETS <број>

И-чвор који одређује мрежни називни простор где прикључница пришпада.

SOCK.PROTONAME <ниска>

Назив протокола.

УТИЧ.ГАШЕЊЕ <ниска>

Стање гашења прикључнице.

[-r?]

Ако је први знак r, прихватања су дозвољена. Ако је -, прихватања нису дозвољена. Ако је ?, стање је непознато.

[-w?]

Ако је други знак w, преношења су дозвољена. Ако је -, преношења нису дозвољена. Ако је ?, стање је непознато.

SOCK.STATE <ниска>

Стање прикључнице.

SOCK.TYPE <ниска>

Врста прикључница. Овде врста значи други параметар системског позива прикључнице:

•stream

•dgram

•raw

•rdm

•seqpacket

•dccp

•пакет

ИЗВОР <ниска>

File system, partition, or device containing the file. For the association having ERROR as the value for TYPE column, lsfd fills this column with syscall:_errno_.

STTYPE <ниска>

Сирове врсте датотека које даје stat(2): BLK, CHR, DIR, FIFO, LINK, REG, SOCK, или UNKN.

TCP.LADDR <ниска>

Локална L3 (INET.LADDR или INET6.LADDR) адреса и локални TCP прикључник.

TCP.LPORT <број>

Локални TCP прикључник.

TCP.RADDR <ниска>

Удаљена L3 (INET.RADDR или INET6.RADDR) адреса и удаљени TCP прикључник.

TCP.RPORT <број>

Удаљени TCP прикључник.

ТИД <број>

ИД нити процеса који отвара датотеку.

ОДОДБРОЈАВАЧА.ИДСАТА <ниска>

ИД_сата.

ИДОДБРОЈАВАЧА.ПЕРИОД <број>

Интервал.

ИДОДБРОЈАВАЧА.ПРЕОСТАЛО <број>

Преостало време.

PTMX.TTY-INDEX <број>

TTY индекс дупликата.

TUN.IFACE <ниска>

Мрежно сучеље иза тун уређаја.

ВРСТА <ниска>

Обрађено издање STTYPE-а. Исто је као STTYPE са изузецима. За ПРИКЉ, исписује вредност за SOCK.PROTONAME. За НЕПОЗН, исписује вредност за AINODECLASS ако је ИЗВОР „anon_inodefs“.

If lsfd gets an error when calling a syscall to know about a target file descriptor, lsfd fills this column for it with ERROR.

UDP.LADDR <ниска>

Локална ИП адреса и локални UDP прикључник.

UDP.LPORT <број>

Локални UDP прикључник.

UDP.RADDR <ниска>

Удаљена ИП адреса и удаљени UDP прикључник.

UDP.RPORT <број>

Удаљени UDP прикључник.

UDPLITE.LADDR <ниска>

Локална ИП адреса и локални UDPLite прикључник.

UDPLITE.LPORT <број>

Локални UDP прикључник.

UDPLITE.RADDR <ниска>

Удаљена ИП адреса и удаљени UDPLite прикључник.

UDPLITE.RPORT <број>

Удаљени UDP прикључник.

УИД <број>

ИД број корисника.

UNIX.ПУТАЊА <ниска>

Назив путање система датотека за прикључницу ЈУНИКС домена.

КОРИСНИК <ниска>

Корисник процеса.

VSOCK.LADDR <string>, VSOCK.RADDR <string>

Local VSOCK address. The format of the element is VSOCK.LCID:VSOCK.LPORT.

Well-known CIDs will be decoded: “*”, “hypervisor”, “local”, or “host”. Well-known ports will be decoded: “*”.

VSOCK.LCID <number>, VSOCK.RCID <number>

Local and remote VSOCK context identifiers.

VSOCK.LPORT <number>, VSOCK.RPORT <number>

Local and remote VSOCK ports.

X-РЕЖИМ <ниска>

Проширено издање РЕЖИМ-а. Ова колона може нарасти; нова слова се могу придодати на X-РЕЖИМ када lsfd подржава ново стање описника датотеке и/или мапирања меморије.

[-r]

отворено мапираног за читање. Ово је такође у РЕЖИМ-у.

[-w]

отворено мапираног за писање. Ово је такође у РЕЖИМ-у.

[-x]

мапирано за извршавање кода. Ово је такође у РЕЖИМУ.

[-D]

избрисано из система датотека. Видитњ такође ОБРИСАНО.

[-Ll]

закључан или закупљен. l представља читање, дељено закључавање или закуп читања. L представља писање или изричито закључавање или закуп писања. Ако су и читање/дељено и писање/изричито закључавање или закуп узети од стране описника датотеке, L се користи као заставица.

[-m]

Мултиплексирано. Ако је описник датотеке циљан „eventpoll“ датотеком или класичним системским позивима за мултиплексирање (select, pselect, poll, и ppoll), ова заставица бита је постављена. Знајте да ако је позивање класичних системских позива прекинуто, lsfd неће успети да означи m на описницима датотека које је надгледало позивање. Видите restart_syscall(2).

ПРИМЕРИ ФИЛТЕРА

lsfd има неколико опција за филтрирање. У већини случајева, треба да знате за -Q (или --filter) опцију. Комбиноване са -o (или --output) опцијом, можете да прилагодите излаз како желите.

Исписује датотеке придружене са ПИД 1 и ПИД 2 процесима:

# lsfd -Q '(PID == 1) или (PID == 2)'

Ради исто на другачији начин:

# lsfd -Q '(PID == 1) || (PID == 2)'

Ради исто на делотворнији начин:

# lsfd --pid 1,2

Whitespaces can be used instead of a comma:

# lsfd --pid '1 2'

Користи pidof(1) за списак датотека придружених са „firefox“:

# lsfd --pid "$(pidof firefox)"

Исписује 1° описник датотеке отворен ПИД 1 процесом:

# lsfd -Q '(PID == 1) и (FD == 1)'

Ради исто на другачији начин:

# lsfd -Q '(PID == 1) && (FD == 1)'

Исписује све покренуте извршне:

# lsfd -Q 'ASSOC == "exe"'

Ради исто на другачији начин:

# lsfd -Q 'ASSOC eq "exe"'

Чини исто али исписује само називе датотека:

# lsfd -o NAZIV -Q 'ASSOC eq "exe"' | sort -u

Исписује обрисане датотеке придружене процесима:

# lsfd -Q 'DELETED'

Исписује не-регуларне датотеке:

# lsfd -Q 'TYPE != "REG"'

Исписује блок уређаје:

# lsfd -Q 'DEVTYPE == "blk"'

Чини исто са колоном ВРСТА:

# lsfd -Q 'TYPE == "BLK"'

Исписује датотеке укључујући „dconf“ директоријум у њиховим називима:

# lsfd -Q 'NAME =~ ".\*/dconf/.*"'

Исписује датотеке отворене у QEMU виртуелној машини:

# lsfd -Q '(COMMAND =~ ".\*qemu.*") и (FD >= 0)'

Исписује датотеке описника датотека одбројавача истеклих за 0.5 секунде:

# lsfd -Q '(TIMERFD.преостало < 0.5) и (TIMERFD.преостало > 0.0)'

List processes communicating via unix stream sockets:

# lsfd  -Q 'TYPE == "UNIX-STREAM" && UNIX.PATH =~ ".+"' -oUNIX.PATH,PID,COMMAND,FD,SOCK.STATE,ENDPOINTS

List processes communicating via a specified unix stream socket:

# lsfd  -Q 'TYPE == "UNIX-STREAM" && UNIX.PATH == "@/tmp/.X11-unix/X0"' -oUNIX.PATH,PID,COMMAND,FD,SOCK.STATE,ENDPOINTS

ПРИМЕРИ БРОЈАЧА

Извештава о броју описника прикључнице мрежне везе и о описницима јуникс прикључнице:

# lsfd --summary=only \

-C 'netlink sockets':'(NAME =~ "NETLINK:.*")' \
-C 'unix sockets':'(NAME =~ "UNIX:.*")' БРОЈАЧ ВРЕДНОСТИ
57 netlink sockets
1552 unix sockets

Чини исто али исписује у ЈСОН запису:

# lsfd --summary=only --json \

-C 'netlink sockets':'(NAME =~ "NETLINK:.*")' \
-C 'unix sockets':'(NAME =~ "UNIX:.*")' {
"lsfd-summary": [
{
"value": 15,
"counter": "netlink sockets"
},{
"value": 798,
"counter": "unix sockets"
}
] }

ИСТОРИЈАТ

Наредба lsfd је део „util-linux“ пакета још од v2.38.

АУТОРИ

Masatake YAMATO <yamato@redhat.com>, Karel Zak <kzak@redhat.com>

ПОГЛЕДАЈТЕ ТАКОЂЕ

bpftool(8), bps(8), lslocks(8), lsof(8), pidof(1), proc(5), scols-filter(5), socket(2), ss(8), stat(2), vsock(7)

ПРИЈАВЉИВАЊЕ ГРЕШАКА

For bug reports, use the issue tracker <https://github.com/util-linux/util-linux/issues>.

ДОСТУПНОСТ

Наредба lsfd је део пакета „util-linux“ који се може преузети са Архиве Линукс кернела <https://www.kernel.org/pub/linux/utils/util-linux/>.

2025-04-09 util-linux 2.41