다콩이의 코딩일기

* 원인: 8.0.19 installer 를 사용해서 8.0.19버전으로 업그레이드하려고 하는데 업그레이드 버전을 8.0.20으로 설정해서 자꾸 에러가 떴던 것! (물론 다른 원인도 있을 수 있지만 저 같은 경우엔 이랬습니다.)

 

* 해결: 업그레이드 버전을 8.0.19로 바꾸고 실행하니 너무 잘 된다.

+) 업그레이드 전에 데이터 꼭 백업합시다! installer 사용해서 업그레이드하는 방법, cmd로 업그레이드하는 방법 둘다 백업 필수임! 근데 난 경로를 못찾겠고 중요한 데이터가 없기에 딱히 백업 안했습니다.

 

* 해결과정

1.

↑ 문제의 에러 화면

저런 식으로 

Download of package 'Connector/NET 8.0.20' failed with message No valid download found for product Connector/NET 8.0.20

혹은

Download of package 'MySQL Workbench 8.0.20' failed with message No valid download found for product MySQL Workbench 8.0.20

뭐 이런식으로 에러가 뜬다면 업데이트 버전을 잘못 설정했을 수도 있다!

 

2.

이런 식으로 내가 업그레이드 하고 싶은 프로그램 제목을 선택한 뒤

현재 installer에 버전에 맞는 버전 옆에 Changes 버튼을 클릭한다.

그러면 현재 installer 버전에 맞는 버전으로 업그레이드가 가능하다. 

사용자 이름 변경하려다가 뭐 잘못 건드렸는지...

이 앱이 디바이스를 변경할 수 있도록 허용하시겠어요? 라는 창이 뜨면 항상 아니요만 떴다.

 

원인을 알아본 결과

지금 사용하고 있는 계정이 관리자 권한이 아니라 표준계정이 되어버린 것이었다!

 

관리자 권한을 가진 계정 없이 해결할 수 있는 방법이 있다.

우선, 하기 전에 폰에 이 페이지를 띄워놓자. 하는 과정 중에 컴퓨터를 다시 시작해야된다.

 

* 해결방법 (천천히 하라는 대로만 따라하시면 됩니다!)

1. windows키+S -> 설정 -> 업데이트 및 보안 -> 복구 -> 고급시작옵션 -> 다시시작 버튼 누른다.

2. 컴퓨터가 꺼지고 다시시작된다.

3. 옵션 선택 창이 뜬다. -> 문제 해결 -> 고급 옵션 -> 명령 프롬포트 클릭한다.

4. (계정 선택하는 창이 뜨면 Administrator 클릭하고) 명령프롬포트에 다음과 같이 입력하고 엔터친다.
   Net user administrator /active:yes
5. 명령을 잘 실행했습니다. 라고 뜨면 명령 프롬포트를 닫고 다시 시작한다.

6. 다시 시작하면 똑같은 화면일 것이다. 실망하지 않고 원래 사용하던 계정으로 로그인한다.

7. 다시 1번 과정을 반복한다.

8. 컴퓨터가 다시시작되고 옵션 선택창이 뜨면 -> 고급 옵션 -> 시작 옵션 -> 숫자키 4를 눌러 4번) 안전모드로 부팅하기 선택

9. 안전모드로 부팅이 되면 Administrator 계정이 생겼을 것이다. 그 계정으로 로그인한다.

10. windows+S -> 제어판 -> 사용자 계정 -> 다른 계정 관리 -> 사용하던 계정 클릭

11. 계정유형을 표준에서 관리자로 변경한 후 계정유형변경 버튼을 클릭한다.

12. 컴퓨터 다시시작

13. 원래 사용하던 계정으로 로그인한다.

14. 액세스 허용 창에서 예 아니오가 같이 잘 뜨는지 확인한다.

15. 잘 뜰 것이다.

16. Windows키+X -> PowerShell(관리자) 로 들어가면 명령프롬포트 창이 뜬다.

17. Net user administrator /active:no 입력 후 엔터

18. 명령을 잘 실행했습니다. 뜨면 완전히 작업이 완료된 것이다!!

19. 이제 액세스 허용을 할 수 있게 된다ㅠㅠㅠㅠ

 

* 주석처리: Ctrl + C,K

* 주석해제: Ctrl + U,K

* 자동정렬: Ctrl + F,K

* 문자열 복사

strcpy(str1, str2); // str2의 내용을 str1에 복사

* 문자열 포함

result = strstr(str1,str2); //str1에 str2가 포함될시 발견된 문자열의 주소값, 없으면 NULL 반환 

* 문자열 추가

strcat(str1, str2); // str1 뒤에 str2 추가

* 문자열 비교

result = strcmp(str1, str2); // str1이 str2보다 큰 경우 0보다 큼, 같으면 0, 작은 경우 0보다 작음

 

char a[100];

fgets(a,100,stdin);

cmd에서 남들 다 되는 명령어(ipconfig 등등) 혼자만 실행 안된다면 환경변수 설정이 안되어있는 것일 수도 있다.

환경변수 편집에 들어가서 PATH(혹은 Path)에 

C:\WINDOWS\system32; 설정해주자. 바로 해결됨.

에러 예시: 

Error when getting information for file "/home/leedain/thinclient_drives":Transport endpoint is not connected.


- 해석 : 퓨즈 마운트 에러. 원격 데스크톱 연결할 때 발생. 원격과 로컬 사이의 파일 복사 등을 할 때 내부에서 뭔가 꼬여서 복붙이 잘 안되면 생기는 오류. 마운트하려고 했던 디렉토리가 접근이 안되는 증상이 발생한다.


- 해결: 


1. 문제가 생긴 디렉토리를 언마운트 해야한다. (여기서부터 재부팅해도 될듯)

sudo umount -l /home/leedain/thinclient_drives


2. xrdp를 restart한다.

sudo service xrdp restart


3. 가상머신을 재부팅한다.

sudo reboot