운영체제68 Windows 10 ] 네트워크 브리지 설정 네트워크 브리지 네트워크 브리지(Network Bridge) 기능은 두 개 이상의 네트워크 어댑터(랜카드)를 결합하여 하나의 논리적 네트워크로 통합하는 기능을 제공한다. 브리지된 네트워크에서는 모든 연결된 장치가 동일한 IP 서브넷 내에 있으므로, 하나의 IP 주소를 할당받고 통신한다. 또한 네트워크 브리지를 설정하여 두 랜카드가 하나의 논리적 네트워크로 결합했을 때, IP 주소는 하나지만 물리적인 랜포트는 여전히 두 개가 존재하므로 두 랜포트를 각각 다른 장치에 연결하여 독립적으로 각기 다른 통신을 할 수 있다. 네트워크 브리지 연결 방법 제어판 - 네트워크 및 인터넷 - 네트워크 연결 네트워크 브리지 설정할 이더넷 인스턴스를 드래그 하여 선택 후 우클릭 - 네트워크 브리지 연결을 선택하거나 하나씩 선.. 2023. 11. 22. Windows ] 원격 데스크톱 연결 시 파일 전송하기 원격 데스크톱 연결에서 옵션 표시 클릭 로컬 리소스 - 로컬 장치 및 리소소스 - 자세히... 클릭 드라이브 - 연결할 드라이브 체크 이렇게 설정한뒤 원격 데스크톱 연결한다. 원격지 Host PC의 파일 탐색기 - 내 PC에 접근하면 Guest PC의 드라이브에 접근할 수 있다. 이후 파일 복사 붙여넣기를 통해 서로 전송하면 된다. 2023. 11. 17. 윈도우에서 문자열 표현 형식, LPSTR, LPCSTR, LPWSTR, LPCWSTR, LPTSRT, LPCTSTR 윈도우에서는 문자열 처리를 위해 char*, wchar_t*, TCHAR*를 쓰기보다 다음과 같은 표현을 사용하고 있다. LP : Long Pointer의 약자 C : const의 약자 STR : string의 약자로 null terminated 된 캐릭터 배열을 의미한다. W : wide char의 약자로 유니코드를 의미한다. T : TCHAR의 약자로 프리컴파일 옵션에 따라 유니코드 문자(wchar_t) 또는 ANSI 문자(char)로 형변환되는 자료형을 의미한다. LPSTR : char* LPCSTR : const char* LPWSTR : wchar_t* LPCWSTR: const wchar_t* LPTSTR : TCHAR* LPCTSTR : const TCHAR* 2023. 11. 3. Windows ] 계정 비밀번호 없이 원격 데스크톱 연결 사용하기 1. 먼저 Windows 키 + I 로 설정 - 계정 - 로그인 옵션 - 비밀번호 - 변경 을 눌러 현재 설정된 비밀번호 삭제 현재 암호를 입력하고 다음창에서 아무것도 누르지 않은채 다음을 누르면 비밀번호를 삭제할 수 있다. 2. Windows 키 + R - "secpol.msc" 입력 - 로컬 보안 정책 실행 3. 로컬정책 - 보안 옵션 - "계정: 콘솔 로그온 시 로컬 계정에서 빈 암호 사용 제한" 정책 더블 클릭 후 사용 안함으로 변경함 4. 이후 원격 데스크톱 연결에서 컴퓨터와 계정명을 입력하여 연결하고 비밀번호 없이 확인을 누르면 접속가능하다 참고로 연결설정 - 다른 이름으로 저장을 누르면 현재 로그온 설정을 .rdp 파일로 저장할 수 있는데 나중에 이 파일을 더블클릭해 쉽게 연결할 수 있다. .. 2023. 10. 12. 파일 디스크립터 파일 디스크립터(File Descriptor, FD)란 Linux 혹은 Unix 계열 운영체제에서 프로세스가 파일 또는 네트워크 소켓과 같은 입출력 리소스에 대해 접근할 때 사용하는 추상적인 식별자이다. 윈도우에선 HANDLE이라고 부른다. 파일 디스크립터는 0이 아닌 정수값을 가지며 C언어에서는 int 형식으로 표현된다. 유효하지 않거나 오류인 경우를 나타내는 음수값과 다른 목적으로 고정된 0부터 2를 제외하고, 프로세스가 파일을 열거나 소켓을 생성할 때 일반적으로 3부터 시작해 파일 디스크립터 숫자 중 사용하지 않는 가장 작은 값을 할당한다. 이렇게 할당된 파일 디스크립터를 사용하여 프로세스가 열려있는 파일에 시스템 콜을 사용하여 접근할 수 있다. Reference: https://en.wikiped.. 2023. 9. 28. Windows Command Prompt 배경색, 글자색, 글꼴 바꾸기 명령 프롬프트 제목표시줄에서 우클릭 - 속성 에 들어가 화면 배경과 화면 텍스트 색, 그리고 글꼴을 바꿀 수 있다. 이렇게 GUI로 설정한 내용은 명령 프롬프트 창이 실행될 때마다 적용되며, 사용자가 다른 설정으로 변경하지 않는 한 계속 유지된다. 단, 색의 경우 시스템명령어를 통해 현재 실행중인 프롬프트의 색만 설정을 바꿀 수 있다. color /? 명령어를 입력하면 도움말을 볼 수 있다. 2023. 9. 15. 윈도우10 탐색기에서 최근에 사용한 파일 / 폴더 목록 지우기 탐색기 - 옵션 - '폴더 및 검색 옵션 변경' '최근에 사용된 파일 / 폴더 표시' 체크 해제 후 지우기 클릭 2023. 7. 11. Windows ] TFTP Client 기능 켜기 제어판 - Windows 기능 켜기/끄기 - TFTP 클라이언트 체크 명령 프롬프트에서 tftp 명령어를 통해 사용 가능하다. 바이너리 파일을 송신하는 경우엔 -i 옵션을 써야 whole 파일이 문제없이 전송이 되었다. 2023. 7. 11. Windows ] 윈도우에서 파일 Hex dump 하는 방법 파워쉘을 열고 아래 명령어 뒤에 hex dump할 파일 경로를 입력하면 된다. format-hex Format-Hex C:\Users\Username\Documents\example.bin Format-Hex 명령어는 내부적으로 아래의 과정으로 처리된다. Get-Content -Path [파일 경로] -Encoding Byte | Format-Hex 2023. 5. 14. 인터넷 익스플로러 엣지로 자동전환 안되게 하는 법 아래 경로로 이동한다. C:\Program Files (x86)\Microsoft\Edge\Application\112.0.1722.39[버전]\BHO 폴더 안에 다음과 같은 파일이 있는데 IE에서 Edge로 자동전환하게 하는 프로그램이다. 삭제하는 것은 찜찜하니 다음과 같이 폴더명을 바꿔주면 된다. 2023. 4. 13. Windows ] dism 운영체제 이미지 손상 복원, sfc 시스템 파일 무결성 검사 및 복원 Windows 이미지 손상 복원dism /online /cleanup-image /restorehealth Windows 시스템 파일의 무결성을 검사하고 손상된 파일을 복원sfc /scaannow 디스크 검사하고 파일 시스템 오류 수정chkdsk c: /f 2023. 4. 9. Win32 API, Windows API Windows API란? Windows에서 동작하는 App을 만들 때, Windows가 프로그래머들을 위해서 제공해주는 함수의 집합을 말한다. 과거 Windows 95, 98, ME 및 NT와 같은 32 비트 운영체제에서 사용되는 인터페이스는 Win32 API라는 이름으로 불렸다. 현재는 64비트 지원이 추가되면서 Win32 API를 포함하여 Windows API라고 부르고 있지만 아직도 Win32 API라고 칭하는 사람들이 있다. Windows API를 사용하려면? Windows API를 사용하려면 해당 API 함수가 선언된 헤더 파일과 라이브러리를 프로젝트에 추가해야 하며, 보통 Windows API 함수는 windows.h 헤더 파일 안에 선언되어 있으므로 이 헤더 파일을 포함시키면 된다. Visu.. 2023. 3. 31. Windows ] 도 degree ° 기호 빠르게 삽입하기 Alt 키를 누른상태에서 숫자 0176을 입력하면 도 기호가 삽입된다. ° 출처 : https://support.microsoft.com/ko-kr/office/%EC%82%BD%EC%9E%85-%EC%A0%95%EB%8F%84-%EA%B8%B0%ED%98%B8-f1d062b6-577f-4fe2-8a51-c6f7a862a8b7 2023. 2. 5. Windows ] Alt + Tab 이 안먹힐 때 해결법 윈도우 탐색기를 열고 작업관리자에서 윈도우 탐색기를 재시작한다. 2023. 2. 3. 윈도우 배치파일(.bat) 만들기 (레지스트리를 통해 시작 프로그램에 등록) 및 유용한 명령어 윈도우 배치파일(batch file)은 명령 프롬프트(cmd)에서 순서대로 실행할 명령어들을 한번에 일괄로 실행 실행할 목적으로 만드는 명령어들의 집합 파일이다. 보통 윈도우 배치 스크립트는@echo off로 시작해서 이후 실행할 명령어들이 나열된다. 여기서@ 는 해당 명령어를 화면에 표시하지 말라는 뜻이고echo off 는 이후 실행할 명령어들을 화면에 출력하지 않기 위해 echo를 끄는 것이다. 그 다음으로 아래 문구 또한 배치파일 초반에 적어두는 경우가 많다.pushd “%~dp0”보통 배치파일 스크립트는 실행될 위치를 염두해 두고 상대경로로 작성을 하게 되는데, 관리자 권한으로 배치파일을 실행시 명령 프롬프트 위치가 C:\WINDOWS\system32 로 실행되기 때문에 의도한 결과가 나오.. 2023. 1. 18. Windows 10 ] 윈도우 시작 프로그램으로 등록하기 바로가기를 만들어 아래 경로에 가져다 둔다. 개별 사용자용 : C:\Users\Users\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 전체 사용자용 : C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 혹은 레지스트리에 등록하는 방법 Window 키 + R, regedit 입력 후 확인 개별 사용자용 : HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 전체 사용자용 : HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run 해당 경로로 먼저 이동한다. 오른.. 2022. 11. 3. Windows ] ping 테스트 안될 때 or 한쪽만 될 때, ICMP 프로토콜 응답 허용하기 Window + I 로 설정 켜키 - 네트워크 및 인터넷 - Windows 방화벽 - 고급 설정 - 인바운드 규칙 파일 및 프린터 공유(에코 요청 - ICMPv4-In) 규칙 사용 클릭 2022. 10. 19. gdb의 플러그인 pwndbg 설치 https://github.com/pwndbg/pwndbg GitHub - pwndbg/pwndbg: Exploit Development and Reverse Engineering with GDB Made Easy Exploit Development and Reverse Engineering with GDB Made Easy - GitHub - pwndbg/pwndbg: Exploit Development and Reverse Engineering with GDB Made Easy github.com 설치는 간단하다. 위 사이트를 git clone 하고 pwndbg 폴더에 들어가 setup.sh 파일을 실행하면 설치가 된다. 그리고 디버그할 실행파일이 있는 곳으로 이동해서 gdb 명령어를 입력하면 p.. 2022. 10. 18. Linux ] cat 명령어, > 리다이렉션 📝 cat 명령어 사용법 cat [옵션][파일명] 📝 파일 내용 출력하기 cat file.txt cat -n file// 행번호 표시해서 출력 cat file1 file2// 여러 파일을 연속해 출력 📝 리다이렉션 사용해 파일 만들기 cat 명령어와 > 리다이렉션 사용해 파일 만들기 cat > file// 기존에 있던 내용을 지우고 저장 cat >> file// 기존 파일 내용 뒤에 연속해 기록 치면 파일 내용을 입력할 수 있게 커서가 깜빡거린다. 내용 입력 후 엔터를 치고 Ctrl + D 를 누르면 입력한 내용이 파일에 저장이 된다. echo 명령어와 > 리다이렉션 사용해 파일 만들기 echo "Hi" > hi.txt 기타 명령어의 출력 내용을 파일에 기록하기 ll > file.txt ls -al > .. 2022. 10. 10. Linux ] gcc -O 최적화 옵션 플래그 컴파일러의 최적화 수준을 설정 옵션 최적화수준 -O0 최적화를 수행하지 않는다. (기본값) -O1 또는 -O 코드 크기와 실행 시간을 줄이는 것을 제외한 최적화는 실행하지 않는다 -O2 메모리 공간과 속도를 희생하지 않는 범위내의 모든 최적화를 수행한다 loop unrolling과 function inlining에 대한 최적화를 수행하지 않는다 -O3 O2 최적화에 인라인 함수와 레지스터에 대한 최적화를 추가로 수행한다. -Os O2 최적화를 수행하지만 코드 크기를 증가시키는 최적화는 생략한다. -Ofast 사용이 권장되지 않는 최적화 옵션 ※ 커널 컴파일 시 최적화 옵션 -O2만 사용하는 이유 커널은 최적화된 수행 속도를 위해 의도적으로 인라인 함수를 사용하고 있다. -O3 최적화는 컴파일러가 판단해서.. 2022. 10. 9. Linux ] gdb 디버거 사용법 -g 옵션을 넣고 컴파일 한다. gcc main.c -g -o main 컴파일 최적화 옵션은 사용하지 않는 것이 좋다. gdb 실행파일명으로 실행한다. gdb ./main 또는 gdb로 실행중인 프로세스의 식별자인 PID를 load 하는 것도 가능하다. 소스코드 보기 l : main 심볼부터 소스코드 출력 l 10: 10행을 기준으로 소스코드 출력 l - : 이전행의 소스 출력 l func: 해당 함수의 소스 출력 l file.c:func: 해당 파일의 해당 함수 부분을 출력 l file.c:10 : file.c 파일의 line 10을 기준으로 출력 set listsize 20 : l 명령의 기본 출력 코드 수를 20라인으로 설정 어셈블리 코드 보기 disas 라인/함수명 분기 jump 행번호/함수명 엔.. 2022. 10. 9. Linux ] rm 명령어 rm (옵션) 삭제할 파일 또는 디렉토리 명 옵션 -r : 일반 파일은 그냥 지우고 디렉토리는 리렉토리 포함 하위 경로의 파일을 모두 지운다. -i : 지우기 전에 사용자의 확인을 받는다. (y/n) -f : 확인하지 않고 지운다. ex. rm -rf * 현재 디렉토리에 속한 모든 파일과 디렉토리를 물어보지 않고 삭제한다. 2022. 10. 9. Linux ] 연속으로 명령 실행시키기 ; & && || pipe a; b : 앞의 명령어가 실패해도 다음 명령어 실행 a && b : 앞의 명령어가 성공했을 때 다음 명령어가 실행 a & b : 앞의 명령어를 백그라운드로 돌리고 동시에 뒤의 명령어를 실행 a || b : 앞의 명령어가 성공했을 때 다음 명령어 미수행, 앞의 명령어 실패 시 다음 명령어 실행 그 외 a | b : pipe, a의 수행 결과를 b가 받아서 수행 ex. cat /etc/passwd | grep mail 시스템의 계정정보가 들어있는 /etc/passwd 파일을 출력하는데 mail 이란 문자열이 들어간 라인만 필터링 tail -20 /etc/passwd | cat -n /etc/passwd 파일을 뒤에서 20줄 출력하는데 cat -n 옵션인 줄번호를 붙여 출력 2022. 10. 9. Linux ] mv, rename 명령어 사용법, 파일명 변경, 파일 이동, 확장자 일괄 변경 📝 mv 명령어 사용 파일명 변경 mv 기존파일명 변경파일명 📝 mv 명령어 사용 파일 이동 mv 기존파일경로/기존파일명 옮길경로/변경파일명 파일이 위치를 이동하면서 파일명을 변경하는 것도 가능 📝 rename 명령어를 사용하기 위해 설치 sudo apt install rename 📝 테스트용 빈 파일 만들기 touch test1.c && touch test2.c 📝 rename 명령어 사용하여 확장자 또는 파일명 일괄 변경하기 rename 's/변경전문자열/변경후문자열/' 변경대상 rename 's/.c/.txt/' *.c rename 's/.txt/.c/' *.txt rename 's/test/TEST/' *.c 2022. 10. 9. WSL2 설치하기 (Windows Subsystem for Linux) https://learn.microsoft.com/ko-kr/windows/wsl/install-manual 이전 버전 WSL의 수동 설치 단계 wsl install 명령을 사용하지 않고 이전 버전의 Windows에 WSL을 수동으로 설치하는 방법에 대한 단계별 지침입니다. learn.microsoft.com 1. PowerShell을 관리자 권한(시작 메뉴 > PowerShell >에서 관리자 권한으로 실행 >을 마우스 오른쪽 단추로 클릭)으로 열고 다음 명령을 입력한다. dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 2. Windows 10 x64 시스템의 경우 버전 1903 .. 2022. 10. 1. 윈도우에서 리눅스 개발환경 구축하기 WSL2 + VSCode 먼저 윈도우 PC에 WSL이 깔려있어야 한다. WSL 설치는 공식 문서에서 자세하게 설명하고 있다. https://learn.microsoft.com/en-us/windows/wsl/install Install WSL Install Windows Subsystem for Linux with the command, wsl --install. Use a Bash terminal on your Windows machine run by your preferred Linux distribution - Ubuntu, Debian, SUSE, Kali, Fedora, Pengwin, Alpine, and more are available. learn.microsoft.com VSCode 에서 WSL extension.. 2022. 9. 30. Windows ] 방화벽 포트 열기 윈도우10에서 방화벽 포트 열기 2022. 9. 25. C ] Windows 에서 PThread 사용하기 (Visual Studio 사용) PThread (Posix Thread)는 유닉스계열의 표준 스레드 라이브러리로 비록 유닉스 계열 라이브러리지만 win32에서도 사용할 수 있는 방법이 있다. 1. 아래 홈페이지 가서 라이브러리를 다운 받는다. https://www.sourceware.org/pthreads-win32/ POSIX Threads (pthreads) for Win32 Open SourcePOSIX Threads for Win32 Current release: 2.9.1 (2012-05-27)See the ANNOUNCEMENT and NEWS for details.Pthreads-w32 release 1.11.0 (2005-06-04) was the last series 1.x.x version! (Version 1.11... 2022. 8. 24. VMware ] Linux Ubuntu 에서 한영키 사용하기 root 권한으로 로그인 쉘 스크립트 파일을 만든다. vi hangul.sh 아래와 같이 입력 후 저장하고 닫기 #!/bin/bash setkeycodes 72 122 setkeycodes 71 123 스크립트 파일 실행하기 chmod +x hangul.sh ./hangul.sh 한영키가 잘 먹히는것을 확인할 수 있다. 이제 systemctl 을 통해 부팅시마다 변경한 설정이 적용될 수 있도록 설정한다 아래 경로로 가서 서비스 새로 등록 cd /etc/systemd/system vi hangul.service 아래와 같이 입력 후 저장하고 닫기 [Unit] Description=Change Hangul keycode [Service] ExecStart=/[스크립트 파일이 있는 경로]/hangul.sh [.. 2022. 8. 14. Linux Ubuntu ] Waiting for cache lock : Could not get lock /var/lib/dpkg/lock-fro 오류 해결 apt update 또는 apt install 시 아래 문구가 무한 반복되는 오류 잠긴 캐시 파일을 다음 명령어로 삭제 sudo rm /var/lib/dpkg/lock* 2022. 8. 14. 이전 1 2 3 다음