Week2 Introduction to Linux -...

26
Dongkun Shin Embedded Software Laboratory Sungkyunkwan University http://nyx.skku.ac.kr/ Introduction to Linux

Transcript of Week2 Introduction to Linux -...

Page 1: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

%POHLVO 4IJO&NCFEEFE�4PGUXBSF�-BCPSBUPSZ4VOHLZVOLXBO�6OJWFSTJUZIUUQ���OZY�TLLV�BD�LS�

*OUSPEVDUJPO UP -JOVY

Page 2: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• "�6OJY�MJLF�PQFSBUJOH�TZTUFN�PG�B�DPNQVUFS• 8IBU�JT�BO�04

– "�SFTPVSDF�NBOBHFS�PG�B�DPNQVUFS– "�MBZFS�PG�TPGUXBSF�JOUFSQPTFE�CFUXFFO�BQQMJDBUJPO�QSPHSBNT�BOE�UIF�IBSEXBSF

• 8IBU�JT�6OJY – "�UJNF�TIBSJOH �NVMUJ�UBTL �NVMUJ�VTFS�04– 1FSIBQT�UIF�NPTU�JNQPSUBOU�04�JO�DPNQVUFS�IJTUPSZ

8IBU�JT�-JOVY

Page 3: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• 0QFO�TPVSDF�EFWFMPQNFOU�CFHBO�JO������• 'JSTU�SFMFBTFE�CZ�-JOVT�5PSWBMET• -JOVY�LFSOFM

– 5IF�DPSF�PG�-JOVY�TZTUFN– 5IPVTBOET�PG�DPOUSJCVUPST– 4VQFSWJTFE�CZ�-JOVT�BOE�PUIFS�NBJOUBJOFST

• %JTUSJCVUJPO– "�DPMMFDUJPO�PG�TPGUXBSF�CBTFE�BSPVOE�-JOVY�LFSOFM– 3FE�)BU �'FEPSB �%FCJBO �6CVOUV �"OESPJE ����

-JOVY

-JOVT�5PSWBMET�����_�

Page 4: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���-BZFSFE�7JFX�PG�B�$PNQVUFS�4ZTUFN

0QFSBUJOH�TZTUFN�,FSOFM

%JTL$16 .&. /*$)BSEXBSF

,FSOFM

"QQMJDBUJPO1SPHSBNT 5FYU�FEJUPS 8FC�CSPXTFS (BNF

6TFS*OUFSGBDFT

Page 5: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• 5IF�TQBDF�XIFSF�XF�JOUFSBDU�XJUI�NBDIJOFT• $PNNBOE�MJOF�JOUFSGBDF�$-*

– $PNNBOE�JOUFSQSFUFS– %JGGJDVMU�UP�MFBSO– $BMMFE�BT�ˑTIFMM˒

• (SBQIJDBM�VTFS�JOUFSGBDF�(6*– ,%& �(OPNF �6OJUZ �9GDF �˘

• 5PVDI�VTFS�JOUFSGBDF– 4NBSUQIPOFT �UBCMFUT

6TFS�*OUFSGBDFT

Page 6: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• "�TIFMM�BMMPXT�UISFF�UZQFT�PG�DPNNBOET– "O�FYFDVUBCMF�GJMF�UIBU�DPOUBJOT�PCKFDU�DPEF�QSPEVDFE�CZ�B�DPNQJMBUJPO�PG�TPVSDF�DPEF– "O�JOUFSOBM�TIFMM�DPNNBOE�CVJMU�JO�DPNNBOE– "O�FYFDVUBCMF�GJMF�UIBU�DPOUBJOT�B�TFRVFODF�PG�TIFMM�DPNNBOE�MJOFT�B�TIFMM�TDSJQU

• 5IFSF�BSF�UXP�GBNJMJFT�PG�TIFMMT– 0OF�CBTFE�PO�ˑ#PVSOF�TIFMM˒�TI

• 8F�XJMM�VTF�ˑ#PVSOF�BHBJO�TIFMM˒�CBTI�GPS�UIF�DPVSTF– 5IF�PUIFS�CBTFE�PO�ˑ$�TIFMM˒�DTI

4IFMM��

Page 7: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• &YFDVUJOH�QSPHSBNT�PO�B�TIFMM– FY $ command [options] [arguments]– [$ ls] BOE�[$ ls –al] TIPX�EJGGFSFOU�SFTVMUT– "MM�DPNNBOET �PQUJPOT �BSHVNFOUT�BSF�DBTF�TFOTJUJWF

• 4IFMMT�FYFDVUF�DPNNBOET�CZ�NFBOT�PG�QSPDFTTFT– "�QSPDFTT�JT�BO�JOTUBODF�PG�B�QSPHSBN�JO�FYFDVUJPO

4IFMM��

Page 8: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• "�GJMF– "�DPMMFDUJPO�PG�SFMBUFE�JOGPSNBUJPO�EFGJOFE�CZ�JUT�DSFBUPS– 6OTUSVDUVSFE�TFRVFODF�PG�CZUFT

• "�GJMF�TZTUFN– $POTJTU�PG�UXP�EJTUJODU�QBSUT�

• "�DPMMFDUJPO�PG�GJMFT• "�EJSFDUPSZ�TUSVDUVSF

– *U�QSPWJEFT�UIF�NFDIBOJTN�GPS�PO�MJOF�TUPSBHF�BOE�BDDFTT�UP�GJMF�DPOUFOUT

'JMF�4ZTUFN�0WFSWJFX��

Page 9: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

���

• 'FBUVSFT�PG�6OJY�GJMF�TZTUFN– "�IJFSBSDIJDBM�TUSVDUVSF– *U�BMMPXT�EZOBNJD�HSPXUI�PG�GJMFT– 5IF�BCJMJUZ�UP�DSFBUF�BOE�EFMFUF�GJMFT– 5IF�QSPUFDUJPO�PG�UIF�GJMF�EBUB– 6OJY�USFBUT�UIF�QFSJQIFSBM�EFWJDFT�BT�GJMFT

• ˑ&WFSZUIJOH�JT�GJMF˒– %PDVNFOUT �EJSFDUPSJFT �IBSE�ESJWFT �OFUXPSL�TPDLFUT �LFZCPBSET �QSJOUFST�BSF�TUSFBN�PG�CZUFT�FYQPTFE�UISPVHI�UIF�GJMF�TZTUFN�OBNFTQBDF

'JMF�4ZTUFN�0WFSWJFX��

Page 10: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• )JFSBSDIJDBM �USFF�MJLF�TUSVDUVSF– 3PPU– /PO�MFBG�OPEFT

• %JSFDUPSJFT– -FBG�OPEFT

• %JSFDUPSJFT• 3FHVMBS�GJMFT�PS�TQFDJBM�EFWJDF�GJMFT

'JMF�4ZTUFN�0WFSWJFX��

Page 11: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����'JMF�4ZTUFN�0WFSWJFX��

IUUQ���XXX�MJOVYQMBOFU�DPN�MJOVYQMBOFU�UVUPSJBMT�������

Page 12: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����'JMF�4ZTUFN�0WFSWJFX��

• 3PPU�EJSFDUPSZ�<"/">– 5IF�UPQ�NPTU�EJSFDUPSZ�JO�B�IJFSBSDIZ

• )PNF�EJSFDUPSZ�<"~">– "�TQFDJBM�EJSFDUPSZ�GPS�B�VTFS– *U�DPOUBJO�UIF�VTFSˏT�GJMFT��JODMVEJOH�UFYUT �NVTJD �WJEFPT �PS�DPOGJHVSBUJPO�GJMFT

• $VSSFOU�EJSFDUPSZ���8PSLJOH�EJSFDUPSZ�<".">– &BDI�QSPDFTT�IBT�BTTPDJBUFE�XJUI�JU�B�EJSFDUPSZ– 5IF�EJSFDUPSZ�XIFSF�B�VTFS�DVSSFOUMZ�MPDBUFE

• 1BSFOU�EJSFDUPSZ�<"..">– *U�SFGFST�UP�UIF�EJSFDUPSZ�BCPWF�ZPVS�DVSSFOU�XPSLJOH�EJSFDUPSZ

Page 13: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• �CJO– $POUBJOT�DFSUBJO�GVOEBNFOUBM�VUJMJUJFT

• �EFW– 4QFDJBM�EFWJDF�GJMFT

• �FUD– )PTU�TQFDJGJD�TZTUFN�XJEF�DPOGJHVSBUJPO�GJMFT

• �UNQ– 5FNQPSBSZ�GJMFT �SFNPWFE�BGUFS�TZTUFN�SFCPPU

• �WBS– 4ZTUFN�MPH

'JMF�4ZTUFN�0WFSWJFX��

Page 14: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• 5IF�HFOFSBM�GPSN�PG�UIF�OBNF�PG�B�GJMF�PS�B�EJSFDUPSZ• %FMJNJUJOH�DIBSBDUFST�<"/">

– 3FQSFTFOU�FBDI�EJSFDUPSZ�JO�QBUI�FYQSFTTFE�JO�TUSJOH• "CTPMVUF�QBUI�GVMM�QBUI

– "�QBUI�QPJOUT�B�MPDBUJPO�SFHBSEMFTT�PG�QSFTFOU XPSLJOH�EJSFDUPSZ$ cat /home/swe2007/textfile$ cat ~/textfile

• 3FMBUJWF�QBUI– "�QBUI�SFMBUJWF�UP�UIF�XPSLJOH�EJSFDUPSZ�PG�UIF�VTFS

$ cat textfile ß if cwd is “/home/swe2007”

1BUI

Page 15: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• &WFSZ�GJMFT�IBWF�B�TFU�PG�QFSNJTTJPOT• 0XOFSTIJQ

– 6TFS�PXOFS• 5IF�QFSTPO�XIP�PXOT�DSFBUFE�UIF�GJMF�

– (SPVQ• 6OJY�BMMPXT�GPS�UIF�DSFBUJPO�PG�HSPVQ

– 0UIFST• &WFSZPOF�FMTF�JO�UIF�XPSME�UIBU�IBT�BDDFTT�UP�UIBU�DPNQVUFS

• 1FSNJTTJPO�GPS�"DDFTT– SFBE�� ��Y���– XSJUF�� ��Y���– FYFDVUF�� ��Y���

'JMF�1FSNJTTJPO

Page 16: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• MT– -JTU�GJMFT$ ls$ ls –al /etc

• QXE– 1SJOU�XPSLJOH�EJSFDUPSZ

• DE– $IBOHF�XPSLJOH�EJSFDUPSZ$ cd ..$ cd /proc$ cd ~

#BTJD�$PNNBOET��

Page 17: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• FDIP– %JTQMBZ�B�MJOF�PG�UFYU$ echo "Hello?"

• QSJOUG– 1SJOU�B�GPSNBUUFE�MJOF�PG�UFYU$ printf "%s\n" Hello?

• DBU– %JTQMBZJOH�GJMFT$ cat /etc/issue

• NPSF���MFTT– %JTQMBZ�UIF�GJMF�CZ�QBHF$ ls –l /bin | more

• IFBE���UBJM– %JTQMBZ�UIF�GJSTU���MBTU����MJOFT�PG�UIF�GJMF

#BTJD�$PNNBOET��

Page 18: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• NLEJS���SNEJS– .BLF � SFNPWF B EJSFDUPSZ$ mkdir swex1

• NW– .PWF�PS�SFOBNF�GJMF$ mv swex1/ swex2/

• DQ– $PQZ�GJMFT

• SN– 3FNPWF�GJMFT

#BTJD�$PNNBOET��

Page 19: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• NBO– %JTQMBZJOH�B�NBOVBM�PG�B�QSPHSBN�PS�B�GVODUJPO$ man ls

• HSFQ– 4FBSDIJOH�GJMFT�GPS�B�TQFDJGJFE�FYQSFTTJPO– FY�$ grep [expression] [file_name]$ grep root /etc/passwd

#BTJD�$PNNBOET��

Page 20: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• DINPE– $IBOHF�UIF�QFSNJTTJPO�PO�B�GJMF�PS�EJSFDUPSZ

$ chmod u=rw file1$ chmod u+x,g+x,o-r file2

$ ls –l$ chmod 750 swex2/$ ls –l

#BTJD�$PNNBOET��u user + to add a permission r(4) readg group - to remove a permission w(2) writeo other = to assign a permission explicitly x(1) execute (for files),

access (for directories)

u g o7 5 0

111 101 000rwx r-x ---

Page 21: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• WJ<N>– "�UFYU�FEJUPS�GPS�QSPHSBNNFST– $SFBUF�JG�OPU�FYJTU�PS�PQFO�B�GJMF�ˎGJMF@OBNFˏ– FY�$ vi [file_name]$ vi hello.c

• HDD– (/6�DPNQJMFS�DPMMFDUJPO– FY�$ gcc –o [output_file_name] [file_name]$ gcc –o hello hello.c$ ./hello

%FWFMPQNFOU�UPPMT

Page 22: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• .PEFT7JN

$PNNBOE�NPEF*OTFSU�NPEF &Y�NPEF&EJU�UIF�DVSSFOU�GJMF

i

ESC

: /

ESC

&Y�NPEF:w TBWF�UIF�DVSSFOU�GJMF:q RVJU�7JN:q! RVJU�7JN�XJUIPVU�TBWJOH:wq TBWF�UIF�GJMF�BOE�RVJU/world GJOE�UIF�TUSJOH�ˎXPSMEˏ:%s/world/swe2007 DIBOHF�UIF�TUSJOH�ˎXPSMEˏ�UP�ˎTXF����ˏ

4UBSUa

Page 23: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• 8IBU�JT�WJNSD – 0QUJPOBM�SVOUJNF�DPOGJHVSBUJPO�TFUUJOHT�UP�JOJUJBMJ[F�7JN�XIFO�JU�TUBSUT– *U�JT�WFSZ�VTFGVM��*G�ZPV�VTF�7JN

• -PDBUJPO�PG�WJNSD– _��WJNSD

• &YBNQMF– IUUQT���HJUIVC�DPN�TPNOPEF�WJNSD@TBNQMF

WJNSD

Page 24: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����IFMMP�D

#include <stdio.h>

int main(){

printf("hello, world\n");return 0;

}

Page 25: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����

• -BC�FYFSDJTF����– .BLF�ˑTXFY�˒�EJSFDUPSZ�PO�ZPVS�IPNF�EJSFDUPSZ– $SFBUF�IFMMP�D�PO�UIF�EJSFDUPSZ– $PNQJMF�JU– 3VO�UIF�QSPHSBN– 3FNPWF�ˑTXFY�˒�EJSFDUPSZ

&YFSDJTF

Page 26: Week2 Introduction to Linux - SKKUnyx.skku.ac.kr/wp-content/uploads/2018/09/Week2_Introduction_to_L… · –"o fyfdvubcmf gjmf uibu dpoubjot pckfdu dpef qspevdfe cz b dpnqjmbujpo

&NCFEEFE�4PGUXBSF�-BC��!�4,,6

����2���"