[태그:] 리눅스
리눅스 관련 글입니다.
-
VSCode와 Linux의 Git 연동하기
VSCode(Visual Studio Code)는 Microsoft에서 개발하여 공개하고 있는 소프트웨어 중 가장 찬사를 받는 소프트웨어 중 하나다. 그 이유는 개발자들이 코딩을 하는데 있어 매우 강력한기능들을 제공하기 때문이다. 비교적 무거운 소프트웨어 임에도 말이다. 그중에서도 리눅스 서버에 Remote SSH 플러그인을 통해 원격접속한 다음 서버의 소스코드를 쉽게 편집하고 저장할 수 있는 기능은 많은 개발자들이 편리하게 사용하고 있는 기능이다. 게다가 오늘 포스팅하는 "리눅스 서버에 설치된 Git"과 연동하여 Git의 버전관 …
-
리눅스 Shell 명령어 로그가 남지 않는 문제 해결하기
티스토리 블로그를 직접 구축한 리눅스의 워드프레스로 이사한 뒤 안정화와 백업 등 관리적인 부분에 신경이 집중되어 있어 인지하지 못했었는데 블로그를 구축하여 운영하고 있는 웹서버와 DB서버 2대에 이유는 알 수 없지만 Shell History가 남지 않고 있었다. Shell History 란? 쉘 히스토리(Shell History)란 리눅스와 유닉스 운영체제의 쉘 프롬프트 상에서 실행한 명령어를 로그 파일에 기록하여 사후에 어떤 명령어들을 사용했는지 알 수 있도록 지원해주는 기능을 의미한다. 보안관점에서는 책임추적성을 확보하기 위한 …
-
Rocky Linux 9.3에 MariaDB 설치하기
워드프레스와 같은 블로그 툴을 리눅스 서버에 설치하기 위해서는 APM, 즉 Apache, PHP, MariaDB (또는 MySql)를 설치해야 한다. 앞의 포스트에서 Apache 웹서버와 PHP의 설치에 대해 설명했다. 이제 MariaDB를 설치하는 과정을 기록하고자 한다. MariaDB Server 설치 다음과 같이 dnf 명령을 사용해 MariaDB 서버 패키지를 설치한다. sudo dnf install mariadb-server 설치될 패키지와 의존성(dependensy)이 있는 패키지 목록을 보여주고 설치할지 물어본다. y …
-
Rocky Linux에 APM 설치하기 – Apache + PHP 설치하기 (PHP-FPM)
RedHat 리눅스, CentOS 리눅스, Rocky 리눅스의 관계 RedHat에서 RedHat Enterprise Linux와 완벽하게 동일한 코드를 갖는 CentOS의 지원을 중단하고 CentOS Stream이라는 RedHat 공식 릴리즈 버전을 제작하기 전에 만들어 배포하는 업스트림 배포본으로 정책을 변경하면서 그에 반발해 다시금 RedHat과 100% 호환되는 완전하게 동일한 코드를 갖는 오픈소스 리눅스 프로젝트가 바로 Rocky Linux다. RedHat은 Fedora 버전의 리눅스를 오픈소스 개발자들과 함께 개발하며 약 …
-
[리눅스 기초] 쉘 스크립트의 사칙연산과 문자열 자르기
쉘 스크립트에서도 자바(Java)나 C언어처럼 문자열 자르기와 사칙연산을 비롯한 연산이 모두 가능하다. 아니 어쩌면 더 쉽게 느껴질 수도 있다. 하지만 이런 연산을 설명하기 전에 먼저 쉘 스크립트에서는 변수를 어떻게 사용하는지 이해해야 한다. 쉘 스크립트에서의 변수 일반적인 Java나 C와 같은 프로그래밍 언어에서는 변수의 선언과 타입(type)이 무척 중요하다. 선언하지 않고 사용하거나 잘못 참조하거나 잘못 연산하게 되면 엉뚱한 값이 출력되거나 컴파일 시 에러를 팍팍~뿌려댄다. 하지만 쉘스크립트에서 변수는 미리 선언하지 …
-
[리눅스 기초] 쉘 스크립트란 무엇인가?
예전의 포스트에서 운영체제의 쉘(shell)이 도대체 무엇인지에 대해 설명했다. [리눅스 기초] 쉘의 이해(Linux Shell) 쉘을 이해하는데 성공했다면 다음 단계는 쉘 스크립트(Shell Script)에 대해 공부하는 것이 일반적인 Unix/Linux 운영체제를 공부하는 순서라고 할 수 있다. 쉘 스크립트(Shell Script)란 ? 쉘 스크립트를 이해하려면 먼저 스크립트(Script)가 무엇인지 이해해야 한다. 스크립트란 일반적으로 인터프리트(interpret:대화) 방식으로 동작하는 컴파일하지 않는 프로그램이라고 이해하 …
-
[리눅스 기초] 쉘의 이해 (Linux Shell)
유닉스나 리눅스를 공부하는 많은 초심자들이 처음으로 부닥치는 어려움이 바로 Shell(쉘) 이다. 쉘의 이해가 부족하면 유닉스나 리눅스 서버에서 주로 업무를 하는 엔지니어가 되고자 하나 초심자 수준를 벗어날 수 없다. 그만큼 쉘을 정확하게 이해한다는 것은 유닉스나 리눅스의 운영체제를 얼마나 이해하고 있는지에 대한 수준을 가늠하는 하나의 지표로 써도 될만큼 중요하다. Linux / Unix 운영체제에서 쉘(Shell)의 정의 쉘(Shell)은 운영체제에서 사용자가 입력하는 명령을 읽고 해석하여 대신 실행해주는 프로그램이다. 여기서 …
-
ssh 포트 변경 후 sshd 서비스 시작 오류 (Permission Denied)
Rocky Linux 또는 기타 리눅스 배포본을 설치한 다음 꼭 해줘야 하는 작업 중 하나가 바로 SSH 포트 변경이다. 즉 기본 Port 번호인 22에서 다른 번호로 변경해주는 작업이다. 물론 구글 OTP 또는 기타 인증을 강화하여 SSH 접속을 통제하는 방법도 있지만 ssh 서비스 포트를 22번으로 두고 인터넷에 공개하는 것은 "어린아이를 물가에 내어 놓는" 짓이나 다름이 아니다. 사용자 인증의 강화와 ssh 서비스 포트를 변경하는 취약점 제거는 상호 보완적인 보호대책이기 때문이다. 둘 중 하나를 적용했다하여 어느 하나를 하지 …
-
yum update 또는 dnf update 명령에서”cannot install the best..” 에러
오라클 클라우드에서 무료 프로모션 중인 ARM 계열 가상머신을 하나 사용하고 있다. oCPU 4개에 메모리 24G를 무료로 평생 사용할 수 있는 프로모션이다. ARM 계열의 리눅스를 한번 쯤 써보기 위해 CentOS의 다음 버전인 Rocky 리눅스를 설치했는데 yum update 명령을 실행하니 "cannot install the best update candidate..." 에러가 발생했다. yum update에서 "cannot install the best update candidate for package..." 에러 yum …
-
CentOS 7.9 네트워크 설정 (고정 IP 설정)
이런저런 테스트 용으로 사용하고 있는 VMWare ESXi를 6.7에서 8 버전으로 업그레이드 한 뒤 pfSense에 UI를 입혔다는 오픈소스 방화벽 OPNsense를 가상머신으로 올려 테스트를 진행했다. OPNsense의 LAN 인터페이스에 연결해 내부망으로 사용하기 위한 표준 가상스위치와 포트그룹을 생성한 뒤 OPNsense를 설치하는 가상머신에 네트워크 어댑터 두개를 생성해 WAN 인터페이스는 VM Nework 1에 연결하고 LAN 인터페이스는 새로 생성한 가상스위치를 연결하고 설치를 진행했다. 결과적으로 OPNsense가 …