매뉴얼 페이지를 읽은 후에 그것이 수행하는 작업에 대한 설명을 찾을 수 없습니다(추가 옵션).
usermod -L -e 1 사용자 이름
-e 1
이것은 리눅스 시대의 1970년 1월 1일 이후를 의미합니까? 어디에도 문서화되어 있지 않은데 어떻게 이것을 알 수 있습니까?
답변1
당신 말이 맞아요. 그 가치는 일 단위로 측정됩니다.
~에서usermod(8)
매뉴얼 페이지:
-e, --expiredate EXPIRE_DATE
사용자 계정이 비활성화되는 날짜입니다. 날짜는 형식으로 지정됩니다.년 월 일.
하지만 더 많은 정보가 있습니다shadow(5)
매뉴얼 페이지:
계정 만료일
계정의 만료 날짜로, 계정 수로 표시됩니다.1970년 1월 1일 이후의 일수.
계정 만료는 비밀번호 만료와 동일하지 않습니다. 계정이 만료되면 사용자는 로그인할 수 없습니다. 비밀번호가 만료되면 사용자는 자신의 비밀번호를 사용하여 로그인할 수 없습니다.
빈 필드는 계정이 만료되지 않음을 의미합니다.
값 0은 만료 날짜가 없거나 만료 날짜가 1970년 1월 1일인 계정으로 해석되므로 사용해서는 안 됩니다.
이 판독값을 확인할 수 있습니다.소스 usermod.c
코드:
case 'e':
if ('\0' != *optarg) {
user_newexpire = strtoday (optarg);
답변2
당신의 추측이 맞는 것 같습니다.
이를 확인하려면 소스 코드를 읽어야 합니다.
- 내 데비안 컴퓨터에서는 이것이 패키지의 일부라고
dlocate
말합니다 .usermod
passwd
- 이 패키지의 파일은
README
다음에서 찾아볼 수 있는 SVN 저장소를 나타냅니다.http://svn.debian.org/wsvn/pkg-shadow/upstream - 이 저장소에서는src/usermod.c및의
strtoday
옵션 값을 처리하기 위해 호출됩니다.-e
strtoday
에 있습니다libmisc/strtoday.c, 다음과 같은 댓글이 있습니다.
/* 값이 제공되면 이는 이미 숫자입니다. * EPOCH 이후의 일수입니다. */