trap

.bashenv에서 shopt extdebug 사용
trap

.bashenv에서 shopt extdebug 사용

저는 Linux용 Windows 하위 시스템 내에서 Ubuntu를 사용하고 있습니다. 이 제안된 방법으로답변새로운 비대화형 셸을 시작할 때 코드를 실행할 수 있습니다. $ cat ~/.bashenv if [[ $- != *i* ]]; then echo foo fi $ export BASH_ENV=~/.bashenv $ bash -c 'echo bar' foo bar 이제 shopt extdebug의 트랩 기능을 활성화하려고 합니다. 나는 다음과 같은 것을 시도했습니다 : $ cat ~/.bash...

Admin

서브셸 및 신호 전파
trap

서브셸 및 신호 전파

서브쉘에서의 신호 전파가 궁금합니다. 다음 bash 스크립트가 있습니다. #!/bin/bash function test_trap() { echo "hello" } trap 'test_trap' SIGUSR2 (#subshell trap 'test_trap' SIGUSR2 some_command ) other commands 그런 다음 SGE 그리드 엔진을 사용하여 이를 그리드에 제출합니다. 문제는 작업을 취소하면 SGE가 작업에 SIGUSR2 신호를 보낸 다음 미리 구성된 시간이 지난 후(...

Admin

Xen은 게스트 운영 체제에 의해 설치된 예외 처리기를 어떻게 확인합니까?
trap

Xen은 게스트 운영 체제에 의해 설치된 예외 처리기를 어떻게 확인합니까?

논문의 일부를 이해하지 못함Xen과 가상화 기술. 가상화 예외 처리(섹션 2.1.2) 주제에 대해 문서에서는 각 게스트 운영 체제가 예외가 발생할 때 실행하려는 핸들러에 테이블 매핑 예외를 등록한 후 다음을 수행할 수 있다고 명시합니다. Xen에 제공되는 예외 처리기의 유효성을 검사하여 보안이 보장됩니다. 확인해야 할 유일한 것은 핸들러의 코드 세그먼트가 링 0에서 실행되도록 지정되지 않았다는 것입니다. 어떤 게스트 운영 체제도 이러한 세그먼트를 생성할 수 없으므로 지정된 세그먼트 선택기를 Xen이...

Admin

프로세스가 종료되었음을 알리는 대신 "trap"이 0을 전달하는 이유는 무엇입니까?
trap

프로세스가 종료되었음을 알리는 대신 "trap"이 0을 전달하는 이유는 무엇입니까?

다음을 고려하세요: #!/bin/bash trap 'echo $?' INT kill -INT $$ 산출:0 여기서 나는 130내 시스템을 기대합니다. 물론 내가 a를 했다면 Ctrl + C나는 130. HUP또는 같은 다른 신호에서도 마찬가지입니다 TERM. trap많은 신호를 포착하는 설정이 있는 경우 핸들러가 호출된 신호에 대한 올바른 오류 코드로 종료할 수 없기 때문에 이 동작이 놀랍습니다 . #!/bin/dash exit_abrupt() { exit_code=$? echo ...

Admin

Bash 스크립트에서 서스펜스(ctrl-z)를 지우는 방법은 무엇입니까?
trap

Bash 스크립트에서 서스펜스(ctrl-z)를 지우는 방법은 무엇입니까?

다음 스크립트가 있습니다. suspense_cleanup () { echo "Suspense clean up..." } int_cleanup () { echo "Int clean up..." exit 0 } trap 'suspense_cleanup' SIGTSTP trap 'int_cleanup' SIGINT sleep 600 실행하고 를 누르면 표시 Ctrl-C되고 Int clean up...종료됩니다. Ctrl-Z그런데 을 누르면 ^Z문자가 화면에 나타났다가 멈춥니다. 내가 어...

Admin

armv7l 커널에는 어떤 debian ARCH를 사용해야 하나요?
trap

armv7l 커널에는 어떤 debian ARCH를 사용해야 하나요?

debootstrap --arch=ARCH stable debian-stable http://ftp.debian.org/debian/ debootstrap스키마를 설정해야 합니다. 데비안은 ARM 32비트 아키텍처 제품군을 지원합니다 armel. 리눅스는 armhf어느 것을 선택해야 합니까 armv7l? (보편적으로 지원되는 경우) ...

Admin

Raspberry Pi OS(ARM64)용 pBuilder chroot 환경 생성
trap

Raspberry Pi OS(ARM64)용 pBuilder chroot 환경 생성

AMD64 호스트에서 Raspberry Pi 4B/3B용 Debian 패키지를 빌드하기 위해 Raspberry Pi OS(ARM64)용 pBuilder chroot 환경을 만들려고 합니다. 관련성이 있는 것으로 보이는 튜토리얼을 찾았습니다.https://jod.al/2015/03/08/building-arm-debs-with-pbuilder/. 그러나 오래된 것 같으며 업데이트된 리소스를 찾을 수 없습니다. 빌드 환경을 설정하기 위해 저는 이 조사의 모든 후속 단계에서 사용할 Vagrant 상자를 사...

Admin

업그레이드 실패 후 디스크를 지우지 않고 복구 모드를 통해 전체 데비안을 재설치/복구하는 방법은 무엇입니까?
trap

업그레이드 실패 후 디스크를 지우지 않고 복구 모드를 통해 전체 데비안을 재설치/복구하는 방법은 무엇입니까?

나는 팔로우한다이 위키Debian 10을 11로 업그레이드한 다음 12로 업그레이드하려고 시도했지만 어떤 이유로 시스템이 엉망이 되어 부팅할 수 없으며(커널 패닉) 전체 시스템이 엉망입니다: available apt, available vi등. Debian 12 설치 프로그램을 사용하여 문제를 해결하려고 하며 복구 모드를 사용하여 OS를 다시 설치하려고 합니다. 내가 시도한 것은 다음과 같습니다. 부팅 디스크를 사용하여 복구 모드로 부팅하고 최소 종속성을 설치하려고 시도했지만 apt작동하지 않았습니...

Admin

Debian을 설치하는 스크립트에 UEFI 문제가 있고 컴퓨터 전체에서 일관되지 않은 동작이 있습니다.
trap

Debian을 설치하는 스크립트에 UEFI 문제가 있고 컴퓨터 전체에서 일관되지 않은 동작이 있습니다.

내 목적을 위해 나는 스크립트를 실행하는 모든 컴퓨터의 하드 드라이브에 사용자 정의 데비안 시스템을 자동으로 설치하는 스크립트를 작성하고 있습니다. 이 스크립트는 모든 라이브 Linux 배포판에서 사용되도록 설계되었습니다. 저는 데비안 프리팹에 대해 알고 있습니다. 불행하게도 이 경우 프리팹은 실행 가능한 솔루션이 아닙니다. 스크립트가 작동합니다. 그러나 일관되게 작동하지 않습니다. 일부 컴퓨터(예: 2011 Macbook Air)에서는 새로운 EFI 구성이 문제 없이 업데이트됩니다. 그러나 일부 컴...

Admin

프로세스가 자체적으로 종료되도록 SIGINT를 캡처합니다.
trap

프로세스가 자체적으로 종료되도록 SIGINT를 캡처합니다.

그래서 5절이 나옵니다.여기그것은 나에게 의미가 있으며 그것을 구현하고 싶습니다. 이 bash 스크립트가 있습니다 #!/usr/bin/env bash cp aux.sh aux.sh.bak cleanup() { cp aux.sh.bak aux.sh rm -rf aux.sh.bak } trap 'cleanup; trap - SIGINT; kill -s SIGINT "$$"' SIGINT trap cleanup EXIT echo "Hold this for now" >> au...

Admin

하위 tmux 프로세스에서 트랩을 사용하는 방법은 무엇입니까?
trap

하위 tmux 프로세스에서 트랩을 사용하는 방법은 무엇입니까?

하위 tmux 프로세스가 종료되면 함수를 실행하고 싶습니다. 다음 스크립트를 고려해보세요. #!/bin/bash function foo { echo "foo exit" } trap foo SIGHUP tmux 이 스크립트는 tmux를 시작합니다. 그런 다음 tmux 세션 내에서 다음을 실행합니다. $ tmux kill-session 그런 다음 tmux가 닫히고 다음이 표시됩니다. [exited] 함수가 foo호출되지 않았습니다. 상위 프로세스가 SIGHUP 신호를 수신하지 않았기 때문인...

Admin