profile image

L o a d i n g . . .

리눅스?

리눅스 토발즈가 개발한 리눅스커널에 기반을 둔 오픈소스 유닉스 계열 운영 체제

나는 거의 우분투를 쓸 예정 (센토스 가아끔) 

 

리눅스 권한

 

Owner Group Other Owner & Group은 파일 소유자와 자신이 속한 그룹, Other는 제3자
r w x r w x r w x r(4)읽기, w(2)쓰기, x(1)실행
7 5 5 파일 소유자는 읽고 쓰고 실행도 가능하지만 이외는 읽고 실행만 가능
7 7 7 제 3자에게도 쓰기권한이 주어짐

 

디렉토리? 

'/' 루트 디렉토리 : 리눅스 최상단 디렉토리

'~'홈 디렉토리 : 사용자의 홈디렉토리 (리눅스 처음 접근시 접속되는 위치)

 

리눅스 명령어 형식

명령어 -옵션 [인수]

 

자주쓰는 명령어

pwd(Print Working Directory): 현재 작업중인 디렉토리 표시

ls(List Segments): 파일과 디렉토리의 정보 표시.

ls -옵션 설명
ls -a all 모든 파일보기 (숨김파일포함)
ls -d 디렉토리안의 내용이 아닌 디렉토리 자체 확인
ls -f 지시문자를 추가로 표시함 (디렉토리 명 끝에 슬래시 표시)
ls -l 파일을 리스트로 보여준다 (ls -al 많이사용)
ls - r reverse역순 조회
ls -s 크기순정렬
ls -t 수정 시간순 정렬
ls -i 각 파일의 색인번호 출력
ls -h 바이트 크기 출력

ll : 'ls -lh'

 

cd(Change Directory): 해당 디렉터리로 이동

cd /app/nginx/nginx.conf

 

 


cd와 ll을 사용하다가 발견한 심볼릭 링크(Symbolic link)

- 원본 파일로 링크를 연결해줌. 윈도우 바로가기라고 생각하면 된다 

- 위 캡쳐에서 cd /etc를 하면 현재위치/etc 가 아닌 private/etc로 이동하게됨

 

만드는 방법도 있는데 나중에 필요하면 따로 포스팅함


mkdir(Make Directory): 원하는 위치에 새 디렉터리 생성 

mkdir log #log 디렉토리 생성

 

cp(Copy), mv(Move): 파일을 복사/이동하는 명령어

copy house.html house2.html #house1 을 house2로 복사

mv move.txt new_folder #move.txt파일을 뉴폴더 디렉토리로 이동

mv move.txt inadang/new_folder2 #move.txt파일을 해당위치로 이동

mv move.txt move_text.txt #move.txt파일을 move_text.txt파일로 이름바꾸기

#inadang/new_folder/move.txt파일을 inadang/new_folder2/move2.txt파일로 이름바꾸기
mv inadang/new_folder/move.txt inadang/new_folder2/move2.txt

-b: 이동될 파일이 존재하면 백업파일을 만듦

-i: 이동될 파일이 이름이 이미 존재할 경우, 사용자에게 덮어 쓰기 여부 확인

-b: 이동될 파일이 이름이 이미 존재할 경우, 백업파일 생성

-f:이동 될 파일이 이름이 이미 존재 할 경우, 강제 덮어쓰기

-n:이동 될 파일이 이름이 이미 존재 할 경우, 덮어쓰기 안함

-r: 하위 디렉토리 까지 모두 이동

-v: 이동 진행 상태를 출력

 

 

rmdir(Remove Directory): 디렉토리 삭제 (디렉토리가 비어있지 않을 경우 삭제 불가)

 

cat(concatenate): 파일 내용 출력

cat text.txt

 

리눅스환경에서 자바 .jar를 데몬처럼 실행

java -jar [파일명] & #사용자가 로그아웃하거나 터미널 종료시 프로그램 종료
nohup java -jar text.jar & #터미널을 종료해도 백그라운드에서 계속 실행됨

#실행 후 자바 프로세스 확인
ps -ef | grep text.jar

 

grep: 특정 문자열 검색

grep 찾을문자열 찾을파일
grep http text.txt

 

 

시그널 종료: 시그널 옵션이 다양하지만 -9대신 -16 쓰라고 말씀해주셨다

kill -16

 

chmod: 권한변경(777 ㄴㄴ)

chmod 755 [파일명]

 

chown: 소유권변경

chown staff web.txt #소유자만 변경
chown :inadang web.txt #그룹만 변경
chown staff:staff #사용자, 그룹 모두변경

 

ssh: 원격 sshd 가 설치된 장비에 접속

ssh 계정@서버주소
ssh inadang@192.168.0.0

 

-, --version: 버전확인(- 아니면 --)

 

wget / curl: wget은 특정 url파일 다운로드시, curl은 웹요청시 사용

>> 외부에서 접속이 안될때 curl로 로컬에 보내서 응답을 정상적으로 받는다면 방화벽 등의 문제로 범위를 좁힐 수 있다

 

systemctl: 서비스 관리 명령어

systemctl restart nginx
systemctl status mariadb
systemctl stop nginx
systemctl enable mariadb #부팅 시 자동 시작되도록 등록

 

tail:

tail -f [파일명] #실시간으로 파일 마지막 부분 출력

tail -f [test.log] | grep Join #해당 로그파일에서 원하는 내용만 실시간으로 출력

 

scp(Secure Copy): 호스트에 단방향 파일 전송(복사한 파일을 복사하고 암호화하여 전송)

scp [파일명]   [파일계정]:[저장경로]
scp test.txt inadang@192.169.0.0:/app/inadang

 

sftp: 리눅스 서버에 파일을 업로드하거나 다운로드. get(다운로드), put(업로드) 

 

find: 찾기

find
find / -name [파일명] #루트 디렉토리에서 파일 검색
find . -name [파일명] #현재 디렉토리부터 하위 파일 검색
find . -empty       #비어있거나 크기가 0인 파일 검색

find / -name text.txt
find . -name "*.js"

 

source: 파일 수정 후 수정된 값 바로 적용

source [환경 설정 파일명]

 

 

 

참고 :

- https://joonyon.tistory.com/entry/%EC%89%BD%EA%B2%8C-%EC%84%A4%EB%AA%85%ED%95%9C-nohup-%EA%B3%BC-%EB%B0%B1%EA%B7%B8%EB%9D%BC%EC%9A%B4%EB%93%9C-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%82%AC%EC%9A%A9%EB%B2%95

- https://www.lesstif.com/lpt/lsblk-106856724.html

- https://dora-guide.com/linux-commands/

- https://ko.wikipedia.org/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4

 

 

반응형

'개발 > Linux' 카테고리의 다른 글

[Ubuntu] 우분투 20.04에서 Maria DB 삭제하는 법  (0) 2023.02.10
복사했습니다!