Нуждаете се от помощ при блокирани/нежелани потребителски сесии на Linux? Ето как да ги прекратите и системата ви да работи гладко и сигурно.
За потребителите на Linux срещата с блокирани или нежелани потребителски сесии може да бъде разочароващо изживяване. В същото време тези сесии могат да изложат вашата система на потенциални рискове, оставяйки я уязвима за неоторизиран достъп или пробиви на данни.
Така че, независимо дали са причинени от неправилно работещи приложения, системни проблеми или потребителски грешки, тези продължителни сесии могат да попречат на производителността и да компрометират сигурността и производителността на системата.
Но не се страхувайте; тази статия има за цел да ви предостави знания и инструменти, за да си възвърнете контрола и да поддържате гладко работеща Linux система. Като научите правилните методи за справяне с тези ситуации, можете да осигурите по-сигурна компютърна среда и да защитите ценните си данни.
Преди да продължим обаче, трябва да изясним значението на два термина, TTY и PTS, които са пряко включени в прекратяването на потребителска сесия в Linux.
Какво представляват TTY и PTS в Linux?
В Linux както „PTS“, така и „TTY“ се отнасят за различни терминални устройства, използвани за комуникация между потребителя и операционната система. Те служат като интерфейси за въвеждане на команди и получаване на изход от системата.
TTY (телетайп)
„TTY“ първоначално означава Teletype, устройство, подобно на пишеща машина, използвано за въвеждане и извеждане в ранните дни на компютрите.
В съвременните Linux системи TTY представлява физическа или виртуална конзола, където потребителите могат да взаимодействат директно със системата.
PTS (псевдотерминален подчинен)
PTS означава Pseudo-Terminal Slave. Това е виртуален терминал, който емулира хардуерен терминал, но не е директно свързан с физическо устройство.
Вместо това системата го създава и управлява, за да поддържа терминално мултиплексиране, отдалечени влизания и различни интерактивни приложения.
Например, обикновено използвате псевдотерминал, когато използвате приложения за емулатор на терминал, като терминала на GNOME или Konsole на KDE, за да получите достъп до обвивката на вашата Linux система.
Тези емулатори действат като „главна“ страна на псевдо-терминала, докато черупката или процесът, изпълняван в терминала, действа като „подчинена“ страна.
Когато отворите няколко терминални прозореца или раздела, всеки съответства на отделен PTS. Например, ако отворите три терминални прозореца, те може да бъдат идентифицирани като /dev/pts/0, /dev/pts/1и /dev/pts/2.
В обобщение, както TTY, така и PTS са терминални устройства в Linux, които позволяват на потребителите да взаимодействат с операционната система. TTY представлява физически или виртуални конзоли, докато PTS се използва за терминални емулатори и предоставя допълнителна функционалност за мултиплексиране и отдалечени влизания.
С така направените уточнения вече можем да преминем към основната тема.
Как да прекратите блокирани/нежелани потребителски сесии в Linux
Можете да постигнете това по два начина, така че ще разгледаме всеки по-долу.
Прекратяване на потребителска сесия чрез TTY
Ние ще използваме w
команда за получаване на информация за влезли потребители в нашата Linux система. Той показва информация за текущо влезлите потребители и техните дейности.
Когато стартирате w
команда, тя предоставя обобщение на следните подробности за всеки потребител:
- ПОТРЕБИТЕЛ: Потребителското име на влезлия потребител.
- TTY: Името на терминала или устройството, свързано със сесията на потребителя (напр. /dev/tty1, pts/0).
- ОТ: Отдалеченият хост или IP адресът, от който потребителят е влязъл. Ако потребителят е влязъл локално, той ще покаже името на TTY или „–” символ.
- ВЛИЗАМ@: Датата и часът, когато потребителят е влязъл.
- ПРАЗЕН: Продължителността на неактивност за сесията на потребителя. Ако потребителят използва активно терминала, той ще покаже вместо това „стар“.
- JCPU: Общото процесорно време, използвано от всички процеси, свързани със сесията на потребителя.
- PCPU: Времето на процесора, използвано от текущия процес на потребителя.
- КАКВО: Командата, изпълнена от потребителя или процеса, свързан с терминала.
Ето примерен изход на w
команда:
Както можете да видите от изхода на примера по-горе, има трима регистрирани потребители – двама локално и един отдалечено.
За да прекратите потребителската сесия на отдалечено влезлия потребител „linuxiac”, ще използваме pkill
команда в Linux с опцията „-УБИЙ”, което означава, че процесът на Linux трябва да бъде прекратен незабавно (не елегантно). Използвай “-T”, за да посочите името на TTY.
pkill -KILL -t pts/1
Това е всичко. Както се вижда от повторна проверка с w
команда, сесията на потребителя към нашата система се прекратява незабавно.
Прекратяване на потребителска сесия чрез ID на процес
Вторият подход, който ще ви покажем, използва прекратяване на потребителска сесия чрез идентификатор на процес. За да направим това, ние изпълняваме w
команда отново, за да получите списък с влезли потребители заедно със свързаните с тях TTY/PTS.
След това, след като сме идентифицирали TTY/PTS сесията, използвайте ps
команда с „-ft”, за да намерите неговия PID:
ps -ft [TTY/PTS]
Накрая използвайте kill
команда с „-9” (безусловно прекратяване на процес) превключвател, предаващ идентификатора на процеса. Например:
kill -9 4374
В резултат потребителската сесия се прекратява моментално.
Заключение
Знанието как да прекратите блокирани или нежелани потребителски сесии е от съществено значение в сферата на системното администриране на Linux. В тази статия проучихме два ефективни метода за изпълнение на тази задача: TTY/PTS или идентификатор на процес.
Подходът TTY/PTS предоставя директни средства за прекратяване на потребителски сесии. От друга страна, прекратяването на сесии чрез идентификатор на процес предлага по-прецизен и директен метод; кой от двата подхода да използвам? Решението зависи изцяло от вас.
Не забравяйте, че внимаването е от първостепенно значение, независимо дали избирате подхода TTY/PTS или метода на ID на процеса. Уверете се, че сте прекратили правилната потребителска сесия или процес, за да предотвратите случайна загуба на данни или нежелани последствия.
Нуждаете се от повече подробности? Проверете pkill
и на kill
команди man страници.
Публикациите се превеждат автоматично с google translate