<마운트(mount)>
- 참고로 여기에 쓰이는 명령어 CD는 FC4-i386-DVD파일입니다.
Fedora Core4 iso 이미지 파일이니 설치하셨던 분은 눈치 채실 수 있을 겁니다.
- df -T : 현재의 마운트 상태를 보여준다. cd를 빼기 위해서는 umount 명령어를 이용해줘야 한다.
- umount /media/cdrom : cd-rom을 umount시킨다. 단, cd-rom 파일들을 벗어난 상태에서 사용해야 한다.
=> cd /(최상위 폴더로 올라가서 언 마운트 시켜주면 될 듯)
- mount -t iso9660 /dev/hdc /media/cdrom
: hdc(Secondary Master) 장치를 cd-rom으로 연결해준다.
iso9660 파일 시스템을 이용하도록 하자.
① iso9660 : 파일시스템
② /dev/hdc : 장치 파일
③ /media/cdrom : 마운트 포인트
- mount -t iso9660 /dev/hdc /media/cdrom = mount -t iso9660 /dev/cdrom /media/cdrom
둘다 똑같은 명령어니 hdc로 하시든 cdrom으로 하시든 편하신 방향으로 하길 바랍니다.
- mount -auto /dev/hdc /media/cdrom : 시디롬을 자동으로 마운트
- mount /dev/cdrom /mnt/cdrom : 다른 리눅스에서는 이렇게 해줘야할 때가 있다.
예) c:\ linux / d:\ xp / e:\ window98 / f:\ 2000
위의 예처럼 파티션이 4개로 분할되어 있다고 가상했을 때 다른 파티션의 내용을 보기 위해서는 마운트 시켜줘야 한다.
① wind98에서는 fat이나 fat32로 되어 있는데, 마운트 시킬시 에는 => mount -t vfat /dev/hda3 /win98
② 2000을 마운트 시킬시 에는 => mount -t ntfs /dev/hda4 /windows2000
③ 리눅스 파일 시스템 마운트 시킬시 에는 => mount -t ext3 /dev/hda1 / linuxtest
④ usb 저장 디스크 마운트 시에는 => mount -t vfat(또는 ntfs) /dev/sda1 /media/usbdisk
<IDE 구성>
- Primary Master(0:0) HDD hda
Slave(0:1) hdb
Secondary Mster(1:0) CD-ROM hdc
Slave(1:1) hdd
- cd /media/cdrom : 시디롬에 마운트된 파일들
cd /media/cdrom/Fedora/RPMS : RPMS 폴더에 리눅스의 모든 설치파일들이 저장되어 있다.
<mkisofs 프로그램을 이용하여 iso 이미지 파일 생성 방법>
- mkisofs -r -J -input-hfs-charset UTF-8 -o /root/test.iso /boot
: /boot 폴더를 test.iso라는 이름으로 만들어 /root 폴더에 저장한다.
"-r -J -input-hfs-charset UTF-8 -o"는 옵션 값이다.(이건 외우도록 해주자)
<이미지 파일 마운트>
- mount -o loop /root/test.iso /media/cdrom
: test.iso 마운트 해준다. "-o loop" 옵션은 이미지 파일 마운트 시켜준다.
cd /media/cdrom : 포인트 지점은 /media/cdrom으로 이동
ls -la : 내용을 출력
umount /media/cdrom : 어마운트
이렇게 하면 이미지 파일 내용을 확인해볼 수 있다.
(테스트해볼 목적의 순서이니 원하는 대로 테스트해보도록 하자.)
[문제] /AAA의 파일을 iso 파일로 만든 후 이를 마운트 시켜보자.
(/AAA는 가상의 폴더이므로 없으시면 만드셔도 되고 임의의 폴더를 지정해주자.)
(가능하면 아래의 순서는 안보고 해보도록 하자.)
1. umount /media/cdrom : 기존의 시디롬을 어마운트
2. df -T : 어마운트가 됐는지 확인
3. mkisofs -r -J -input-hfs-charset UTF-8 -o /root/test2.iso /AAA : iso 파일 생성
4. mount -o loop /root/test2.iso /media/cdrom : iso 이미지 파일 마운트
5. cd /media/cdrom : 마운트 포인트 지점으로 이동
6. ls -la : 내용 출력
7. umount /media/cdrom : 출력 확인 후 다시 어마운트
8. df -T : 어마운트가 됐는지 재확인
<리눅스와 프로그램 설치 확인>
- rpm -qa : 프로그램이 설치되어 있는지 확인해보는 명령어
- rpm -qa mkisofs : iso이미지 파일에 있는 만드는 프로그램인 mkisofs 프로그램이 설치되어 있는지 확인해본다. 참고로 mkisofs 프로그램은 가상머신을 깔면 자동으로 깔리는 프로그램이다.
- rpm -qa mc : mc라는 프로그램이 컴퓨터에 설치되어 있는지 확인해본다. 설치되어 있지 않다면 아무것도 출력하지 않는다.
<RPMS 설치>
- RPM이란 Redhat Package Manager의 약자이다. 윈도우의 setup.exe와 비슷하게 프로그램을 설치한 후에 바로 실행할 수 있는 설치 파일로 제작되어 있고, 확장명은 *.rpm이며, 이를 패키지라고 부른다.
- mount -t iso9660 /dev/hdc /media/cdrom 명령어로 마운트 시킨다.
cd /media/cdrom/Fedora/RPMS 명령어로 이동하자.
예 ) firefox-1.0.4-4.i386.rpm => <패키지이름><버전><릴리즈번호>.<아키텍처>.rpm
(i386은 인텔기반임을 의미로, 대부분 i386으로 되어 있다.)
① 패키지이름: firefox 프로그램의 이름
② 버전: 1.0.4 대개 3자리 수로 구성되며 높을수록 최신버전
③ 릴리즈번호: 4 문제점을 개선할 때마다 붙이는 번호
④ 아키텍처: CPU 즉, 이 파일이 설치 가능한 CPU를 의미(CPU 정보를 알수 있는 명령 : arch)
참고: 아키텍처부분에 올 수 있는 것은 다음과 같다.
i386, i486, i586, i686 : 인텔 또는 AMD 계열의CPU
alpha/sparc/ia64 : 해당 CPU를 의미
src : 소스파일패키지. 설치 후에는 별도로 컴파일 해야 함
noarch : 모든 CPU에 설치 가능(NO ARCHitecture)
- rpm -qa mc(x) // rpm -qa mkisofs // rpm -qa bind // rpm -qa vsftpd(x)
일단 위의 명령어로 설치하고자 하는 rpm 프로그램의 설치 유무를 확인해보자.
(위의 명령어는 임의로 한 명령어니 깔고자 하는 프로그램을 확인해보도록 하자.)
cd /media/cdrom/Fedora/RPMS
ls -la mc* : mc로 시작하는 프로그램을 찾는다.
rpm -iv mc(tap키는 자동 완성 기능) : i옵션은 설치, v 옵션은 설치과정을 확인, h옵션은 설치 진행 과정을 # 마크로 출력.
rpm -Uvh mc(tap키는 자동 완성 기능) : U옵션은 기존의 패키지가 설치가 안 되어 있으면 설치하고, 설치가 되어 있다면 업데이트를 한다.
rpm -e mc : mc 프로그램 삭제
mc : 과거의 도스와 똑같은 프로그램이다. 빠져나올시 에는 exit라고 쳐주면 된다.
- 최상위 루트에서 설치
rpm -Uvh /media/cdrom/Fedora/RPMS/mc(tab)
rpm -ql mc : mc 프로그램에 어떠한 파일들이 포함되어 있는지 출력
rpm -qi mc : 설치된 패키지의 상세정보 출력
- rpm 설치/삭제/확인 옵션인 -Uvh, -e, -qa 이 3가지는 반드시 알고 있자.
<파일검색>
* find: 사용자가 지정한 특정 범위에 해당하는 모든 파일을 검색($ find 옵션1 옵션2)
옵션(1) |
기능 |
옵션(2) |
기능 |
-atime N |
n일 전에 액세스(access)된 파일을 찾습니다. |
-exec CMD |
명령(CMD)을 실행합니다. 명령행의 끝은 반드시 \; 로 닫아 주어야 합니다.
현재 찾은 파일이름의 배열을 {}로 입력으로 사용할 수 있습니다. 아래 명령은 확장자가 bak인 모든 파일을 찾아 삭제합니다.
find ./ -name '*.bak' -exec rm -f {} \; |
-mtime N |
n일 전에 수정(modify)된 파일을 찾습니다. |
-ok CMD |
명령을 실행하기 전에 사용자 입력을 기다립니다. |
-newer USR |
file보다 늦게 수정된 파일을 찾습니다. |
-print |
표준출력(stdout)으로 출력합니다. 기본설정입니다. |
-size n |
n*512 바이트 길이를 가지는 파일을 찾습니다. |
-ptint0 |
-print와 같이 동작하지만 출력의 끝에 개행 문자를 붙이지 않습니다. |
-name WORD |
파일 이름으로 검색합니다. 이름에는 메타 문자(*, ?, [])를 사용할 수 있습니다. |
-fprint FILE |
-print와 같이 동작하면서 출력을 지정한 파일로 보냅니다. |
-perm MODE |
퍼미션으로 검색합니다. (-perm +2000) |
-printf FORM |
c 스타일의 포맷을 사용하여 출력합니다.
man 3 printf |
-type LETTER |
파일형식으로 검색합니다. f는 보통 파일, d는 디렉토리 파일을 의미합니다. |
-ls |
ls -dils 형식으로 파일 정보를 자세히 출력합니다. |
-user USR |
사용자 이름이 usr인 파일을 찾습니다. |
-fls |
-ls 와 같이 동작하면서 출력을 지정한 파일로 보냅니다. |
-nouser |
파일 소유자 이름이 등록되어 있지 않은 파일을 찾습니다. |
-nogrp |
파일 소유 그룹 이름이 등록되어 있지 않은 파일을 찾습니다. |
- find / -name test1.c -print : 최상위 루트 디렉토리부터 검색하여 검색된 파일을 한 행에 하나씩 표준 출력
- find . -name test1.c -print : 현제의 작업 디렉토리에서 검색
- find / -size +1000 -print : 최상위 루트에서 크기가 1000블록 이상인 파일 검색
- find . -size -1000 -print : 현 디렉토리에서 크기가 1000블록 이하인 파일 검색
- find . -mtime +10 -print : 10일 이전에 수정된 파일 검색
- find . -mtime -10 exec rm {} \; : 10일 이내에 수정한 파일을 검색하여 모두 지운다.
<yum을 이용한 rpm 프로그램 설치>
- find /media/cdrom -name dovecot* : 메일관련 프로그램 검색
- rpm -Uvh /media/cdrom/Fedora/RPMS/dovecot(tab) : 오류 발생
=> 종종 설치가 안 되는 프로그램이 있다.
이것이 RPM의 단점으로 의존성에 있다.
즉 어떠한 프로그램이 설치되어 있어야 깔고자 하는 프로그램이 설치되는 것이다.
이러한 초보자들의 불편한 점을 해결해주는 것이 yum 명령이다.
yum은 인터넷에 연결해서 설치해준다.(미러 사이트에서 다운받아서 설치한다)
* yum 기본 명령
yum list : 업데이트 가능한 모든 소프트웨어 리스트 보이기
yum check-update OR yum list updates : 업데이트 가능한 패키지 보기
yum update : 업데이트 가능한 패키지 업데이트하기
yum install : 특정 패키지 업데이트 하기
yum search : 패키지 검색
yum info : 패키지의 기본 정보보기
- yum install dovecot : yum 명령어를 이용한 인스톨(의존성이 있는 패키지)
- 설치가 잘 됐는지 확인
rpm -qa dovecot
rpm -qa mysql
rpm -qa qa perl-DBI
- 설치한 것을 삭제
rpm -e dovecot
rpm -e mysql
rpm -e qa perl-DBI
=> 의존성이 이는 패키지의 경우 삭제할 때는 순서를 지켜줘야 한다.
위에서도 언급했지만 의존성이란 단점 때문이다.
위의 프로그램은 dovecot -> mysql -> perl-DBI 순으로 삭제를 해줘야한다.
만약에 순서를 틀리게 되면 이러한 프로그램부터 삭제를 해줘야 한다는 문장과 함께 오류가 걸릴 것이니 알아두자.
- 잘 지워졌는지 확인
rpm -qa dovecot
rpm -qa mysql
rpm -qa qa perl-DBI
- yum -y install dovecot : y 옵션은 설치할 것이냐고 묻지 않고 강제로 예스가 되며 설치.
- yum remove mysql : mysql을 삭제해준다.(의존성이 있는 패키지일 경우)
- yum -y remove mysql : 강제적으로 y를 해줌으로써 질문에 대답을 자동으로 해준다.
- yum과 관련된 파일이 있는 폴더이다.
cd /etc/yum
cd /etc/yum.repos.d/
<업데이트>
- yum check-update : 업데이트가 가능한 패키지를 출력한다.
- rpm -qa firefox : firefox가 설치되어 있는지 확인한다.
- yum info firefox : firefox 정보 출력한다.
- yum update firefox : firefox를 업데이트한다.(1.0.4 => 1.0.8)
- yum update : 컴퓨터의 모든 패키지를 업데이트해준다.
=> 직접 해본적은 없으나 듣기로는 대략 6시간 정도 걸린다고 함. 컴퓨터에 따라 달라질지는 알 수는 없다.
- rpm -qa firefox : 업데이트가 잘 되어졌는지 확인해보자.
만약에 설치가 잘 안된다든지 뭔가 이상이 생겼다면 이럴 때는 초반에 snapshot을 해놓은 것이 있을 겁니다. 초반 상태로 되돌려줍시다.
본인도 설치에 약간 문제가 생겨 초반에 해놓은 상태도 되돌려 다시금 실행해보니 잘 되었습니다.
리눅스는 초반에 설치한 후 인터넷이 잘되는지 확인을 한 후 snapshot을 해놓은 것은 필수입니다.
이미 언급한 내용이지만 중요한 파일을 지운다거나 한다면 리눅스 실행에 있어서 문제가 발생하기에 초반에 snapshot은 해놓으셔야 합니다.
만약에 안 해놓고 문제가 발생하면 그런 경우는 다시 설치하는 것을 권해드립니다.