리눅스 (backup)2020. 10. 20. 17:18

 

반달가면 이글루에서 백업 - bahndal.egloos.com/439787

 

자주 쓸 일은 없지만, 뭔가 꼬여서 부팅이 제대로 되지 않거나 NVIDIA의 VGA 드라이버를 설치해야 하거나 할 때 리눅스 실행 레벨(run level)을 단일 사용자(single-user, run level 1)로 낮출 필요가 생긴다.

GRUB으로 부팅할 때 실행 레벨을 지정해 주면 되겠다. 

부팅할 때 GRUB이 실행되면서 부팅 메뉴가 나오는데, 여기서 키보드의 e키를 누르면 해당 항목의 세부 내용이 표시되고 이를 변경할 수가 있다.

 

 

화살표키를 눌러서 차근차근 아래로 내려가다 보면 linux로 시작되는 행이 나오는데, 이 행 맨 마지막에 실행 레벨을 써 준다.

linux  /boot/vmlinuz-... splash=silent quiet showopts (원래 설정)

linux  /boot/vmlinuz-... splash=silent quiet showopts 1 (실행 레벨 1로 지정, 단일 사용자 모드로 부팅)

이 상태에서 F10을 누르면 변경된 설정을 적용해서 부팅이 진행된다. 변경 내용이 저장되는 것은 아니므로 다음에 부팅할 때는 원래 설정이 적용된다. 

 

Posted by 반달가면

댓글을 달아 주세요

리눅스 (backup)2020. 10. 20. 11:12

 

반달가면 이글루에서 백업 - bahndal.egloos.com/437831

 

멀티미디어 코덱 등 오픈수세 리눅스의 기본 패키지 저장소에는 없는 패키지를 설치하기 위해 팩맨 패키지 저장소(Packman Repository)를 추가해 보았다. 추가적인 오픈수세 패키지 저장소들 중에 가장 크고 잘 알려진 저장소다.

패키지 추가 명령 형식은 아래와 같다.
zypper ar -f http://[저장소URL] [저장소 이름]
  ar: 저장소 추가
  -f: 자동 갱신(auto refresh)

 

팩맨 저장소의 URL은 오픈수세 12.2의 경우 아래와 같다.

 

packman.inode.at/suse/openSUSE_12.2/

 

다른 버전의 경우 위의 디렉토리 이름에서 버전을 바꾸면 된다. /suse/openSUSE_12.3/ 이런 식으로. (웹브라우저로 직접 들어가서 디렉토리 이름을 확인해도 되겠다. 현재 버전 11.1부터 12.3까지 있다. packman.inode.at/suse/ )

 

자, 그럼 팩맨 저장소를 추가해 보자. 루트 권한이 필요하므로 su 명령으로 루트가 된 다음 추가하면 되겠다. 터미널창에서 아래와 같이 입력.

 

su

zypper ar -f http://packman.inode.at/suse/openSUSE_12.2/ packman                               

 

또는 YaST에서 GUI를 통해 추가하는 것도 가능하다. Software Manager(YaST -> Software Management) 상단 메뉴에서 Configuration -> Repositories 항목으로 가면 현재 추가되어 있는 저장소 목록이 나오는데 여기에서 'Add' 버튼을 누르고 안내에 따라 추가하면 된다. 종류(Media Type)를 선택하는 창이 나오는데, 팩맨 저장소의 경우 HTTP로 선택하고 URL을 적어 주면 된다.

 

저장소를 추가한 후에 S/W 관리자를 실행하면 팩맨 저장소에 대응되는 GPG Key를 가져온다는 창이 뜨는데, 'Trust' 버튼을 클릭하면 되겠다. 여기까지 하면 완료. 이제 팩맨 저장소에 있는 S/W를 검색하고 설치할 수 있다.

추가 저장소에 대한 자세한 안내는 오픈수세 홈페이지에 있다. 여기로

 

 

 

Posted by 반달가면

댓글을 달아 주세요

bash script (backup)2020. 10. 20. 11:02

 

반달가면 이글루에서 백업 - bahndal.egloos.com/399592


리눅스 셸에서 산수 계산을 하는 방법이다.

간단한 정수 연산은 아래와 같이 할 수 있다.

expr 34 + 51

이렇게 하면 85가 출력될 것이다. 수와 연산기호 사이에는 반드시 띄어쓰기를 해 주자. 더하기(+), 빼기(-), 곱하기(\*), 나누기(/), 모듈로(modulo, %) 등을 할 수 있다. 곱하기의 경우 연산기호에 유의하자. 반드시 \* 이렇게 써야 한다.

34*51의 결과를 result 변수에 저장하려면 아래와 같이 하면 되겠다.

result=`expr 34 \* 51`
echo "$result"

정수가 아니라 실수를 사용하고 싶다거나, 연산기호가 여러개 들어가는 복잡한 계산을 하려면 expr로는 안되고 bc를 이용해야 한다.

34.8+51.2를 더하고 이 값을 제곱하려면 아래와 같이 하면 되겠다.

echo "(34.8+51.1)^2" | bc

bc를 사용할 때는 곱하기 연산기호를 평소처럼 그냥 쓰면 된다. 예를 들어 24*3은 아래와 같이 하면 된다.

echo "24*3" | bc

echo 명령으로 출력하는 수식은 반드시 따옴표로 묶어 주자.


-- 2013.7.24 추가 --

실수 나눗셈에 대한 부분을 추가로 적어 두기로 했다.

echo "1/2" | bc
0

1을 2로 나누는 예시인데, 결과가 0.5가 아니라 0이라고 나온다. 기본 설정이 정수 연산으로 되어 있어서 그러니, 제대로 된 결과를 얻으려면 scale 변수에 소수점 이하 몇자리를 출력할 것인지 지정해 주어야겠다. 소수점 이하 세자리를 출력하고 싶으면 아래와 같이 해 보자.

echo "scale=3; 1/2" | bc
0.500

이제 결과가 제대로 나왔다.

 

 

Posted by 반달가면

댓글을 달아 주세요