서버 관리 (20) 썸네일형 리스트형 리눅스. 스택 크기에 관한 고찰 [1. 개요]Segmentation fault 와 관련하여 고민한 내용 정리[2. 상황]특정 함수 진입 시, c++ 로 작성한 애플리케이션이 segmentation fault 발생과 함께 죽는 현상.gdb 로 디버깅 시, 함수 진입 만 하였는데, segmentation fault 가 발생. 의심이 것 중 하나는 스택 오버플로우..[3. 예제] 1 #include 2 3 4 void myfunc() 5 { 6 char arr[MYSZ * 1024 * 1024]; 7 std::cout ulimit -s 가 8192 (8 Mbyte 인 경우)g++ main.cpp -g -DMYSZ=9g++ main.cpp -Wl,-z,.. multibyte string to widechar string [1. 개요]멀티바이트 형태의 문자열(UTF-8) 을 wide char 형태의 문자열(유니코드) 로 변환하는 방법 정리.[2. 오해]std::string 을 std::wstring 으로 변환하는 방법을 단순히 아래와 같은 방법으로 알고 있었는데, 아래 방법은 틀린 방법이다.std::wstring wstr(str.begin(), str.end());위 코드는 단순히 멀티바이트 형태의 string 의 내부 버퍼를 복사할 뿐이다.#include #include #include int main(){ const char * buf = "안녕하세요"; std::string str = buf; std::wstring wstr(str.begin(), str.end()); .. file 명령어 [1. 개요]file 명령어 사용법 정리.[2. file 의 인코딩 유형을 확인하고자 할 때]file -i test.txt journalctl 로그 파일 관리 (디스크 확보를 위한) [1. 개요]리눅스 서버 디스크 용량 확보를 위함./var/log 에서 용량을 많이 차지하는 로그 파일 삭제가 필요.특히, /var/log/journalctl시스템 데몬 관련 로그 파일이라 임의로 지우면 안됨. (아마도)[2. 명령어]journalctl --list-boots# journalctl --dist-usage# journalctl --vacuum-size={BYTES}# Reduce disk usage below specified size journalctl --vacuum-files={INT}# Leave only the specified number of journal files journalctl --vacuum-time={TIME}# Remove journal files older .. chrome 임시 파일 관련 용량 관리 [1. 개요]python selenium 을 이용하여 자동화 작업 운영 중, 리눅스 서버의 디스크 사용량이 너무 높아진 것을 확인/tmp 디렉토리에 disk 사용량이 매우 높은 것을 확인du 명령어를 통해 해당 디렉토리에서 디스크 사용량이 높은 디렉터리를 확인하였으나,특별히 사용량이 높은 디렉토리는 없었음.숨김 파일을 확인.org.chromium.Chromium 이라는 이름으로 시작하는 숨겨진 디렉토리가 매우 많았고, 용량도 대략 1G 정도 차지다행히도, 임시 파일들이 롤링되어 저장되어 있었음.[2. 해결]접근 한지 7일 보다 오래된 임시파일을 모두 삭제함. [내용 채워야 됨] 인코딩 변경 chcp / locale 작성해야 되는데. copy 명령어에 대해서 [1. 개요] samba 로 연결된 서버에서 특정 키워드를 갖는 파일 이름으로 갖는 1천여개 이상의 파일을 복사해올 필요가 있었다. cmd 에서 작업을 진행했는데, 복사한 파일이 원본 파일보다 바이트 수가 낮은 문제가 있었다. [2. 해결] 당시 사용한 명령어는 아래와 같다. for /F %a in ('type tclist.txt') do copy "외부 파일경로"\%a_* " 내 파일 경로" 여기서 copy 에 옵션을 추가하였다. copy /b 대상이 이진 파일임을 명시한다. /b 옵션이 없으면 텍스트 모드로 여는지 까지는 확인해보지 않았지만, 문제는 해결 할 수 있었다. 계정 추가. useradd, adduser [1. 개요] 리눅스 서버에 신규 계정 발급 시 자주 사용하는 명령어 조합 정리 [2. 명령어] 사용자 계정을 추가하는 명령어는 아래와 같이 두가지가 있다. adduser useradd 두 명령어의 차이점은 아래와 같다. adduser 계정 생성 시 별도 옵션 없이, 홈 디렉토리를 포함한 사용자 관련 설정을 자동생성한다. useradd adduser 처럼 동작하려면 별도의 옵션을 추가로 기입해야 한다. 여기서는 useradd 사용법을 정리한다. [3. 옵션] 옵션 설명 기타 -d, --home 로그인 시 사용 할 홈 디렉터리 경로, 해당 경로에 폴더가 없어도 만들지 않는다. -m, --create-home 사용자 홈 디렉터리가 없는 경우 생성한다. -M 사용자 홈 디렉터리를 만들지 않는다. -r, --s.. df 와 du 와 디스크 용량 차이 발생 및 해결 방법 [1. 개요] 서버 디스크 확보 중, 분명 불필요한 파일을 삭제하였는데, df 로 확인 시 디스크가 충분히 확보되지 않는 문제가 있었다. 그러나, du 로 mount 된 디렉터리의 총 용량 확인 시, 전체 파일 사이즈가 줄어들어 이에 대한 내용을 정리한다. [2. df vs du] df는 파일 시스템의 디스크 블록을 조회하여 총값과 자유 블록의 수를 계산 du 는 입력으로 주어진 파일 혹은 디렉터리가 사용하는 전체 파일 용량을 계산한다. [3. 문제 원인] df 와 du 는 사용중인 용량을 계산하는데 있어서 근본적인 차이가 있다. 따라서 아래와 같은 이유가 원인이 된다. 파일 디스크립터가 열린 상태에서 파일이 삭제된 경우입니다. df는 dirty buffer에 있는 용량을 계산에 포함하지만 du는 계산하.. 윈도우 서버 cpu 클럭 문제 보호되어 있는 글입니다. 이전 1 2 다음