복습 포인트

13226 단어
1、   20 ,10 
2、   10 ,5 
3、   20 ,5 
4、   20 ,2 
5、shell   30 ,3 

중점
호스트 계획 및 디스크 파 티 션
리 눅 스에 있 는 하드웨어 장치 별 파일 이름 p66
디스크 파 티 션: 교과서 예제 p67
디스크 파 티 션 테이블 예제 p70
디스크 파 티 션 선택 p75
제6 장 Linux 의 파일 권한 과 디 렉 터 리 설정
파일 이름 은 디 렉 터 리, 소유자 권한, 같은 사용자 그룹 사용자 권한, 다른 사용자 권한 입 니 다.
linux 파일 속성, 예제.파일 속성 과 권한 을 어떻게 바 꿉 니까?142 chmod 644 basic 146
예 제 를 자세히 보면 원제 가 있다.
루트 디 렉 터 리 의 이전 층 과 루트 디 렉 터 리 는 자신 이 같은 디 렉 터 리 입 니 다.
제7 장 Linux 파일 과 디 렉 터 리
디 렉 터 리 와 경로, 디 렉 터 리 의 조작, 파일 디 렉 터 리 관리, 예 제 를 봅 니 다.171
파일 디 렉 터 리 의 권한 과 숨겨 진 권한.문제 가 있 는데, 주로 예제 이다.180,181,182
상황 시 뮬 레이 션 문제:
      :          ,   alex  arod ,                     project    。             /srv/ahome/       ,             。             ?         ,  SGID      。

•  :          ,        SGID    !
•  :          ,           !
•  :    root       chmod, chgrp                 !             !
                    ,  /             ,                 :
[root@www ~]# groupadd project <==      
[root@www ~]# useradd -G project alex <==  alex   ,   project
[root@www ~]# useradd -G project arod <==  arod   ,   project
[root@www ~]# id alex <==  alex      
uid=501(alex) gid=502(alex) groups=502(alex),501(project) <==     !
[root@www ~]# id arod
uid=502(arod) gid=503(arod) groups=503(arod),501(project)
 
                !

1.              :
[root@www ~]# mkdir /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxr-xr-x 2 root root 4096 Sep 29 22:36 /srv/ahome
 

2.           alex  arod             ,              。             ,          project,    770   。
[root@www ~]# chgrp project /srv/ahome
[root@www ~]# chmod 770 /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxrwx--- 2 root project 4096 Sep 29 22:36 /srv/ahome
#           ,  alex/arod    project,        !
 

3.               ,      ?  alex     ,   arod      。
[root@www ~]# su - alex <==       alex    
[alex@www ~]$ cd /srv/ahome <==           
[alex@www ahome]$ touch abcd <==          !
[alex@www ahome]$ exit <==  alex    

[root@www ~]# su - arod
[arod@www ~]$ cd /srv/ahome
[arod@www ahome]$ ll abcd
-rw-rw-r-- 1 alex alex 0 Sep 29 22:46 abcd
#          ,     alex ,arod    !
#    abcd       , arod        ,  r       !
[arod@www ahome]$ exit
 
            ,        rwx   ,    alex    abcd       , arod      ,        !          !         。


4.  SGID       ,       :
[root@www ~]# chmod 2770 /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxrws--- 2 root project 4096 Sep 29 22:46 /srv/ahome

  :  alex        ,          :
[root@www ~]# su - alex
[alex@www ~]$ cd /srv/ahome
[alex@www ahome]$ touch 1234
[alex@www ahome]$ ll 1234
-rw-rw-r-- 1 alex project 0 Sep 29 22:53 1234
#  !         !  alex, arod             project,
#          ,  umask   002,                !
 
         ,         『2770』,         root  ,               project       !

간단 한 문제 풀이:
사용자 의 umask 가 각각 033 과 044 로 만 든 파일 과 디 렉 터 리 의 권한 은 무엇 입 니까?
 umask  033  ,      group  other  w(2)x(1)   ,       『  -rw-r--r-- ,   drwxr--r-- 』  umask 044  ,   r    ,     『  -rw--w--w-,  drwx-wx-wx』


/etc 아래 파일 크기 가 50K 에서 60K 사이 인 파일 을 찾 고 권한 을 완전 하 게 표시 합 니 다 (ls - l):
find /etc -size +50k -a -size -60k -exec ls -l {} \;


/etc 아래 파일 용량 이 50K 이상 이 고 파일 소속 자 는 루트 의 파일 이름 이 아니 며 권한 을 완전 하 게 표시 합 니 다 (ls - l).
find /etc -size +50k -a ! -user root -exec ls -ld {} \;
find /etc -size +50k -a ! -user root -type f -exec ls -l {} \;


/etc 아래 1500 K 이상 의 용량 과 0 이상 의 파일 을 찾 습 니 다.
find /etc -size +1500k -o -size 0
   -a ,  -o    (or)     !


제 8 장
디스크 및 파일 시스템 관리
Linux 의 Ext 2 파일 시스템 200
마 운 트 지점 의 의미
파일 시스템 의 간단 한 조작\# fdisk/dev/hdc
디스크 파 티 션, 포맷, 검사 및 마 운 트
디스크 마 운 트 및 마 운 트 해제
본 장 방과 후 연습 상황 1 과 상황 2 시험 중 하나
•      :          ,       partition ,    partition   ,             。


◦  :                 ;
◦  :                ,    /dev/hdc6, /dev/hdc7   ;
◦  :  fdisk, umount, swapoff    。

         ,   /dev/hdc6  /dev/hdc7       partition ,         partition 。           :


1.   free / swapon -s / mount      , /dev/hdc6, /dev/hdc7       !      ,       umount       。          ,    swapon -s          ,   swapoff     !


2.  /etc/fstab ,          partition;


3.  『 fdisk /dev/hdc 』  ,  ,        ,        5    ​​    ,        6    !     7      6   ,    6  !  ,    7     ,   6  。


•      :              ,            filesystem    /srv/myproject    。         filesystem ,     filesystem              /srv/myproject ,       project        ,           。   filesystem    5GB    。


◦  :         、                   ;
◦  :                     ;
◦  :            !

               !


1.  ,       fdisk /dev/hdc      partition ,         partition            ,           /dev/hdc6   :『fdisk / dev/hdc』,    『 n 』,  『Enter』         ,   『+5000M』  5GB       ,      『p 』      ,       『w』     ;


2.      ,    『 partprobe 』         ;        :『 end_request: I/O error dev fd0, sector 0 』    ,     !      『     』,         ,             。


3.     ,            :『mkfs -t ext3 /dev/hdc6』,   OK  !


4.       ,  :『 mkdir /srv/myproject 』     ;


5.          :『 nano /etc/fstab 』,           ,    :
/dev/hdc6 /srv/myproject ext3 defaults 1 2


6.      :『 mount -a 』,    『 df 』          !


7.       ,  :『 chgrp project /srv/myproject 』  『 chmod 2770 /srv/myproject 』  。


수업 후 간단 한 문제 풀이:
호스트 디스크 의 용량 이 부족 하기 때문에 새 디스크 를 추가 하고 이 디스크 를 모두 단일 분할 슬롯 으로 나 누고 이 분할 슬롯 을/홈 디 렉 터 리 에 마 운 트 하려 면 어떻게 해 야 합 니까?
             、    、   、        。
◦    :  Linux     ,  IDE    ,      (jump) ,                ,      ;
◦    :              ,               ,  /dev/sdb1       ;
◦   :  mkfs -t ext3     ;
◦    :     /home        ,     mount /dev/sdb1 /mnt ,  /home       /mnt/  ,  :『 cp -a /home/* / mnt 』  。        /home    /mnt
◦    :  /etc/fstab , /home    filesystem     /dev/sdb1        ,  mount -a         ,      ,            。


제 가 두 개의 파일 이 있 는데 각각 file 1 과 file 2 입 니 다. 이 두 파일 은 서로 hard link 의 파일 입 니 다. 만약 에 제 가 file 1 을 삭제 한 다음 에 vi 와 유사 한 방식 으로 file 1 이라는 파일 을 다시 만 들 면 file 2 의 내용 이 바 뀌 지 않 습 니까?
         。    file1   , file2         ,             inode  block ,  ,           file1  ,     inode  block       filesystem      meta data ,    inode  block     ,     file1          !  ,   file1      file2  !


제 9 장
파일 의 압축 과 포장 을 연습 하고,
상황: 2, 3
•      :       /srv/myproject         ,            ,       dump            /backups      。     ?


◦  :   dump       level    ;
◦  :         partition ,      /srv/myproject
◦  :/srv/myproject    filesystem ,  /etc/fstab       dump     1

              !         :


1.           ,           !
cp -a /etc /boot /srv/myproject


2.    dump ,  ,      level 0       !
mkdir /backups
dump -0u -j -f /backups/myproject.dump /srv/myproject
     -j    ,          ,        。


3.   /srv/myproject         , /var/log/         !
cp -a /var/log/ /srv/myproject
     /srv/myproject       !        !


4. /srv/myproject  level 1      :
dump -1u -j -f /backups/myproject.dump.1 /srv/myproject
ls -l /backups
           ,       (myproject.dump.1)     !          !


•     :         ,  /srv/myproject      ,     filesystem           ,         ?       :


1.  /srv/myproject   ,    partition      !
umount /dev/hdc6
mkfs -t ext3 /dev/hdc6


2.       partition ,            !
mount -a
       df   ls -l /srv/myproject           ,    !


3.      level 0    /backups/myproject.dump     :
cd /srv/myproject
restore -r -f /backups/myproject.dump
                 !            !


4.    level 1         :
cd /srv/myproject
restore -r -f /backups/myproject.dump.1
                !    level 2, level 3  ,              !


제 10 장
vi 조작 부분 은 조작 을 간단하게 보면 된다.
제 11 장
변수의 표시 와 설정 변수 내용 의 삭제, 대체 와 교체 데이터 흐름 재 설정 명령 실행 에 대한 판단 근거:, &, |파이프 명령
간단 한 문제 풀이:
어떻게 변수 이름 을 name 내용 인 It 's my name 으로 설정 합 니까?
name=It\'s\ my\ name   name="It's my name"
•bash                  ?          ?
(1)login shell:    /etc/profile  ~/.bash_profile
(2)non-logni shell:    ~/.bashrc   。
•CentOS 5.x  man page        ?
/etc/man.config


',', '이 기호 들 이 변수 정의 에서 의 용 도 를 시험 적 으로 설명 합 니까?
          ,  , "            ,'        ,  `             。

연속 명령 중,;, &, | 은 어떤 차이 가 있 습 니까?
       command     ,   command1      , &&                ,       0  command2      , ||   &&   !


foo 1 & & foo 2 | foo 3 > foo 4, 이 명령 문자열 에서 foo 1/foo 2/foo 3/foo 4 는 명령 입 니까? 파일 입 니까? 전체 명령 의 의 미 는?
foo1, foo2  foo3     , foo4       。       :
(1) foo1         ,       ;
(2) foo1          ,   foo2 | foo3 > foo4 ;  :
(2-1)foo2  stdout        foo3   ;
(2-2)foo3    foo2  stdout   stdin ,            foo4     /  


제1 2 장 정규 표현 식 과 파일 포맷 처리
grep 사용
sed 도구: 시험 은 이 절의 예제 입 니 다.
awk 도구 사용
상황 연습 1, 2.
•      :  grep       ,                     。


◦  :          ;
◦  :          ,       $(command)         ;

          (*)         :


1.                        ,    ,   /etc       (*)       :

              ,                ,        : [root@www ~]# grep '\*' /etc/*
 
        ,                 ,         ,          (\)。   /etc/*    *   bash      !          !           ,      /etc            ,          ,          /etc      ,      : [root@ www ~]# grep '\*' $(find /etc -type f)
 


2.          ?       ,         (/)  ?      : [root@www ~]# grep '\*' $(find / -type f)
-bash: /bin/grep: Argument list too long
 
   !               ,              ,          。      ?              xargs    。    , grep       10    ,        :


a.   find      ;
b. xargs         10   grep        ;
c.grep           。

            : [root@www ~]# find / -type f | xargs -n 10 grep '\*'
 


3.        ,         !               ?     grep            ! [root@www ~]# find / -type f | xargs -n 10 grep -l '\*'
 


•      :                      。             myip ,            IP      。         ,    MYIP ,          IP 。

        ,         :


1.  ,        ifconfig, sed  awk       IP ,   :
[root@www ~]# ifconfig eth0 | grep 'inet addr' | \
> sed 's/^.*inet addr://g'| cut -d ' ' -f1
 

2.  ,          alias    myip  !    : [root@www ~]# alias myip="ifconfig eth0 | grep 'inet addr' | \
> sed 's/^.*inet addr://g'| cut -d ' ' -f1 "
 

3.  ,             MYIP  ! [root@www ~]# MYIP=$( myip )
 

4.          ,   alias  MYIP       ,    ~/.bashrc   !

제1 3 장 셸 script
1. 방과 후 숙제 문제 2. 스 크 립 트 에 파 라 메 터 를 전달 하 는 컴퓨터 문제.
1. script 을 만 드 십시오. 이 script 을 실행 할 때 이 script 은 1. 현재 신분 (whoami 로) 2. 현재 있 는 디 렉 터 리 (pwd 로) 를 표시 할 수 있 습 니 다.
#!/bin/bash
echo -e "Your name is ==> `whoami`"
echo -e "The current directory is ==> `pwd`"

2. 스스로 프로그램 을 만들어 보 세 요. 이 프로그램 은 '생일 이 며칠 남 았 습 니까?' 라 고 계산 할 수 있 습 니 다.
#!/bin/bash
read -p "Pleas input your birthday (MMDD, ex> 0709): " bir
now=`date +%m%d`
if [ "$bir" == "$now" ]; then
echo "Happy Birthday to you!!!"
elif [ "$bir" -gt "$now" ]; then
year=`date +%Y`
total_d=$(($((`date --date="$year$bir" +%s`-`date +%s`))/60/60/24))
echo "Your birthday will be $total_d later"
else
year=$((`date +%Y`+1))
total_d=$(($((`date --date="$year$bir" +%s`-`date +%s`))/60/60/24))
echo "Your birthday will be $total_d later"
fi

3. 사용자 에 게 숫자 를 입력 하 게 합 니 다. 프로그램 은 1 + 2 + 3... 사용자 가 입력 한 숫자 까지 누적 할 수 있 습 니 다.
#!/bin/bash
read -p "Please input an integer number: " number
i=0
s=0
while [ "$i" != "$number" ]
do
i=$(($i+1))
s=$(($s+$i))
done
echo "the result of '1+2+3+...$number' is ==> $s"

4. 프로그램 을 작성 합 니 다. 그의 역할 은 다음 과 같 습 니 다. 1.) 먼저/root/test/logical 이라는 이름 이 존재 하 는 지 확인 합 니 다. 2. 존재 하지 않 으 면 파일 을 만 들 고 touch 로 만 들 고 완성 한 후에 떠 납 니 다. 3. 존재 한다 면 이 이름 이 문서 인지 판단 하고 파일 이 라면 삭제 한 후에 디 렉 터 리 를 만 듭 니 다. 파일 이름 은 logical 이 고 나중에 떠 납 니 다. 4.) 존재 한다 면이 디 렉 터 리 이름 이 디 렉 터 리 라면 이 디 렉 터 리 를 삭제 합 니 다!
#!/bin/bash
if [ ! -e logical ]; then
touch logical
echo "Just make a file logical"
exit 1
elif [ -e logical ] && [ -f logical ]; then rm logical
mkdir logical
echo "remove file ==> logical"
echo "and make directory logical"
exit 1
elif [ -e logical ] && [ -d logical ]; then rm -rf logical
echo "remove directory ==> logical"
exit 1
else
echo "Does here have anything?"
fi

5. 알 고 있 습 니 다./etc/passwd 에 서 는 다음 과 같이 구분 합 니 다. 첫 번 째 칸 은 계 정 이름 입 니 다./etc/passwd 의 첫 번 째 칸 을 꺼 낼 수 있 는 프로그램 을 쓰 십시오. 그리고 각 칸 은 한 줄 의 문자열 인 "The 1 account is"root "로 표시 합 니 다. 그 1 은 줄 수 를 표시 합 니 다.
#!/bin/bash
accounts=`cat /etc/passwd | cut -d':' -f1`
for account in $accounts
do
declare -i i=$i+1
echo "The $i account is \"$account\" "
done

좋은 웹페이지 즐겨찾기