일시 중단된 동안 동기화를 활성화하는 방법은 무엇입니까?

일시 중단된 동안 동기화를 활성화하는 방법은 무엇입니까?

Linux Mint를 실행하는 컴퓨터에 이상한 문제가 발생했습니다. 가끔 컴퓨터가 잠자기 모드에서 깨어나지 않는 경우가 있습니다. 간단히 말해서, 무엇이 잘못되었는지 이해한 것 같습니다. 일종의. 적어도 나는 그것을 고치는 방법을 알고 있습니다. 또한 조금

어떤 이유에서인지 이해가 되지 않습니다. sync컴퓨터를 일시 중지하기 전에 이 작업을 수행하면 컴퓨터가 항상 깨어납니다. 이제 컴퓨터를 일시 중지하고 싶을 때 터미널에 다음을 입력합니다.

sudo sh -c "sync && pm-suspend"

내가 말했듯이 작동합니다(100번 이상 확인했습니다. 그렇지 않은 경우 sync약 15번의 수면 회복 주기 후에 컴퓨터가 깨어나지 않으므로 100번 정도이면 충분합니다). 하지만 컴퓨터를 일시 중지하면 컴퓨터는 비밀번호를 입력해야 하며( pm-suspend루트 권한이 필요하기 때문에) 자동으로 일시 정지할 수 없습니다(내 컴퓨터는 일정 시간이 지나면 자동으로 일시 정지되므로 전력을 낭비하지 않습니다). 이제 내 질문은 - 컴퓨터가 sync멈추기 전에 자동으로 작업을 수행하도록 하려면 어떻게 해야 합니까?

저는 제가 생각할 수 있는 가장 간단한 해결책을 시도했습니다. 즉, .bashrc내 파일(물론 루트 파일도 포함)에 간단한 별칭을 추가하는 것입니다. 그래서 파일 끝에 다음 명령을 추가했습니다.

alias pm-suspend='sync && pm-suspend'

그러나 이것은 작동하지 않습니다. 확인해 보니 문제를 해결하기 위해 아무 조치도 취하지 않은 것 같습니다.

그래서 인터넷을 좀 뒤져보니 흥미로운 사실을 발견했습니다.일시 중지가 자동이었던 때가 있었던 것으로 밝혀졌지만 syncLinux 커널에서는 선택 사항입니다.반품,sync명령 호출 여부를 제어하는 ​​파일이 있습니다 .이 사이트(문서?)를 무엇이라고 불러야 할지 잘 모르겠지만, 두 번째 링크의 인용문은 다음과 같습니다.

    /sys/power/sync_on_suspend

    Description:
    This file controls whether or not the kernel will sync()
    filesystems during system suspend (after freezing user space
    and before suspending devices).

    Writing a "1" to this file enables the sync() and writing a
    "0" disables it.  Reads from the file return the current value.
    The default is "1" but can be configured with the build-time
    config flag "SUSPEND_SKIP_SYNC".

나는 이것에 대해 약간 멍청하지만 올바르게 이해하면 컴파일 플래그 "SUSPEND_SKIP_SYNC"가 있지만 커널을 수동으로 컴파일할 때만 설정할 수 있습니다. 내가 맞나요? 또한, 거기에 언급된 파일은 제 시스템에 없습니다. 수동으로 생성하려고 했지만 할 수 없습니다. 제가 올바르게 이해했다면 에서 생성할 수도 없어야 합니다 /sys. 이것도 맞습니까? 그렇다면 자동 일시 중단 sync기능을 어떻게 활성화합니까?

이제 그만 두겠습니다. 다음에 무엇을 해야 할지, 무엇을 확인해야 할지 잘 모르겠습니다. 나는 Linux와 Unix에 대한 경험과 지식이 부족하다고 생각하므로 도움을 주시기 바랍니다. 미리 감사드립니다!

답변1

아니요, 인용한 텍스트에 따르면 a를 작성하면 1커널 /sys/power/sync_on_suspend을 다시 컴파일하지 않고도 일시 중지 시 동기화가 활성화됩니다. 이는 루트로 다음 명령을 실행하는 것만큼 간단합니다.

echo 1 > /sys/power/sync_on_suspend

또는 액세스 권한이 있는 루트가 아닌 사용자로서 다음을 수행합니다 sudo.

echo 1 | sudo tee /sys/power/sync_on_suspend > /dev/null

부팅 시 실행되도록 쉘 스크립트를 작성하거나 동일한 작업을 수행하기 위해 시스템 장치 파일을 작성하는 등 부팅 시 자동으로 발생하도록 설정하는 방법에는 여러 가지가 있습니다.

관련 정보