하루 중 특정 시간 동안 도메인을 로컬로 리디렉션(예: /etc/hosts)

하루 중 특정 시간 동안 도메인을 로컬로 리디렉션(예: /etc/hosts)

여러분. 생산성을 높이기 위해 하루 중 시간 단위로 특정 웹사이트를 선택적으로 차단하거나 리디렉션하고 싶습니다. 나는 이미 /etc/hosts에서 일부 사이트를 완전히 차단했지만 특정 기간 동안만 차단을 활성화하는 것은 나를 피했습니다.

보너스: 또한 기본 도메인을 차단하고 내부의 특정 페이지는 허용하고 싶습니다. 예: reddit.com을 차단하지만 reddit.com/r/javascript는 허용합니다.

당신이 제공할 수 있는 도움에 감사드립니다!

답변1

어쩌면 다음과 같은 방법으로 문제가 해결될 수도 있습니다. http://www.getconcentating.com/?

답변2

@smw의 답변이 귀하의 솔루션인 것처럼 보이지만 만족을 위해서만 "직접 롤링"하는 것과 같은 것은 없습니다.

위의 의견을 바탕으로 원하는 권한을 제공하는 /etc/hosts 파일을 만들 수 있다고 가정합니다. 위와 worktimeHosts같이 전화를 걸겠습니다 playtimeHosts. 이제 둘 중 하나를 활성 파일로 설정하는 스크립트가 필요합니다. 이는 /etc/hosts를 다른 곳으로 옮겼다고 가정합니다.

스크립트 하나를 만듭니다.

#!/bin/bash
rm /etc/hosts
ln -s /etc/worktimeHosts /etc/hosts

다른 이름으로 저장하고 /usr/bin/getWorking실행 권한을 설정하세요.chmod 755 /usr/bin/getWorking

이제 두 번째 스크립트를 만듭니다.

#!/bin/bash
rm /etc/hosts
ln -s /etc/playtimeHosts /etc/hosts

다른 이름으로 저장하고 /usr/bin/getPlaying이전과 같이 권한을 설정하십시오.

/etc에 있는 파일에 대해 이러한 작업을 수행할 수 있는 권한이 있는지 확인해야 합니다.

이제 cron테이블을 편집하십시오(예를 참조하십시오).여기)

`crontab -e`

다음과 같은 줄을 추가합니다.

00 00 08 * * /usr/bin/getWorking

그리고 다음과 같은 또 다른 줄은 다음과 같습니다.

00 00 17 * * /usr/bin/getPlaying

내 생각엔 이것이 해결책에 가깝다고 생각합니다. 하지만 아직 테스트해 본 적이 없으니, 가지고 놀면서 오류를 찾아보세요...

답변3

(이것은 'osx'로 태그가 지정되었으므로 'OS X 전용' 솔루션이 허용될 것이라고 가정합니다.)

  1. 아이러니하게도 이름이 붙은자기 통제이것을 할 수 있습니다. 이를 통해 허용하거나 차단할 "화이트리스트" 또는 "블랙리스트" 사이트를 정의하고 만료 시간 제한을 설정할 수 있습니다. 무료이며,소스 코드를 사용할 수 있습니다.

  2. 또한 있습니다맥프리덤비슷한 일을하는 $ 10입니다. 있다무료 평가판 사용 가능.

(과거에 두 가지를 모두 사용했지만 둘 중 하나와도 연결되지 않았습니다.)

참고: 경험에서 나온 말을 하자면, 실수할 경우를 대비해 시간 제한을 너무 길게 설정하지 않는 것이 좋습니다. 그것은매우 매우제한 시간이 만료되기 전에 이를 "실행 취소"하기가 어렵습니다. (심심해지면 '실행 취소'할 수 있는 다른 솔루션의 잠재적인 문제는 무엇입니까? 그럴 수도 있습니다!)

관련 정보