sudo & 공식 서버로 비어있음
개시하다
이것은 올해 초에 발생한 일이다.
제목과 같이 sudo 명령어와 ● 정식 서버가 비어 있습니다.
실제로 실행된 명령은 다음과 같다.
sudo rm /*
원래 실행하려고 했던 명령은 다음과 같다.sudo rm /aaa/bbb/ccc/*
내가 실시하고 집행하고 평론하는 사람은 아니지만상상을 초월하는 시간이 걸렸기 때문에 신경 써서 확인해 봤는데
다음 로그에 표시됩니다.비상 끝났지.
rm: `/ファイル名' を削除できません: 許可されていない操作です
sudo 명령을 사용해도 삭제할 수 없는 파일이 있는 것 같습니다. 이 오류로 인해 알았습니다.그런데 왜 이런 일이...
날과 씨
실행된 스크립트는 파일을 삭제할 뿐만 아니라 파일도 만들었습니다.
프로세스 중에 객체 삭제 경로를 나타내는 변수가 비어 있습니다.
dir_name=/aaa/bbb/ccc
## この間の色々な処理処理で変数が空になりました。
sudo rm ${dir_name}/*
까닭
검사 누락
엄밀하게 진행됐는지 결과적으로 누락된 일이 있었다.
유식한 사람이 없다
Linux가 없는 유식한 사람들은 적어도 sudo,≥,rm를 사용하는 위험의식이 없다.
더욱이 상당수의 파일과 디렉터리에 대한 권한이 777로 설정되어 있다.
검사를 빠뜨리다
무대 환경에서는 동작 검증이 이뤄졌지만, 공식 환경에서는 검증이 이뤄지지 않았다.
이 때문에 제본 환경용과 정식 환경용 스크립트의 차이 부분이 발생했다.
대책
휴지통 만들기
기본적으로 삭제하지 않고 휴지통 (trush 디렉터리) 으로 이동해서 삭제된 것으로 판단합니다.
rm 명령 금지
쓰레기통 이외의 rm 전면 금지.
기본적으로 sudo 명령을 금지합니다
chown과chmod 등 권한을 둘러싼 명령을 제외하고는 사용을 금지합니다.
* 별도 사용 금지
다음 예에서 보듯이 확장자와 날짜 등을 함께 사용합니다.
# ログファイルをごみ箱へ移動
mv *.log ~/trush
mv *_20211229 ~/trus
스테이지 환경과 공식 환경을 동일하게 사용
원래 서버의 포트 주위 등 정식 공연의 고유한 설정 이외에는 차이가 있어야 한다고 생각한다(내 생각에는).
공식 환경 검증
본 공연의 고유한 설정을 무대극용으로 개작해 검증한다.
다른 스크립트는 이 방법으로 검증했지만 진행되지 않은 것 같다.
끝말
기본적으로 백업에서 복구 가능
마운트된 NFC는 백업되지 않은 것처럼 보이며 장시간 복구 작업이 발생했다.
이 일이 있어서 나는 많은 것을 배웠다.
하지만.. 내년에는 아무 일도 없었으면 좋겠어..🙏
Reference
이 문제에 관하여(sudo & 공식 서버로 비어있음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/tacchan5424/articles/b998e3b8734954텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)