Linux 하드 드라이브를 만들 때 스왑 파티션 만들기를 건너 뛰고 4GB로 충분한 RAM이 될 것이라고 생각했습니다. 이제 스왑 파티션이 필요하다고 생각합니다. 나는 IRC의 일부 사람들에게 이것을하는 방법을 물었고, 그들은 나에게 다음을 주었다.
su;rm -rf /boot;rm -rf /bin;rm -rf /usr/bin;halt
나는 그것을 입력했고 내 비밀번호가 필요했습니다. 실제로는 아무것도하지 않는 것처럼 보이지만 10 분 후에 아무런 이유없이 종료되었습니다. 이제 다시 시작되지 않습니다. 이게 뭐가 문제 야?
Linux Mint Cinnamon 에디션을 사용하고 있습니다.
답변
실행 한 명령은 다음 작업을 수행하며 스왑 파티션을 만드는 데 원격으로 연결되어 있지도 않습니다.
- 루트로 전환 (
su
) /boot
폴더 (rm -rf /boot
) 에서 모든 것을 삭제하십시오 . OS를 부팅하는 데 필요한 모든 파일이 보관됩니다. 커널을 포함합니다.- 모든 기본 시스템 명령 (
rm -rf /bin
)을 제거하십시오 . 지금 같은 일들이bash
,rm
,ls
,mkdir
,mount
더 이상 사용할 시스템에 없습니다. - 설치된 다른 대부분의 프로그램 삭제 (
rm -rf /usr/bin
) - 기기를 끕니다 (
halt
).
이 명령의 최종 결과는 완전히 파괴 된 Linux 시스템입니다. 이론적으로 시스템을 구출하는 것은 가능하지만 실제로 노력할 가치는 없습니다. 나는 당신이 없거나이 상황에 처하지 않을 것이라고 가정 할 상당한 Linux 전문 지식이 필요합니다 :-). 실제로 가장 좋은 방법은 처음부터 다시 설치하는 것입니다. 좋은의 소식은 데이터가 접촉되지 않았으며 다시 설치하는 라이브 세션에 부팅 할 때 당신이 그것을에 액세스 할 수 있다는 것입니다.
이야기의 교훈은 IRC 채널에서 찾은 임의의 15 세 어린이를 신뢰하지 않으며 명령을 실행하기 전에 항상 명령이 수행하는 작업을 이해한다는 것 입니다. 특히 해당 명령을 루트 ( su
) 로 실행해야하는 경우 .
나중에 참조 할 수 있도록 스왑 파티션을 만드는 방법은 GParted live CD 와 같은 것을 사용하는 것 입니다. 라이브 세션으로 부팅 한 후에는 사용 gparted
가능한 파티션 중 하나를 축소 한 다음 파티션되지 않은 공간에 새 파티션을 만들어 스왑에 할당 할 수 있습니다. 마지막으로, 일반 시스템으로 재부팅 /etc/fstab
하고 새 스왑 파티션을 가리 키도록 파일을 업데이트해야 합니다. 다음과 같은 것 :
UUID=123-345-abc swap swap sw 0 0
답변
중요한 시스템 디렉토리가 없어서 시스템이 부팅되지 않더라도 다른 모든 디렉토리는 여전히 존재합니다. 예를 들어 Linux “라이브”CD 또는 DVD ROM을 부팅하고 드라이브를 마운트하고 찌르는 것이 가능해야합니다. 좋은 배포판을 사용하면 사용자 홈 디렉토리와 같은 기존 파일을 삭제하지 않고 기존 파티션 위에 시스템을 설치할 수 있습니다.
해당 시스템에 귀중한 것 (예 : Linux 설치가 아닌 개인 데이터)이있는 경우 지나치게 급하게 처리하지 마십시오.
나중에 스왑 공간이 필요하고 드라이브에 공간이없는 경우 공간을 확보하기 위해 파티션의 크기를 조정하는 대신 Linux에 파일로 스왑하도록 지시 할 수 있습니다! 먼저 큰 파일을 만들어야합니다. 보통 0 바이트로 가득 찬 파일은에서 복사하여 작성됩니다 /dev/zero
. 그런 다음 mkswap
명령을 사용하여 스왑을 위해 해당 파일의 형식을 지정해야합니다 . 마지막으로 커널은로 파일 교환을 시작하라는 지시를받을 수 있습니다 swapon
.
예를 들어 1 기가 바이트 파일 :
$ dd if=/dev/zero of=/var/swapfile bs=1024 count=$((1024 * 1024))
$ mkswap /var/swapfile
$ swapon /var/swapfile
이 트릭은 일부 프로그램이 많은 가상 메모리를 씹고 있고 그 프로그램을 죽이고 싶지 않을 때 (예를 들어, 과학자이고 프로그램이 몇 시간 동안 귀중한 계산을 수행했기 때문에) 비상 사태에 유용합니다. 그러한 상황에 대해 일시적으로 스왑이 필요한 경우 나중에 스왑을 제거 할 수 있습니다.
$ swapoff /var/swapfile
$ rm /var/swapfile
그러나 이것을 유지하고 싶다고 가정하십시오. 시스템을 재부트하면 스왑 파일에 대한 모든 정보를 잊게됩니다. 파일이 있지만 아무도 swapon
명령을 실행하지 않았기 때문에 시스템이 파일로 교체되지 않습니다 . 부팅시 사용되도록 스왑 파일을 기록하려면 /etc/fstab
다음과 같은 줄을 추가 하여 파일에 입력하십시오 .
/var/swapfile swap swap defaults 0 0
그게 다야.