[Linux][Kernel][Stability] Kernel panic @0x0 from xfrm_local_error+0x4c
By Guillermo Austin Kim | 2017년 12월 7일 |
커널 패닉이 났어요.네트워크 드라이버 리눅스 커널 코드에서 발생한 것 같은데요. 음.일단 당황하지 마시구요. 차근 차근 커널 로그와 코어 덤프를 살펴보면, 정답이 나와요. 일단 커널 로그를 보면, 프로그램 카운터가 0x0을 가르키고 있네요.음... 그리고링크 레지스터(R14)가 0xc0adc274(LR is at xfrm_local_error+0x4c/0x58) 을 가르키고 있습니다.[ 262.401303] Unable to handle kernel NULL pointer dereference at virtual address 00000000[ 262.401365] pgd = dbdc4000[ 262.401389] [00000000] *pgd=00000000[ 262.401433] Internal
[bash: awk] 작업 시작전, 완료후에 실행할 명령어 지정(BEGIN/END)
By 반달가면 | 2016년 11월 18일 |
awk에서 텍스트 파일에 대한 작업을 시작하기 전, 또는 모든 작업이 끝난 후에 실행할 명령어를 지정해 줄 수 있다. 시작전을 나타내는 구문은 BEGIN, 끝난 후는 END로 지정한다. 아래의 예시를 보자. awk 'BEGIN { print "작업을 시작합니다." } ... END { print "작업을 완료했습니다." }' my_file.txt 굳이 이러한 구문이 필요할까 싶을 수도 있겠지만 의외로 요긴하다. 특정 디렉토리에서 특정 파일의 용량 합계를 awk를 이용해서 계산하는 방법을 다룬 이전 게시물을 보면 END 구문이 마지막 결과 출력에 활용되고 있음을 볼 수 있다. awk 활용에 대한 다른 게시물들은 여기로
[bash: while, date] 특정 기간 동안의 연속된 날짜 출력하기
By 반달가면 | 2017년 1월 24일 |
예를 들어 2016년 10월 1일부터 2017년 2월 5일까지의 날짜를 연속으로 출력하는 방법이다. 시작 날짜와 종료 날짜의 형태를 년(4자리)월(2자리)일(2자리) 이렇게 정하면(예: 2016년 10월 1일 -> 20161001) 조건문에서 일반 수자처럼 대소 비교를 할 수 있으므로 while 반복문과 date를 조합하여 스크립트를 만들 수 있다. 아래의 예시를 보자. # 시작 날짜 2016년 10월 1일 start_date="20161001" # 종료 날짜 2017년 2월 5일 end_date="20170205" # cur_date 변수 초기값 설정(시작 날짜) cur_date="$start_date" # 종료 날짜까지 반복 while [[ $cur_date -le $end
vi 편집기의 몇가지 기본적인 명령어
By 반달가면 | 2018년 4월 27일 |
vi 편집기에서 자주 쓰는 몇가지 명령어를 정리해 두기로. 새로 파일을 만들고 싶거나 기존 파일을 열어서 편집하려면 파일명만 인자로 주면 된다. 인자로 지정된 파일이 존재하면 해당 파일을 열고, 없으면 새로 만든다. # my_data.txt 파일 편집 vi my_data.txt 파일을 열 때 특정 행부터 편집을 시작하고 싶은 경우, + 옵션을 사용한다. # my_data.txt 파일의 100번째 행부터 표시 vi +100 my_data.txt 행번호는 모르겠지만 특정 문자열이 나타나는 곳부터 시작하고 싶을 때도 + 옵션으로 가능. # my_data.txt 파일에서 문자열 abc가 있는 행부터 표시 vi +/abc my_data.txt vi를 실행해서 편집을 할 때