CPU 정보
$ cat /proc/cpuinfo | grep 'name'| uniq- Linux, Unix (유닉스, ubuntu) 사용법 정리 (우분투 리눅스 팁) , 리눅스 명령어
* 버전 확인
cat /etc/issue
lsb_release -a
uname -a
//-------------------------------------
* OS 업데이트
- ubuntu(우분투)
# 패키지 목록 업데이트
sudo apt-get update
# 시스템 패키지 업데이트
sudo apt-get -y upgrade
- CentOS 계열 (RedHat, (RPM 사용 패키지) , Fedora, Amazon Linux, Android, AIX)
yum -y update
//-------------------------------------
* 설치가능한 패키지 검색(우분투)
apt update
apt-cache search keyword
//-------------------------------------
* 검색
find /var -name "*obj*"
//================
* 시스템 재부팅
sudo reboot
* 시스템 끄기
- MySQL 서비스 닫는데 10분 걸리는 문제 해결 방법(해결중)
A Stop job is running for MySQL Community Server 10min
sudo stop mysql
sudo service mysql stop
sudo /etc/inid.d/mysql stop
sudo shutdown -h now
//=================
* 서비스 제어
- start , stop, restart
- 예) apache2 의 경우
방법1) service apache2 start
방법2) /etc/init.d/apache2 start
방법3) sudo systemctl start apache2
//-----------------------------------------------------------------------------
* 서비스 자동 시작 설정
- 가능 설정
sudo systemctl enable 서비스
- 중지 설정
sudo systemctl disable 서비스
//-------------------------------------
* 프로세스 종료
- 프로세스ID로 강제 종료
> sudo kill -9 PID
- 프로세스 이름에 와일드 카드 사용해서 종료
> sudo pkill -f "프로세스이름*"
//-----------------------------------------------------------------------------
* 부팅시 자동 실행 명령어 설정
- root 권한 으로 실행
$ sudo crontab -e
@reboot [auto start command]
//-------------------------------------
How Can I Run a Command after Boot/Startup in Linux?
https://operavps.com/docs/run-command-after-boot-in-linux/
How to run scripts on start up?
https://askubuntu.com/questions/814/how-to-run-scripts-on-start-up
//-----------------------------------------------------------------------------
* 계정 관리
- 계정 확인
id 계정
- 현재 사용자 그룹 정보
id -Gn
- root 계정으로 전환
sudo -s
sudo su : 환경변수까지 root 것을 사용
//-----------------------------------------------------------------------------
* 사용자 추가
adduser : 홈디렉토리를 자동으로 생성 <=== 추천
- 패스워드도 자동으로 물어본다.
useradd : 홈디렉토리를 생성안함 (비추)
- passwd로 패스워드를 별도로 지정해야 함
* 패스워드없이 로그인하게 설정
/etc/passwd 수정
user2:x:1001:1001:,,,:/home/user2:/bin/bash
빨간 x 를 삭제하면 user2 로 패스워드없이 로그인 가능하게 됨
//-----------------------------------------------------------------------------
* sudo 사용가능 하게 하는 방법
- /etc/sudoers 에 추가
sudo nano /etc/sudoers
user1 ALL=NOPASSWD: ALL
또는 명령어로 처리
sudo usermod -a -G sudo USERNAME
- sudo 명령 가능하도록 설정 (패스워드 없이 사용)
nano /etc/sudoers
사용자 ALL=NOPASSWD: ALL
- ': ALL' 띄워쓰기 주의,
- sudoers 파일에 문제가 생기면 sudo명령사용불가,
- root 패스워드도 없거나 모르면 온라인 서버는 버려야 하는 상황
- root 패스워드를 설정해 놓는 것이 유일한 방법
//==========
- 그룹확인
groups 그룹이름
- 해당 그룹이 속해 있는 그룹이 표시
- 구룹 추가 변경
- www-data 그룹에 ubuntu 계정을 추가
sudo usermod -a -G www-data ubuntu
- www-data 그룹에서 ubuntu 계정 제거
sudo gpasswd -d "ubuntu" "www-data"
- 파일 소유자 변경
chown user file
- 파일 그룹 변경
chown .group file (그룹명 앞에 점. 추가)
- 소유자 그룹 동시 변경
chown user:group file
- 파일 권한 변경
- user는 rwx 설정 , group은 write 추가, other 는 모든 권한 없앰
-R = 하위 폴더 까지 모두 변경
chmod u=rwx,g+w,o= ./test -R
- 파일 모드 변경
- 그룹 쓰기 가능
chmod g+w /var/www/html -R
/==================
- 파일 압축 하기
tar -zcvf 생성할압축파일명 파일명
-
- 파일 압축 풀기
tar -zxvf 압축파일명 -C 경로
- root 권한으로 압축하고 풀어야 파일 소유자와 권한을 제대로 유지할 수 있다.
//==================
- 경로($PATH) 확인
echo $PATH
- 경로 추가
PATH=$PATH:/home:/var
//==================
- 링크 파일 만들기
- 심볼릭 링크 : 바로가기
ln -s 원본 바로가기이름
- 하드 링크 : 복사본
ln 원본 복사본
- 파일 복사, 권한 정보까지, 하위 폴더 포함
cp -rp /home /home2
//=============================
- 경로 이동 간단하게 하기
- 쉘스크립트로는 경로 이동이 안된다.
- 굳이 할려면 . cdshell.sh #
- .bashrc 파일에 다음 행 추가
alias quickcd='cd "/usr/경로.../"'
- 수정된 내용이 적용되도록 하는 명령
source ~/.bachrc
- 쉡 스크립트 인자(파라메터) 사용
echo "파라미터 개수 : $#"
echo "첫 번째 파라미터: $1"
echo "모든 파라미터 내용 : $@"
//=============================
- 쉡스크립트 에러
-bash: ./.sh: /bin/bash^M: bad interpreter: No such file or directory
- 원인 : 윈도우(DOS)에서 만든 파일을 리눅스에서 실행할때 에러
- 해결법 : EditPlus -> 문서 -> 파일 형식
-> 파일 형식 변경 -> Unix / Mac 선택 -> 다시 저장
//-----------------------------------------------------------------------------
* VirtualBox 공유폴더 마운트 하는 방법
sudo mount -t vboxsf [VirtualBox 공유이름] [Linux 로컬경로]
//-----------------------------------------------------------------------------
* wsl ubuntu에서 윈도우 드라이브 마운트
$ sudo mkdir /mnt/d
$ sudo mount -t drvfs D: /mnt/d
//-----------------------------------------------------------------------------
- 디스크 파티션 확인
df -h
- 디스크 용량 확인하는 명령이지만 파티션 이름 확인에도 최상 (lsblk 보다 나음)
결과 예 : /dev/nvme0n1p1
//-----------------------------------------------------------------------------
* 한줄에 여러 명령
https://coding-chobo.tistory.com/54
- ;
$ cmd1; cmd2 # 실행 성공 상관없이 모두 실행
- &&
# cmd1 && cmd2 # cmd1이 성공하면 cmd2 실행
[ cmd1 ] && cmd2
- ||
$ cmd1 || cmd2 # cmd1이 실패하면 cmd2 실행
[ ! cmd1 ] || cmd2
- |
$ cmd1 | cmd2 # cmd1의 결과를 cmd2에 전달
$ ls | grep *.sh
//-----------------------------------------------------------------------------
리눅스 하드웨어 정보
//-------------------------------------
* CPU 정보
cat /proc/cpuinfo
- 갯수만 보기
grep -c ^processor /proc/cpuinfo
//-------------------------------------
* 메모리 정보
$ free -m
$ htop
$ sudo ps_mem # 설치 필요 : sudo pip install ps_mem
'IT' 카테고리의 다른 글
AWS 무료 사용법, 가격, 비용 (1) | 2018.09.29 |
---|---|
AWS EC2 서버 생성시 받은 암호 키 파일 분실시 해결 방법 (1) | 2018.09.28 |
Homestead 사용법 (0) | 2018.09.20 |
크롬 이미지 일괄 다운로더 추천 (0) | 2018.08.06 |
갤럭시 S3 루팅 방법 (0) | 2018.08.06 |