- 0x0000007b
- 2차세계대전
- 3.20해킹
- 4대강
- 502 error
- 53빌딩
- 7840hs
- 88체육관 수영장
- ABI
- abortive close
- abortive shutdown
- AHCI
- akmods
- ALC1220
- alma linux
- alternatives
- AM4 메인보드
- AMD
- amd 7840hs
- amd 그래픽 게임용
- amd 내장 그래픽 최적화
- anonymous file
- API
- apple.com
- APT
- apt-get
- Armagnac
- Asrock
- ASTALIFT
- audacious player
- Today / Yesterday
- /
- Total
목록리눅스 (40)
Linux Programmer
리눅스 GNOME 데스크탑 환경을 사용하다보면 뭔가 약간 불편함이 있을 수 있는데, 이를 미세하게 조정해주면 편리해진다. 이를 위해 사용되는 프로그램이 gnome-tweaks 이다. 1. 설치dnf install gnome-tweaks 로 간단하게 설치할 수 있다. 2. 실행 및 설정애플리케이션 목록에서 실행해도되고, 터미널에서 gnome-tweaks로 실행해도 된다. 사용하는 유저로 로그인한 상태에서 실행하면 된다. root로 실행하지는 말자.Windows에서 설정할 수 있는 주요 기능은 다음과 같다. 특히 "두번째 누름 동작에 크기 조절"은 매우 유용한 기능이다.두번 누름Minimize를 설정해두면 편리하게 사용할 수 있다. (창 타이틀 부분을 두번 클리하면 즉시 최소화 해준다)제목 표시줄 단추=최대..
sudo 권한을 세밀하게 조정하기 위해서는 /etc/sudoers.d 밑에 세부 설정 파일을 작성해야만 한다. 그리고 su의 권한은 /etc/pam.d/su 파일을 설정한다. 집에서 개인이 사용하는 경우와 달리 회사나 개발팀에서는 특히 보안을 중시해야 하기 때문에 sudoers 나 PAM 설정을 잘 해두는 것이 무엇보다 중요하다.참고로 su는 substitute user의 약자로 유저를 변경한다는 의미이다. sudo는 su에 do(한다)는 의미를 붙인 것이다. 약어는 본래 용어를 알아두면 이해가 빠르기 때문에 모든 용어는 원어를 알아두는 것이 좋다. 1. 설정 파일기본적으로 sudoers 설정 파일은 /etc/sudoers 이다. 그러나 이 파일을 직접 수정하는 것은 아주 구식 방법이고, 최근 대부분의 ..
페도라 리눅스를 처음 설치하면 쓸데없는 패키지 저장소(dnf repository)들이 기본으로 많이 설치된다. 따라서 dnf 명령을 내릴 때마다 속도가 상당히 느려진다. 만일 약간의 시간을 들여서 저장소 설정를 튜닝해주면 dnf 명령시 패키지 검색이나 다운로드 속도가 많이 개선된다. (이 글은 페도라 리눅스에 대해서 설명하지만, 사실상 DNF 시스템을 사용하는 레드햇이나 rocky linux, alma linux, oracle linux, suse linux 등등 대부분의 레드햇 계열 리눅스는 같은 방법으로 최적화 할 수 있다. 참고로 좀 규모가 있는 회사라면 createrepo를 이용해서 내부 로컬 서버에 mirror 사이트를 만들고 내부 통신으로 업데이트할 수 있도록 하는 것이 보안 측면에서도 좋고,..
이 문서는 페도라 리눅스에서 nvidia 드라이버를 손쉽게 설치하고, 커널 업데이트시 자동으로 드라이버를 업데이트 및 빌드하는 akmods 기반의 드라이버 설치를 다룬다. 여기서 사용된 리눅스는 Fedora Linux 40 버전을 기준으로 작성하였다. 일반적으로 페도라 35 이후는 이 문서의 방법대로 작업하면 된다. 만일 페도라 34 이전의 구형 버전이라면 다른 방법을 사용해야 하는데, 오래된 페도라 버전의 경우는 굳이 문서화가 필요 없다고 판단되어 생략하였다. 명령어 권한이 문서에서 내리는 모든 명령어는 root 권한으로 작업한다. 따라서 터미널을 열고 "su -" 를 실행하여 root로 권한을 변경하는 것을 권장한다. (sudo 권한이 주어져 있다면 sudo를 사용해도 되지만 계속 sudo를 타이핑하..
리눅스에서 주로 사용하는 멀티미디어 프로그램으로는 다음과 같은 것들이 있다. (주로 본인이 사용하는 것 위주이므로 다른 사람들과는 목록이 다를 수 있다)음악audacious = 음악 플레이어 https://sunyzero.tistory.com/297영상 celluloid = mpv의 프론트 엔드 mpv = 가장 많이 사용하는 영상 플레이어 https://sunyzero.tistory.com/255totem = mpv 대신에 사용하기도 한다.freetube = 유튜브 플레이어 (웹 페이지가 아닌 단독 플레이어로 좀 가볍고, 웹 브라우저의 영향을 받지 않는다)다운로더clipgrab = youtube, vimeo 같은 동영상 플랫폼에서 다운로드 한다youtube-dl = CLI 명령어로 유튜브 다운로드 하는 ..
랩탑(노트북)에는 터치패드를 켜고 끌 수 있는 펑션키가 존재한다. 랩탑의 펌웨어가 펑션키를 표준적인 방법으로 작동시키는 경우라면 윈도, 리눅스 어디서든지 잘 작동한다. 하지만 비표준적인 방법으로 작성된 경우라면 윈도에서만 작동되고, 리눅스에서는 제대로 작동되지 않을 수도 있다.예를 들어 아래 삼성 갤럭시북3 사진에 보면 F5 펑션키에 터치패드 그림이 그려져 있는 것을 볼 수 있는데, 아쉽게도 리눅스에서 작동되지 않는다. 다시말해 삼성의 갤럭시북3 랩탑의 Fn-F5 키는 윈도에서는 잘 작동하지만, 리눅스에서는 해당 키를 눌러도 아무런 반응이 없다. 따라서 Fn-F5키 대신에 Ctrl-Super-F5를 누르는 방식으로 우회하는 기능을 만들어보자. 참고로 Super는 키보드의 "윈도키"를 말한다. 0. 작업 ..
리눅스에서 키크론(keychron) 계열이나 각종 커스텀 키보드 사용시 Function 키인 F1~F12키가 이상 작동하는 경우가 있다. 이상 작동 현상이란 F11키를 눌렀더니 사운드 볼륨이 줄어들거나 하는 것을 말한다. F5를 누르면 키보드 불빛을 제어한다든지 하는 기능도 있다. 예를 들어 아래 사진처럼 키보드 키캡의 Function key 위쪽에 아이콘 그림이 그려있다면 멀티미디어나 특수 기능이 맵핑되어있는 것이다. F10키의 스피커 모양은 볼륨을 끄는 것이고, F11키 스피커 소리가 작은 것은 볼륨을 줄이는 기능, F12키의 스피커 소리가 큰 것은 볼륨을 키우는 기능이다. 이 기능들은 원래 Fn키와 조합해서 사용하는 기능으로 Fn+F11키가 사운드 볼륨을 줄이고, Fn+F12키는 사운드 볼륨을 키우..
CentOS7.9의 vim 7.4의 python3 지원 패키지 설치 및 빌드 CentOS 7.9에 설치되는 vim-enhanced 패키지는 python 2.x만 지원하고, python 3는 지원하지 않도록 빌드되어있다. 따라서 python3를 이용하는 플러그인 사용시 에러가 발생한다. 이를 해결하기 위해 vim 소스 파일을 다운 받아서 빌드해도 되지만, 그렇게 되면 패키지 버전 관리도 안되고, 빌드를 위해 각종 라이브러리와 헤더를 설치해야 하므로 귀찮아진다. 따라서 미리 빌드된 CentOS 7.9용 RPM 패키지를 올려둔다. 패키지 압축 파일과 설치법은 조금 아래에 적어두었다. 1. 배경 CMake, make 및 C 관련 프로그래밍 툴 강의를 갔는데, CentOS 7.9에서 당연히 vim ultisnip..
Fedora 31 upgrade 뒤에 한글 입력기가 이상하게 작동하는 문제가 생기는 경우가 있다. 아마 내 기억에 29에서 30으로 업그레이드 했을 때도 마찬가지였던 것 같다. 이게 xkb-options 부분을 커스터마이징 한 경우나 혹은 몇몇 추가 기능을 커스터마이징 한 경우에만 발생하므로 보편적인 일은 아니다. 이 문제의 증상은 구글 크롬(google chrome)에서 쌍자음을 타이핑할 때 문제가 생긴다. 예를 들어 "있"을 타이핑하려고 하면 보통 "이"에서 "shift + ㅅ"을 누르는데, shift를 누르는 순간 단어가 완성되고 "이ㅆ"으로 변경되어버린다. 마찬가지로 "닦"을 타이핑하려고 하면 "다ㄲ"이 되어버린다. 이 문제는 ${HOME}/.config/dconf/user 파일이 꼬여서 문제가 ..
셸의 발전 순서대로 보면 다음과 같다. (shell의 한글 표기로 쉘이라고 적는 경우도 있지만 요새는 셸을 더 많이 쓰는 것 같아서 shell을 셸이라고 표기하겠다)Bourne shell : /bin/sh - POSIX shellC shell : /bin/csh - Sun microsystem (BSD)Korn shell : /bin/kshbash : /bin/bashzsh : /bin/zsh 1. bash 이전의 셸들가장 유명한 셸은 초기 유닉스에서 쓰였고, 아직까지도 현역으로 쓰이는 본셸(Bourne shell)이 있다. Steve Bourne이 만들었고, 그 이전에 유닉스의 아버지가 만들었던 Thompson shell이 있지만 지금은 쓰이지 않는다.본셸은 POSIX 표준에 기본 셸로 정해져서 POS..
Linux를 쓰다보면 caps lock 키를 쓸 일이 별로 없어서 control 키로 변경해서 사용하는 편이다. 그리고 caps lock은 left shift + right shift로 lock하는 기능을 쓴다. 이 설정을 쉽게 하기 위해서는 gnome-tweaks가 설치되어있어야 한다. 텍스트 모드에서 하는 방법도 있지만 매우 귀찮아진다. gnome-tweaks를 실행한 뒤에 키보드 부분으로 이동한다. 여기서 "추가 배치 옵션" 부분을 들어가면 다음과 같은 화면을 볼 수 있다. 그림에서 보이듯이 Ctrl 위치 메뉴에서 "Caps Lock키를 Ctrl키로"를 체크해주면 된다. 그러면 진짜 caps lock을 사용할 일이 있으면 어떻게 해야 하는가? 바로 위에서 말했듯이 양쪽 shift를 동시에 누르는 방..
CentOS7 리눅스 한글 입력기 설정CentOS 7 리눅스의 한글 입력기를 설정하는 방법을 살펴보겠다. 설정은 로그인 할 때 하는 것과 로그인 후에 제어판(control panel)에서 하는 방법이 있다. 어차피 로그인 후에 제어판에서 다시 설정하는 부분이 있으므로 제어판 설정까지 완료해야 제대로 작동한다.참고로 CentOS에서 사용하는 한글 입력기는 ibus-hangul이다. 간혹 해당 패키지가 설치되지 않아서 문제가 생기는 경우도 있으므로 그럴 경우에는 "yum -y install ibus-hangul" 명령어를 실행하여 설치하면 된다. 1. 처음 로그인에서 설정하는 부분우선 CentOS7을 설치시 한글로 설치하면 최초 로그인할 때 한글 설정 창이 나타난다. 이 과정은 큰 의미가 없다. 어차피 뒤에..
리눅스 아재력 or 할배력 테스트 (2023-06-28일 업데이트) 이 테스트는 리눅스 옛날 명령어만 알고 있는지, 아니면 대체된 새로운 명령어도 알고 있는지 알려줍니다. deprecated된 옛날 명령어(일명 아재명령어 or 할배명령어)만 알고 있다면 이제 새로운 명령어와 기능들도 열심히 배우도록 합시다. 0. 사용방법 아래 명령어나 기능 중에 a가 가장 오래된 기능이고, 이후 보기들(b,c,d)은 대체된 새로운 기능이거나 명령어입니다. 예를 들어 문항에서 a, b, c를 모두 알고 있다면 최근 새로운 기능까지 모두 알고 있는 것입니다. Part 1 : 기초 명령어, 셸 1-1. 터미널 화면 clear (or scroll up) a) clear b) 아직도 화면을 지우기 위해 clear를 타이핑하고 있..
Advanced 리눅스 시스템 네트워크 프로그래밍 3판 (2016년 4월 출간) 예제 소스 코드 * 예제 소스 코드 파일 : (2018년 2월 6일 버전) * 압축을 풀면 하위 디렉토리가 생성됩니다. (소스 코드는 xz로 압축되었습니다. tar의 대문자 J 옵션으로 풀 수 있습니다. 아래 명령어를 참고하세요.) 압축 해제 명령 : tar xfJ alsp_3rd_20180206.tar.xz* 생성된 하위 디렉토리에서 make를 명령하면 하위 모든 예제가 컴파일 됩니다.* make clean을 하면 하위 모든 컴파일된 예제의 바이너리가 청소(삭제)됩니다. * 목차 CHAPTER 00 들어가기 전에헤더 파일과 묵시적 선언Feature test macro와 표준유닉스 역사와 표준안, 용어 및 정의 CHAPTER..
* 이 글은 페도라 23 버전에서 제공되는 vim 플러그인 패키지를 이용하여 Vundle.vim 관리 플러그인을 설치하는 방법을 다룬다. 기존의 Vundle.vim 설치 방법과 다른 점은 RPM 패키지로 제공되는 플러그인을 먼저 설치하고 Vundle.vim에서는 따로 플러그인을 중복 설치하지 않도록 한 것이다.(이 글을 쓰는 2016년 3월기준으로 페도라 23이 가장 최신 버전이다.) vim powerline이 뭔지 모르겠다면 2014년도에 쓴 글(링크)을 참고하자. * 목차1. vim과 vim 플러그인 패키지 설치2. Vundle.vim의 설치3. powerline의 설치4. jellybeans 컬러스키마 설치 1. vim과 vim 플러그인 패키지 설치Fedora 22부터 DNF 패키지 관리자가 YUM..
vim quickfix 기능 vim에는 컴파일 에러 메시지를 빠르게 수정할 수 있도록 도와주는 기능이 있습니다. 이를 quickfix라고 부르는데, 개발자들이 좋아하는 기능입니다. vim의 quickfix는 make 명령어와 연동되어 사용되며 :mak 혹은 :mak %< 라고 치면 현재 디렉터리나 편집중인 코드를 빌드하면서 에러메시지를 수집합니다. 아래는 quickfix list의 기능을 보여주는 스크린샷입니다. quickfix command:mak [make argv ] [ make target ] 에러 발생시 해당 라인으로 자동 이동을 해주고 컴파일 에러 메시지를 보여주는 창을 보여줄 수 있습니다. 에러 메시지를 보여주는 창에서 각각의 에러사이를 이동할 수도 있습니다. 손에 잡히는 vim 을 공부하신..
손에 잡히는 vim - 강의용 교안 vim은 Bill Joy가 개발한 vi 에디터의 발전된 형태입니다. (vim = vi improved)리눅스나 유닉스 사용자라면 필수로 알아야만 하는 에디터입니다. vim 에디터 강의용으로 작성되었으며 (PDF, PPTX) 형식입니다. 출처표시에 비상업적용도로 재가공, 재배포 등이 가능합니다. * 히스토리2014-11-07 교본 업로드
* 리눅스에서 엔비디아(nvidia) 그래픽 카드의 드라이버 설치Last updated on Sat 14 May 2022리눅스를 공부할 때 vmware, virtualbox를 설치한 뒤에 가상머신으로 리눅스를 설치하고 있는가?만일 가상머신으로 리눅스를 돌리고 있다면, 중급 이상의 리눅스 실력으로 성장하기 힘들다. 왜냐하면 가상머신은 오류가 발생되지 않도록 vmware, virtualbox에서 호환성이 높은 드라이버를 가상으로 제공하기 때문이다. 그래서 오류 메시지를 경험하지 못하고 리눅스를 사용하게 된다.그러나 회사나 연구실에서 머신러닝(machine learning)을 위해 CUDA를 사용하거나, 혹은 그래픽 처리를 위해 리눅스를 사용한다면 리눅스를 직접 설치해야만 한다. 허나 직접 설치해보면 가상머신..
awk는 "패턴 검색과 처리언어"로서 독자적인 처리 문법과 언어 구성을 갖춘 툴이다. 문자열을 해석, 자르기, 계산, 정규표현식(REGEX) 등등 다양한 기능을 제공하며, 속도도 훌륭하다. 따라서 대부분의 UNIX, Linux, OSX에서 많이 사용되며, 유능한 프로그래머, 시스템 관리자라면 필수적으로 다루는 유틸리티이다. 본인이 속한 증권업계에서는 데이터나 로그를 분석, 전처리, 후처리 가공을 하는 용도로도 많이 사용한다. 특히 grep, sed는 간단한 문자열 치환이나 삭제 정도의 처리만 가능한데 비해 awk는 문자열이나 패턴을 숫자로 파싱하여 계산하는 작업을 지원한다. awk의 장점은 다음과 같다.숫자(정수, 실수)를 지원한다.삼각함수, 지수, 로그, 제곱근, 랜덤변수 등의 수학적 기능을 제공한다...
정규표현식 (Regular Expression - REGEX) 강의 발표 자료입니다. * 정규표현식은 문자열 패턴을 찾거나 수정하는데 사용되는 표준 입니다. C, C++, 쉘 프로그래밍, perl, python, java, ruby, 비주얼베이직, C# 등 거의 대부분의 언어가 지원하고 있으며 vi, vim, ultra editor등 다수의 에디터에서도 지원하고 있습니다. 아래와 같은 패턴 표현식이 정규표현식의 대표적인 예입니다. EBNF 표기법을 배우셨다면 어떤 형태인지 쉽게 인지할 수 있습니다.a.cdef? [a-zA-Z]+ .*boy (caret|dalar) \(.*/\)[^/]* ^Do.*\?$ http://\([a-zA-Z0-9.-]\)/.* http://.*\?(.*) 정규표현식의 패턴을 카테..