Як скасувати поточно застосований тайм-аут, що залишився?


38

Коли я просто запустив sudoі не хочу, щоб він залишався активним протягом нормальної тривалості його тайм-ауту, як я можу скасувати цей залишився активний тайм-аут?

sudo -k вбиває його для поточного сеансу терміналу, але якщо в даний час процес запущений у цьому сеансі і тому не може запуститися sudo -k, чи є спосіб скасувати його з іншого сеансу терміналу?

І чи є спосіб скасувати всі застосовані в даний час sudoчаси (для всіх термінальних сеансів, і для всіх запущених програм gksudo тощо)?

Хоча, подумайте про це, можливо, потрібно буде просто закрити запущений графічний інтерфейс, але я просто перевірив, чи Alt+ F2підтримує gksu активним для наступних викликів.

Відповіді:


38

Не впевнений, якщо ви хочете вбити тайм-аут sudo, щоб він не вичерпав час, або якщо він не закінчується негайно, але якщо ви хочете видалити решту часової позначки, ви можете використовувати sudo -k

Інакше, якщо ви намагаєтесь скасувати тайм-аут, щоб sudo не закінчився, я не думаю, що це можливо зробити в поточному сеансі. Єдиний спосіб я знаю, було б змінити timestamp_timeoutв sudoersфайлі і перезапустити сеанс.


oops .. Я трохи повільно ставився до деталей: я просто додав ще трохи до свого питання .. про "-k" ... і, так, я маю на увазі одноразову ситуацію, хоча це тепер приносить підняти випуск загальносистемного "разового". ... Дякую (+1) за відповідь, який був ідеальним для мого запитання oringinaL (бракує деталей) ..
Peter.O

1
Я не зовсім розумію, -Kчим практично відрізняється -k(коли -k використовується itseld) .., але -kмає подвійне використання: 1. сам по собі (недійсний часовий знак ) ... 2. при використанні з командою він запит на введення пароля, незалежно від того, чи минув попередній час очікування sudo ..... І до речі: sudo -k працює в Alt + F2, щоб вбити часову позначку попереднього дзвінка sudo / gksu.
Пітер.O

Так, я не маю уявлення, коли я буду використовувати один над іншим.
wajiw

Крім проблеми "знищити всі існуючі часові позначки" .... Без зміни базових налаштувань судорів єдиним способом я бачу запускати "гарантоване" одноразове судо - це sudo -k; sudo -k appname.... тому що, хоча sudo -k appnameпримушує користувача введіть пароль, він залишає попередньо встановлену часову позначку незмінною ... (я згадую це лише як "griss to the mill") ... і, можливо, найпростіший спосіб "вбити" всі існуючі часові позначки - це просто уникнути проблеми повністю і натисніть Ctrl + Alt + L, щоб заблокувати екран. :)
Peter.O

ха-ха, якщо у вас є можливість, я б пішов з цим варіантом
wajiw

8

Просто в одному з ваших пунктів:

але якщо в цей час сеанс працює в цьому сеансі і тому не може запустити sudo -k

Це характерно для командного рядка, якщо ви хочете зробити що-небудь під час виконання якогось іншого процесу, ви можете натиснути Ctrl+, Zщоб призупинити процес; Ви знову отримуєте доступ до поточного терміналу, робіть все, що завгодно. Закінчивши, ви можете ввести jobsсписок процесів з номером поруч. Введіть fg 1(наприклад, і просто, fgякщо є лише одне завдання), щоб перезапустити процес, піднявши його на перший план. Аналогічно bgзробити те ж саме, але не залишаючи процес працювати у фоновому режимі.

Приклад сеансу

$ sudo apt-get install hello
<CTRL+Z>
[1]+  Stopped    sudo apt-get install hello
$ sudo -k
$ jobs
[1]+  Stopped    sudo apt-get install hello
$ fg 1
Loading database...
....

1
Стефано: Дякую ... це так добре ... Linux продовжує говорити мені: "Так, я, звичайно, можу це зробити" :) ... і, подумайте про це, я був до кінця усвідомлений той Ctrl + Z, але половини недостатньо!) ... Тепер, коли я пережив "реальну" ситуацію, коли це не просто текст на екрані, я впевнений, що я його ніколи не забуду ... треба йти .. У мене є кілька Cntrl + Z-ing зробити ...
Пітер.O

2

Я знайшов рішення. оскільки мій пошук не показав нічого подібного, і це часте питання: sudo зберігає десь у файловій системі (наприклад, в / var / run / sudo), один каталог на ім’я користувача, кілька файлів, які працюють як штамп часу , один файл для кожного терміналу. видаліть ці файли, і ваша система знову захищена. просто майте на увазі, що ці файли видно лише корінню (інакше зловмисник може прочитати позначку часу і встановити годинник назад до точки, коли вони все ще були дійсними - надання root-ls кому-небудь небезпечно). тому в моєму / etc / pm / сон /, а може бути, і для заставки:

rm -f /var/db/sudo/*/*

як корінь звичайно ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.