LINUX
Posts
487 posts[Kernel][Debug] "cat /d/shrinker" kernel panic
100% 커널 패닉으로 타겟이 죽어버리는 이슈를 발견했어요.자자, 일단 커널 로그부터 좀 볼까요? 뭐, PID가 6978이 sh 프로세스에서 do_raw_spin_lock() 함수에서 데이터 어보트를 유발시켰네요.[ 761.636711] Unable to handle kernel paging request at virtual address f38a9a84[ 761.645048] pgd = e8074000[ 761.649800] [f38a9a84] *pgd=a0721811, *pte=00000000, *ppte=00000000[ 761.658106] Internal error: Oops: 7 [#1] PREEMPT SMP ARM[ 761.665481] Modules linked in:[ 761.6
[Linux][Kernel] T32 - 구조체 확인 (v.type)
T32로 디버깅을 하다보면 struct의 선언부를 확인하고 싶을 때가 있어요.예를 들어서 struct tty_struct 구조체의 멤버를 갑자기 확인하고 싶은 경우, "do do_struct.cmm tty_struct" 요렇게 입력하면 상세 멤버 변수를 확인할 수 있어요.struct tty_struct struct tty_struct struct(620 bytes, [0] int magic (signed 32 bits), [4] struct kref kref struct(4 bytes, [0] atomic_t refcount struct(4 bytes, [0] int counter (signed 3
리눅스에서 로그아웃 없이 그룹 소속 변경 적용
리눅스에서 그룹(group) 소속을 변경했을 때, 변경 사항을 적용하기 위해서는 로그아웃 했다가 다시 로그인해야 한다(사용자 그룹의 생성/수정 등에 대한 기본적인 내용은 이전 게시물을 참고하자. 여기로). 그런데 예를 들어 작업중인 터미널창이 여러개 있는데 그룹을 변경하고 새로 터미널창을 열어서 뭔가 추가적으로 작업해야 하는 경우처럼, 당장 로그아웃하기 어려운 상황에서 변경 사항을 적용시켜 뭔가 작업을 하고 싶을 경우가 있을 수 있다. 이럴 때 su 명령이 상당히 요긴하다. su 명령으로 해당 터미널창에서 새로 로그인한 것과 같은 효과를 줄 수 있기 때문이다. 예를 들어 계정 john을 사용중인데 my_group이라는 그룹에 소속되도록 한 후에 이 그룹과 관련된 작업을 하는 경우를 생각해 보자.
리눅스에서 사용자 그룹(group) 생성/수정/삭제
기본적인 내용이지만 정리해 두기로. 리눅스에서 사용자 그룹(group)을 생성/수정/삭제하는 방법이다. 특정 디렉토리나 파일에 대한 접근/실행 권한을 특정 그룹에만 허가하고 싶을 때 필요하다. 먼저 내가 속한 그룹 목록을 아래의 예시와 같이 확인할 수 있다. # 내가 속한 그룹 목록 출력 groups # 사용자 john이 속한 그룹 목록 출력 groups john 새로 그룹을 만들려면 groupadd 명령을 사용한다. 아래의 예시를 보자. 루트(root) 권한을 필요로 한다. # 새 그룹 my_group 추가 sudo groupadd my_group 그룹명 변경은 groupmod 명령에서 -n 옵션을 사용한다. # my_group 이름을 my_new_gro



