반응형

전체 글 125

Ubuntu에서 NginX로 HTTPS 서버를 만들어보자

환영합니다, Rolling Ress의 카루입니다.​ Ubuntu에서 NginX를 사용하여 웹 서버를 구성하는 방법을 알아보겠습니다. 사용한 OS는 Ubuntu 24.04 LTS입니다. 우리가 웹 페이지를 만들고 싶다면 웹 페이지를 보여주는 컴퓨터(=서버)가 한 대 있을 것이고, 그 컴퓨터에서는 접속자(=클라이언트)에게 화면을 그려서 표시하고 상호작용해야 할 겁니다. 사용자에게 화면을 표시하고 상호작용하는 일, 이것이 바로 웹 서버 프로그램이 하는 일입니다. 주로 아파치(Apache), NginX 등이 있는데 여기선 NginX를 사용하겠습니다. 가벼우면서도 강력해서 좋아요.$ sudo apt update && sudo apt install nginx -y$ sudo systemctl enable --now..

Linux 2026.03.04

Arch Linux 설치 가이드 4: 개발 환경 설정하기

환영합니다, Rolling Ress의 카루입니다.​1년만에 다시 쓰는 아치 리눅스 글입니다. 그 사이 저도 리눅스에 대해 많은 것들을 공부하고, 특히 골칫거리였던 Wayland 등과 사투를 벌였네요. 저도 잊기 전에, 글로 기록해두어야겠습니다.​목차개발 프로그램 설치 및 설정프로그래밍 언어별 설정​​개발 프로그램 설치 및 설정​1. nano 하이라이팅 $ sudo nano /etc/nanorc ## To include most of the existing syntax definitions, you can do:include "/usr/share/nano/*.nanorc"include "/usr/share/nano/extra/*.nanorc" 다른 배포판은 nano의 구문 강조가 기본으로 켜져 있지만, ..

Linux 2026.03.04

Arch Linux 설치 가이드 3: LTS 커널과 기타 설정 마무리

환영합니다, Rolling Ress의 카루입니다.​아치리눅스 설치가 모두 끝났죠. 이제는 시스템을 좀 더 편리하게 사용하고, 안정화하기 위한 작업들을 진행하도록 하겠습니다. 꼭 필요하진 않지만, 개개인에 따라 충분히 유용할 수 있는 기능들입니다. 천천히 보면서 자신에게 맞는 설정을 적용해주세요.​목차LTS 커널 설치유용한 프로그램 설치기타 설정 및 프로그램유용한 설정들​LTS 커널 설정https://kernel.org 은 리눅스 커널을 모아둔 곳입니다. 대부분의 배포판들은 리눅스 커널을 가져다가 커스텀하거나 해서 사용하죠. 아치의 경우엔 kernel.org에 있는 모든 커널을 AUR또는 기본 저장소에서 받을 수 있습니다. ​Mainline은 현재 개발중인 커널입니다. 아직 안정화 전이므로 고급 사용자가 ..

Linux 2024.09.30

Arch Linux 설치 가이드 2: Wayland GUI 환경설정과 드라이버 설치

환영합니다, Rolling Ress의 카루입니다.​ 지난번에 아치리눅스 설치까지는 끝냈습니다. 그런데 지금은 컴퓨터를 켜봤자 bash만 깜빡일 뿐입니다. 서버가 아닌 이상 이런 화면을 원하지 않죠. 당장 크롬 브라우저도 안 돌아갑니다. 이제 GUI를 입혀줄 데스크탑 환경을 설치하고, 중요한 설정들을 마무리해봅시다.​※ 2024. 09. 29 업데이트: ​새롭게 수정한 부분이 있어 글을 업데이트합니다.​목차데스크탑 환경 or 윈도우 매니저 설치한글 입출력 설정기타 프로그램 및 드라이버 설치Wayland 환경설정Zsh 설치​데스크탑 환경 or 윈도우 매니저 설치​데스크탑 환경 설치​ 데스크탑 환경에는 크게 GNOME, KDE Plasma, Xfce 등이 있습니다. 일반적으로는 저 3개 중 하나를 고르지만, ..

Linux 2024.09.30

Arch Linux 설치 가이드 1: 파티션 분할과 부트로더 설치까지

환영합니다, Rolling Ress의 카루입니다.​이전에 써둔 아치리눅스 설치 포스트가 너무 오래되어서, 다시 써보려고 합니다. 확실히 롤링 릴리즈 배포판이라 그런지 설치 방법도 계속 변하네요. 여튼, 시작하겠습니다.​※ 2024. 09. 29 업데이트: ​새롭게 수정한 부분이 있어 글을 업데이트합니다.※2026. 02. 12 업데이트: 수정 내역 업데이트​​목차라이브 부팅 및 설치 준비파티션 분할 및 마운트베이스 시스템 설치 및 설정부트로더 설치AUR 헬퍼 설치만약 새로 Windows와 Arch Linux를 같이 설치하신다면, EFI 파티션은 적어도 512 MiB, 넉넉하게 1 GiB정도는 잡아두시기 바랍니다. 아치리눅스는 커널을 모두 EFI 파티션에 담아두기에, EFI 파티션이 작으면 큰 불상사가 일..

Linux 2024.09.30

파이썬 코딩 효율을 높여주는 7가지 문법들 (ft. Pythonic한 코드란?)

환영합니다, Rolling Ress의 카루입니다.​ 파이썬에서는 'Pythonic'이라는 형용사가 있습니다. 말 그대로, 파이썬스러운 코드를 의미해요. 기존 파이썬 문법들과 크게 차이가 나지 않고, 간결하며 의미를 명확하게 이해하기 쉽다면 그런 코드는 모두 Pythonic하다고 볼 수 있겠습니다. 귀찮은 문법을 간결하게 표현할 수 있는 'Syntax sugar'와 어느 정도 일맥상통한다고 볼 수 있겠어요.​ 오늘은 Python의 코딩 효율을 높여주는 편리한 문법들을 살펴보겠습니다.1. List comprehension2의 배수를 리스트(배열)에 저장하는 코드를 작성해보겠습니다. l = [] # 리스트를 선언하고for x in range(1, 21): # 반복문을 돌며 if x % 2 == 0: # 짝수..

Python 2024.09.24

C언어를 처음 배웠던 시절의 코드를 다시 보았다.

때는 2017년. 지금으로부터 약 7년 전이다. 초등학교 6학년 겨울방학, 컴퓨터에 푹 빠졌던 나는 부모님께 C언어 학원을 보내달라고 졸랐다. 그리고 거기서 걸으면 안 될 길을 걷고야 말았다. 세상에. ​ #1. 뭘 집어넣는 거야? // 세 과목의 성적을 입력받아 합계와 평균을 구하는 프로그램 setbuf(stdin,NULL); int sj = ("%d", sj); int sj2 = ("%d", sj2); int sj3 = ("&d", sj3); // ...이하 생략 ㅋㅋㅋㅋㅋㅋ 대환장... 아마 scanf("%d", &sj);를 의도한 것 같은데, 무슨 생각으로 저랬을까. 참고로 의외지만 저 코드는 문법상으로 아무 문제가 없다. 쉼표 ',' 연산자는 두 식의 값을 평가한 후, 뒤의 것을 돌려준다. 즉 ..

카테고리 없음 2024.01.17

[TastyNav] #1: 중앙대학교 맛집 앱 개발 시작!

환영합니다, Rolling Ress의 카루입니다. ​ 따로 언급은 안 했는데, 저는 현재 COMP 동아리에 소속되어 있습니다. 개인적으로 매우 만족하는 동아리 중 하나예요. 이 동아리에 들어올 때 좀 우여곡절이 있었는데(^^,,) 어쨌든 무사히 들어오게 되었습니다. ​ 지금은 팀 프로젝트를 진행중이에요. 저희 팀은 중앙대학교 주변 맛집 앱을 만들고자 합니다. TastyNav는 개발 코드명이에요. 아직 앱 이름이 정해지지 않아서, 도메인이나 내부적으로는 TastyNav를 사용하고 있습니다. ​ 개발 언어: JavaScript (프론트: React.js with PWA, 백엔드: Node.js) ​ 1) 자료조사 첫째로, 맛집과 메뉴 목록을 조사했습니다. 공유 엑셀 파일을 이용해서 정보를 취합했습니다. 맛집..

중앙대학교 2024.01.17

[C11] C언어도 제네릭이? _Generic 키워드 살펴보기

환영합니다, Rolling Ress의 카루입니다. ​ C언어에 제네릭이 이미 들어갔었네요? 물론 C++의 template이나 다른 언어의 제네릭에 비해선 크게 약하지만, 그래도 가능은 하다라는 점에 의의를 두고 싶습니다. C23에서는 아예 auto 키워드가 본래의 의미를 잃고 C++의 auto와 동일하게 변경되는데, C언어도 발전하는 모습이 보기 좋습니다. 그래봐야 실무에선 아직도 C99 쓰겠지만. _Generic(expr, list) 표현식은 간단합니다. 이때 list에는 다음과 같은 것들이 올 수 있습니다. // type은 VLA 또는 VLA를 가리키는 포인터가 올 수 없음. type1: expr1, type2: expr2, default: expr3 C언어는 오버로딩을 지원하지 않기 때문에 매크로의..

C언어 2023.12.31

[C23-] 함수 파라미터에 void를 써야 할까? ─ int func(), int func(void)

환영합니다, Rolling Ress의 카루입니다. ​ 이 글은 C23 이전 표준안에 대해 다루고 있습니다. 사실 아직까지도 C11은 커녕 C99를 주로 쓰는 경우가 많아서, 대부분 이 글에 적용된 내용이 해당됩니다. 한 20년쯤 지나면 이 글이 필요 없어질 수도 있겠군요. 참고로 C++에는 해당이 되지 않는 이야기입니다. C11 이전의 C 표준에서만 해당됩니다. ​ 흔히 C언어에서는 함수를 선언할 때 꼭 void를 쓰라고 합니다. int func(); int func(void); C++ 에서는 위 둘의 뜻이 정확히 같습니다. 매개변수를 받지 않는다는 뜻이죠. 오히려 func(void)보다는 func()를 권장합니다. C# 같은 언어에서는 아예 첫 번째 표현만 가능하고요. (두 번째 표현을 쓰면 오류가 나..

C언어 2023.12.04
반응형