최근에 리눅스를 다루고 있는데 꽤 괜찮게 느껴지고 있어요. 리눅스가 윈도우와 비교했을 때 더 문제인 점은 많은 것들이 명령어로 제어해야 한다는 점입니다. 물론 이것이 많은 사람들이 리눅스를 좋아하는 이유이기도 합니다. 리눅스는 비교적 짧지만 강력하니까요. 참고용으로 제가 배운 명령어들을 나열하겠습니다:
시스템 정보 아치 디스플레이 머신의 프로세서 아키텍처(1) uname-m은 기계의 프로세서 아키텍처를 보여줍니다 (2) uname -r은 사용 중인 커널 버전을 보여줍니다 dmidecode -q 디스플레이 하드웨어 시스템 부품 - (SMBIOS / DMI) HDPARM -I /dev/hda는 디스크의 아키텍처적 특성을 나열합니다 hdparm -tT /dev/sda가 디스크에서 테스트 읽기 작업을 수행합니다 cat /proc/cpuinfo는 CPU 정보를 표시합니다 cat /proc/interrupts 로 인터럽트를 표시하세요 cat /proc/meminfo로 메모리 사용량을 확인하기 위해 cat /proc/swaps는 어떤 스왑이 사용되는지 보여줍니다 cat /proc/version은 커널 버전을 보여줍니다 cat /proc/net/dev는 네트워크 어댑터와 통계를 표시합니다 cat /proc/mounts는 로드된 파일 시스템을 보여줍니다 LSPCI -TV 목록 PCI 장치 LSUSB -TV에서 USB 장치 표시 날짜는 시스템 날짜를 표시합니다 캘리포니아 2007은 2007년 달력 표를 보여줍니다 날짜 041217002007.00 날짜와 시간을 설정하세요 - 월, 일, 시간, 연도. 초당 BIOS에서 시간 변경을 줄이기 위해 클럭 -w
종료(시스템 종료, 재시작, 로그아웃) 종료 -H 지금 종료 시스템(1) init 0 시스템 종료 (2) 텔리니트 0 종료 시스템(3) 종료 -h 시간:분 그리고 예정된 시간에 시스템을 종료하세요 종료 -C 예정된 시간에 시스템 종료 취소 종료 -R 지금 재시작(1) 리부트 (2) 로그아웃
파일 및 디렉토리 CD /home을 '/home' 디렉터리로 전환하는 방식 CD .. 이전 디렉터리로 돌아가기 CD .. /.. 이전 두 단계 디렉터리로 돌아가기 CD를 개인의 홈 디렉토리에 삽입 CD ~user1을 사용하여 개인의 홈 디렉터리에 입력할 수 있습니다 cd - 마지막으로 위치했던 디렉터리로 돌아갑니다 PWD는 작업 경로를 보여줍니다 LS는 디렉터리 내 파일을 보기 위해 ls -F를 사용하여 디렉터리 내 파일을 볼 수 있습니다 ls -l은 파일과 디렉터리의 세부 정보를 표시합니다 LS -A는 숨겨진 파일을 보여줍니다 ls *[0-9]*는 다음 번호를 포함하는 파일 이름과 디렉터리 이름을 표시합니다 트리는 루트 디렉터리(1)에서 시작하는 파일과 디렉터리의 트리 구조를 보여줍니다. lstree는 루트 디렉터리(2)부터 시작하는 파일과 디렉터리의 트리 구조를 표시합니다 mkdir dir1 'dir1''이라는 디렉터리를 생성하세요 MKDIR DR1 DIR2는 동시에 두 개의 디렉터리를 생성합니다 mkdir -p /tmp/dir1/dir2 디렉터리 트리를 생성하기 위해 RM -f File1은 'File1'이라는 파일을 삭제합니다. RMDIR DR1은 'dir1''이라는 디렉터리를 삭제합니다. rm -rf dir1은 'dir1'이라는 디렉터리를 삭제하고 그 내용도 동시에 삭제합니다 rm -rf dir1 dir2는 두 디렉터리와 그 내용을 동시에 삭제합니다 MV DIR1 new_dir 디렉터리 이름/이동 CP file1 file2 파일 복사 CP 감독/* . 한 디렉터리에 있는 모든 파일을 현재 작업 디렉터리로 복사하세요 CP -a /TMP/dir1. 디렉터리를 현재 작업 디렉터리로 복사하세요 CP -A DIR1 dir2 디렉터리 복제 ln -s file1 lnk1은 파일이나 디렉터리에 대한 소프트링크를 생성합니다 INN File1 LNK1은 파일이나 디렉터리에 물리적인 링크를 생성합니다 touch: -t 0712250000 file1 파일이나 디렉터리의 타임스탬프를 수정하기 - (YYMMDDhhmm) file file1은 파일의 MIME 타입을 텍스트로 출력합니다 iconv -L은 알려진 인코딩을 나열합니다 iconv -f fromEncoding -t to Encoding inputFile > outputFile은 주어진 입력 파일을 fromEncoding으로 인코딩했다고 가정하여 새로운 파일을 생성합니다. 찾기 . -maxdepth 1 -name *.jpg -print -exec 변환 "{}" -크기 조정 80x60 "thumbs/{}" \; 현재 디렉터리의 파일 크기 배치 조정을 하고 썸네일 디렉터리로 보내세요 (Imagemagick에서 변환 필요)
파일 검색 Find /-name file1은 '/'에서 루트 파일 시스템으로 이동하여 파일과 디렉터리를 검색합니다 찾기 / -user user1 사용자 'user1'에 속한 파일과 디렉터리를 검색합니다. /home/user1 -name \*.bin '/home/user1' 디렉터리에서 끝이 '.bin'인 파일을 검색하세요. /usr/bin -type f -atime +100 찾기 최근 100일 동안 사용하지 않은 실행 파일 검색 /usr/bin -type f -mtime -10 찾기 10일 이내에 생성되거나 수정된 파일을 검색하세요 find / -name \*.rpm -exec chmod 755 '{}' \; '.rpm'로 끝나는 파일을 검색하고 그 권한을 정의하세요 Find / -xdev -name \*.rpm 는 '.rpm'로 끝나는 파일을 검색하며, 광학 드라이브나 바로가기 같은 이동식 장치를 무시합니다 '.ps'로 끝나는 파일을 찾기 위해 \*.ps 위치를 찾아보세요. 먼저 'updatedb' 명령을 실행하세요 여기서 halt는 바이너리, 소스 코드 또는 인간의 위치를 나타냅니다 이 홀트는 이진 또는 실행 파일로 가는 전체 경로를 보여줍니다
파일 시스템 마운트 /dev/hda2 /mnt/hda2 마운트 hda2라는 디스크를 마운트하세요 - '/mnt/hda2' 디렉터리가 이미 존재하는지 확인하세요 umount /dev/hda2 hda2 - 먼저 마운트 지점 '/mnt/hda2'에서 종료하세요 fuser -km /mnt/hda2 기기가 사용 중일 때 강제 삭제 umount -n /mnt/hda2는 /etc/mtab 파일에 쓰지 않고 삭제 작업을 실행하며, 파일이 읽기 전용이거나 디스크에 쓰기가 많을 때 유용합니다 플로피 디스크를 마운트하기 위해 /dev/fd0 /mnt/floppy를 마운트하세요 마운트 /개발자/CDROM /MNT/CD롬은 CDrom 또는 DVD Rom을 장착합니다 /dev/hdc /mnt/cdrecorder를 마운트하여 CDRW나 DVDdROM을 마운트하세요 /dev/hdb /mnt/cdrecorder를 마운트하면 CDR 또는 DVD DRM을 장착할 수 있습니다 파일 또는 ISO 이미지 파일을 마운트하기 위해 /mnt/cdrom file.iso 마운트 -o 루프 mount -t vfat /dev/hda5 /mnt/hda5 Windows FAT32 파일 시스템을 마운트합니다 /dev/sda1 /mnt/usbdisk 마운트 USB 바로가기 또는 플래시 장치 마운트 -t smbfs -o username=user,password=pass //WinClient/share /mnt/share Windows 네트워크 공유 마운트
디스크 공간 DF -H는 마운트된 파티션 목록을 보여줍니다 ls -lSr |more는 파일과 디렉터리를 크기별로 정렬합니다 du -sh dir1 추정 디렉터리 'dir1' 디스크 공간 사용 완료 두 -스크 * | sort -rn은 파일 크기와 디렉터리를 용량 순서대로 표시합니다 rpm -q -a --qf '%10{SIZE}t%{NAME}n' | 정렬 -k1,1n 설치된 RPM 패키지가 사용하는 공간을 크기 순서대로 표시합니다 (페도라, 레드햇 클래스 시스템) dpkg-query -W -f='${Installed-Size; 10}t${Package}n' | sort -k1,1n 크기에 따라 설치된 deb 패키지가 사용하는 공간을 보여줍니다(Ubuntu, Debian 클래스 시스템)
사용자 및 그룹 GroupAdd group_name 새로운 사용자 그룹 생성 Groupdel group_name 사용자 그룹 삭제 GroupMod -n new_group_name old_group_name 사용자 그룹 이름 변경 useradd -c "이름 성 " -g admin -d /home/user1 -s /bin/bash user1 "admin" 사용자 그룹에 속하는 사용자 생성 사용자 추가: 사용자 1: 새 사용자 생성 userdel -r user1 사용자가 삭제됩니다 ('-r'은 홈 디렉터리를 제외함) usermod -c "사용자 FTP" -g 시스템 -d /ftp/user1 -s /bin/nologin user1 사용자 속성을 수정하기 passwd는 비밀번호를 수정합니다 passwd user1은 사용자의 비밀번호를 수정합니다(루트 코드만 실행할 수 있음) chage -E 2005-12-31 user1 사용자 비밀번호 만료 시간 설정 PWCK는 '/etc/passwd'와 해당 사용자의 파일 형식 및 문법 수정을 검사합니다 grpck는 '/etc/passwd'와 존재하는 그룹의 파일 형식 및 문법 수정을 검사합니다 Newgrp group_name 새 그룹에 로그인하여 새로 생성된 파일의 기본 그룹을 변경합니다
파일 권한 설정 - 권한 설정은 "+", 취소는 "-"를 사용하세요 ls -lh to permissions show LS /TMP | pr -T5 -W$COLUMNS는 터미널을 5개의 열로 나눕니다 chmod ugo+rwx directory1은 모든 사람(u), 그룹 (g), 기타 (o)의 디렉터리 읽기(r), 쓰기(w), 실행(x) 권한을 설정합니다 CHMOD GO-RWX 디렉터리1은 디렉터리 내 그룹(G)과 다른 사람들(O)의 읽기 및 쓰기 권한을 제거합니다 chown user1 file1 파일의 소유자 속성을 변경합니다 chown -R user1 directory1은 디렉터리 내 모든 파일의 속성을 변경하고, 동시에 디렉터리 내 모든 파일의 속성을 변경합니다 CHGRP Group1 File1 파일 그룹을 변경함 chown user1:group1 file1 파일의 소유자와 그룹 속성을 변경합니다 Find / -perm -u+s는 SUID 제어를 사용하는 시스템 내 모든 파일을 나열합니다 chmod u+s /bin/file1은 바이너리 파일의 SUID 비트를 설정합니다 - 파일을 실행하는 사용자는 소유자와 동일한 권한을 부여받습니다 chmod u-s /bin/file1은 바이너리의 SUID 비트를 비활성화합니다 chmod g+s /home/public은 디렉터리의 SGID 비트를 설정합니다 - SUID와 유사하지만 디렉터리별로 다릅니다 chmod g-s /home/public은 디렉터리의 SGID 비트를 비활성화합니다 chmod o+t /home/public은 파일의 STIKY 비트를 설정합니다 - 파일을 삭제할 수 있는 사람은 정당한 소유자뿐입니다 chmod o-t /home/public은 디렉터리의 STIKY 부분을 비활성화합니다
파일의 특수 속성 - 취소를 위해 "+"와 "-" 권한을 설정하세요 Chattr +A file1은 파일을 덧붙여 읽고 쓸 수 있는 방식으로만 허용합니다 Chattr +C file1은 이 파일을 커널에 의해 자동으로 압축/해제할 수 있게 해줍니다 Chattr +d file1 덤프 프로그램은 파일 시스템 백업을 수행할 때 이 파일을 무시합니다 Chattr +i file1은 변경 불가능한 파일로 설정되어 있으며, 삭제, 수정, 이름 변경, 링크가 불가능합니다 Chattr +S file1은 파일을 안전하게 삭제할 수 있게 해줍니다 chattr +S file1 애플리케이션이 이 파일에 쓰기 작업을 수행하면, 시스템은 즉시 변경 결과를 디스크에 기록합니다 Chattr +u file1 파일이 삭제되면 나중에 삭제된 파일을 복구할 수 있습니다 LSATTR는 특별한 특성을 나타냅니다
패키지 및 압축 파일 bunzip2 file1.bz2는 File1.bz2라는 파일을 압축 해제합니다. bzip2 file1은 'file1'이라는 파일을 압축합니다. 건지file1.gz 'file1.gz'이라는 파일을 압축 해제합니다 gzip File1은 'File1'이라는 파일을 압축합니다 GZIP -9 파일1 최대 압축 rar a file1.rar test_file 'file1.rar'라는 패키지를 생성합니다. RAR a file1.rar file1 file2 dir1은 'file1', 'file2', 디렉터리 'dir1'을 동시에 압축합니다 RAR X file1.rar 언푸스트 RAR 패키지 Unrar X file1.rar Unzip RAR 패키지 TAR -cvf archive.tar file1을 사용하여 압축되지 않은 타르볼 생성 tar -cvf archive.tar file1 file2 dir1은 file1, file2, dir1을 포함하는 아카이브 파일을 생성합니다 tar -tf archive.tar 패키지의 내용을 표시합니다 tar -xvf archive.tar 패키지를 릴리스합니다 tar -xvf archive.tar -C /tmp는 압축된 패키지를 /tmp 디렉터리에 해제합니다 tar -cvfj archive.tar.bz2 dir1이 bzip2 포맷 압축 패키지를 생성합니다 tar -jxvf archive.tar.bz2 to unzip a bzip2 Format Compressed Package tar -cvfz archive.tar.gz dir1 to create a gzip package tar -zxvf archive.tar.gz Unzip a gzip 패키지 zip file1.zip file1을 생성해 zip 패키지를 생성하세요 zip -r file1.zip file1 file2 dir1은 여러 파일과 디렉터리를 동시에 압축하여 zip 패키지로 만듭니다 압축 해제 file1.zip 압축 압축 패키지 압축 해제
RPM 패키지 - (Fedora, Redhat 등) rpm -ivh package.rpm rpm 패키지 설치 rpm -ivh --nodeeps package.rpm은 rpm 패키지를 설치하고 의존성 경고를 무시합니다. rpm -U package.rpm 구성 파일을 변경하지 않고 rpm 패키지를 업데이트합니다 rpm -F package.rpm 확실히 설치된 rpm 패키지를 업데이트하세요 rpm -e package_name.rpm은 RPM 패키지를 삭제합니다 rpm -QA는 시스템에 설치된 모든 RPM 패키지를 표시합니다 rpm -qa | grep httpd는 이름에 "httpd"가 포함된 모든 RPM 패키지를 보여줍니다 설치된 패키지에 대한 특별 정보를 얻기 위해 rpm -qi package_name rpm -qg "시스템 환경/데몬"은 컴포넌트의 rpm 패키지를 표시합니다 RPM -QL package_name 이미 설치된 RPM 패키지에서 제공하는 파일 목록을 표시합니다 RPM -QC package_name 이미 설치된 RPM 패키지에서 제공하는 구성 파일 목록을 표시합니다 rpm -q package_name --WhatRequireds는 RPM 패키지에 대한 의존성 목록을 보여줍니다 rpm -Q package_name --WhatProvides는 RPM 패킷이 차지하는 용량을 보여줍니다 rpm -q package_name --scripts는 설치/삭제 중에 실행된 스크립트를 보여줍니다 rpm -q package_name --changelog는 RPM 패키지의 수정 이력을 보여줍니다 rpm -qf /etc/httpd/conf/httpd.conf 파일을 제공하는 RPM 패키지를 확인하기 위해 RPM -qp package.rpm -l은 아직 설치되지 않은 RPM 패키지에서 제공하는 파일 목록을 표시합니다 rpm --공개키 디지털 인증서를 가져오기 위해 /media/cdrom/RPM-GPG-KEY RPM --Checksig Package.RPM은 RPM 패키지의 무결성을 확인합니다 RPM -QA GPG-PUBKEY는 설치된 모든 RPM 패키지의 무결성을 확인합니다 rpm -V package_name 파일 크기, 라이선스, 유형, 소유자, 그룹, MD5 확인, 마지막 수정 시간 rpm - VA는 시스템에 설치된 모든 RPM 패키지를 점검합니다 - 주의해서 사용할 수 있습니다 rpm -VP package.rpm은 rpm 패키지가 아직 설치되지 않았음을 확인합니다 rpm2cpio package.rpm | CPIO --extract --make-directories *bin*은 RPM 패키지에서 실행 파일을 실행합니다 rpm -ivh /usr/src/redhat/RPMS/'arch'/package.rpm rpm 소스 코드에서 빌드된 패키지를 설치하세요 rpmbuild --rebuild package_name.src.rpm 한 rpm 소스 코드에서 rpm 패키지를 구축합니다
YUM 패키지 업그레이드 - (Fedora, RedHat 등) 예쁘게 설치하세요 package_name rpm 패키지를 다운로드하고 설치하세요 Yum localInstall package_name.rpm은 모든 의존성을 해결하기 위해 자체 저장소를 사용하는 RPM 패키지를 설치해 줍니다 YUM 업데이트 package_name.RPM은 현재 시스템에 설치된 모든 RPM 패키지를 업데이트합니다 RPM 패키지 업데이트 package_name 좋은 업데이트 좋아요, RPM 패킷을 삭제package_name yum 리스트는 현재 시스템에 설치된 모든 패키지를 나열합니다 YUM 검색package_name RPM 저장소에서 패키지를 검색합니다 Yum 클린 패키지는 RPM 캐시를 정리하고 다운로드한 패키지를 삭제합니다 Yum Clean 헤더는 모든 헤더 파일을 삭제합니다 YUM 모든 삭제 정리, 모든 캐시된 패키지와 헤더 파일
DEB 패키지 (Debian, Ubuntu 등) DPKG -I package.deb DEB 패키지를 설치/업데이트합니다 DPKG -r package_name 시스템에서 DEB 패키지를 제거 DPKG -L은 시스템에 설치된 모든 DEB 패키지를 보여줍니다 DPKG -L | grep httpd는 이름에 "httpd"가 포함된 모든 DEB 패키지를 표시합니다 DPKG-S는 시스템에 이미 설치된 특수 패키지에 대한 정보를 얻을 package_name dpkg -L package_name 시스템에 설치된 deb 패키지가 제공하는 파일 목록을 표시합니다 DPKG --contents package.deb 아직 설치되지 않은 패키지에서 제공하는 파일 목록을 표시합니다 dpkg -s /bin/ping을 사용하여 해당 파일이 제공하는 deb 패키지를 확인합니다
APT 소프트웨어 도구들 (Debian, Ubuntu 등) apt-get install package_name DEB 패키지 설치/업데이트 apt-cdrom 설치 package_name 디스크에서 DEB 패키지를 설치/업데이트 업그레이드 목록에 있는 apt-get 업데이트 패키지 apt-get upgrade 설치된 모든 소프트웨어 업그레이드 apt-get 제거 package_name 시스템에서 deb 패키지를 삭제하기 apt-get 검사는 의존 저장소가 정확함을 확인합니다 apt-get clean은 다운로드된 패키지에서 캐시를 정리합니다 apt-cache search searched-package는 검색하려는 문자열을 포함하는 패키지 이름을 반환합니다
파일 내용 보기 Cat File1은 파일의 첫 바이트부터 내용을 앞쪽으로 봅니다 TAC File1은 파일의 내용을 마지막 줄부터 역으로 봅니다 긴 파일의 내용을 보려면 More File1 Less File1은 'more' 명령과 유사하지만, 파일 내에서 순방향 작업과 동일한 역전 작업을 허용합니다 head -2 file1은 파일의 첫 두 줄을 봅니다 tail -2 file1은 파일의 마지막 두 줄을 보기 위해 tail -f /var/log/messages 파일을 실시간으로 확인할 수 있습니다
텍스트 처리 고양이 파일1 파일2 ... | 명령어<> file1_in.txt_or_file1_out.txt PIPE, STDIN, STDOUT을 이용한 텍스트 조작을 위한 일반적인 문법 고양이 파일 1 | 명령어(sed, grep, awk, grep 등)는 파일의 상세 설명 텍스트를 병합하고 도입부를 새 파일에 작성> result.txt 고양이 파일 1 | command(sed, grep, awk, grep 등) >> result.txt 파일의 상세 설명 텍스트를 병합하고 도입부를 기존 파일에 작성합니다. grep Aug /var/log/messages 파일에서 키워드 "Aug"를 찾으세요. grep ^Aug /var/log/messages 파일 '/var/log/message'에서 "Aug"로 시작하는 단어를 찾아보세요. grep [0-9] /var/log/messages '/var/log/messages' 파일에서 숫자가 포함된 모든 줄을 선택하세요 grep Aug -R /var/log/* 디렉터리 '/var/log' 및 이후 디렉터리에서 "Aug" 문자열을 검색하세요 sed 's/stringa1/stringa2/g' example.txt example.txt 파일에서 "string1"을 "string2"로 대체합니다 sed '/^$/d' example.txt example.txt 파일에서 모든 빈 줄을 제거하세요 sed '/ *#/d; /^$/d' example.txt example.txt 파일에서 모든 주석과 빈칸 줄을 삭제합니다 에코 '에셈피오' | tr '[:lower:]' '[:upper:]'는 상부 셀과 하부 셀 내용을 병합합니다 sed -e '1d'는 파일 result.txt 첫 줄을 제외할 example.txt sed -n '/stringa1/p'를 사용하여 "string1"이라는 단어만 포함하는 줄을 볼 수 있습니다. sed -e 's/ *$//' example.txt 각 줄의 마지막 여백 문자를 제거하세요 sed -e 's/stringa1//g'는 문서에서 "string1"이라는 단어만 제거하고 나머지는 모두 유지example.txt sed -n '1.5p; 5q' example.txt 1행부터 5행까지의 내용을 보기 sed -n '5p; 5q' example.txt 5번 라인을 봐 sed -e 's/00*/0/g' example.txt 여러 개의 0을 하나의 0으로 대체합니다 cat -n file1은 파일 내 줄 수를 나타냅니다 캣 example.txt | awk 'NR%2==1'은 example.txt 파일의 모든 짝수 줄을 삭제합니다 에코 A B C | awk '{print $1}'를 사용하여 한 줄의 첫 번째 열을 보기 에코 A B C | awk '{print $1,$3}'를 사용하여 행의 첫 번째와 세 번째 열을 봅니다. 파일1 붙여넣기 file2는 두 개의 파일 또는 열의 내용을 병합합니다 붙여넣기 -d '+' file1 file2는 두 개의 파일 또는 열의 내용을 중간에 "+"로 구분하여 병합합니다 sort file1 file2는 두 파일의 내용을 정렬합니다 정렬 file1 file2 | Uniq는 두 파일의 합집합을 제거합니다(중복된 라인은 한 부만 보관됨) 정렬 file1 file2 | Uniq -U는 교차점을 삭제하고 나머지 선들을 남깁니다 정렬 file1 file2 | Uniq -D는 두 파일의 교차점을 제거하여 두 파일에 동시에 존재하는 파일만 남깁니다 comm -1 file1 file2는 두 파일의 내용을 비교하며 'file1'이 포함하는 내용만 삭제합니다 COMM -2 File1과 File2는 두 파일의 내용을 비교하고 'file2'에 포함된 내용만 삭제합니다. comm -3 file1 file2는 두 파일의 내용을 비교하고 두 파일에 공통된 부분만 삭제합니다
캐릭터 설정 및 파일 형식 변환 dos2unix는 MSDOS에서 UNIX로 텍스트 파일 형식을 변환하는 filedos.txt fileunix.txt Unix2DOS는 UNIX에서 MSDOS로 텍스트 파일 형식을 변환하는 fileunix.txt filedos.txt 다시 코딩 .. HTML < page.txt > page.html 텍스트 파일을 HTML로 변환합니다 Recode -l | 더 많은 프로그램이 모두 변환 포맷을 허용했습니다
파일 시스템 분석 badblocks -v /dev/hda1 : 디스크 hda1에서 불량 블록을 검사하기 위해 fsck /dev/hda1을 사용하여 hda1 디스크의 리눅스 파일 시스템의 무결성을 복구/점검합니다 fsck.ext2 /dev/hda1 hda 디스크의 ext2 파일 시스템의 무결성 복구/점검 e2fsck /dev/hda1 hda 디스크의 ext2 파일 시스템의 무결성 복구/점검 E2fsck -j /dev/hda1은 hda 디스크의 ext3 파일 시스템의 무결성을 복구/점검합니다 FSCK.ext3 /dev/hda1은 hda 디스크 내 ext3 파일 시스템의 무결성을 복구/점검합니다 fsck.vfat /dev/hda1은 hda1 디스크의 FAT 파일 시스템의 무결성을 복구/점검합니다 hda1 디스크의 DOS 파일 시스템의 무결성을 수리/점검하기 위해 fsck.msdos /dev/hda1을 사용하세요 DOSFSCK /dev/hda1은 hda1 디스크의 DOS 파일 시스템의 무결성을 복구/점검합니다
파일 시스템 초기화 MKFS /dev/hda1은 HDA1 파티션에 파일 시스템을 생성합니다 mke2fs /dev/hda1은 hda1 파티션에 Linux ext2 파일 시스템을 생성합니다 mke2fs -j /dev/hda1은 HDA1 파티션에 Linux ext3(로그 기반) 파일 시스템을 생성합니다 mkfs -t vfat 32 -F /dev/hda1 사용하여 FAT32 파일 시스템을 생성합니다 FDFORMAT -n /dev/fd0 플로피 디스크를 포맷합니다 mkswap /dev/hda3 사용하여 스왑 파일 시스템을 생성하세요
SWAP 파일 시스템 mkswap /dev/hda3 사용하여 스왑 파일 시스템을 생성하세요 Swapon /dev/hda3가 새로운 스왑 파일 시스템을 활성화합니다 swapon /dev/hda2 /dev/hdb3가 두 스왑 파티션 모두를 활성화합니다
백업 -0aj -f /tmp/home0.bak /home을 덤프하여 '/home' 디렉터리의 완전한 백업을 만듭니다 '/home' 디렉터리의 인터랙티브 백업을 위해 -1aj -f /tmp/home0.bak /home을 dump -if /tmp/home0.bak 복원하여 대화형 백업을 복원합니다 rsync -rogpav --delete /home /tmp를 사용하여 양쪽 디렉터리를 동기화합니다 rsync -rogpav -e ssh --delete /home ip_address:/tmp rsync SSH 채널을 통해 rsync -az -e ssh --delete ip_addr:/home/public /home/local은 SSH와 압축을 통해 원격 디렉터리를 로컬 디렉터리로 동기화합니다 rsync -az -e ssh --delete /home/local ip_addr:/home/public은 SSH와 압축을 통해 로컬 디렉터리를 원격 디렉터리에 동기화합니다 dd bs=1M if=/dev/hda | 지즈 | SSH user@ip_addr 'dd of=had.gz'는 SSH를 통해 원격 호스트의 로컬 디스크를 일회성 백업합니다 dd if=/dev/sda of=/tmp/file1 디스크 내용을 파일로 백업 tar -Puf backup.tar /home/user는 '/home/user' 디렉터리에 한 번 대화형 백업 작업을 수행합니다 ( CD /tmp/local/ & tar c . ) | ssh -C user@ip_addr 'cd /home/share/ &&> tar x -p' ssh를 통해 원격 디렉터리에 한 디렉터리 콘텐츠를 복사하세요 (타르 C /홈) | ssh -C user@ip_addr 'cd /home/backup-home & tar x -p' 원격 디렉터리에 로컬 디렉터리를 ssh로 복사하세요 타르 CF - . | (CD /tmp/backup ; tar xf - )는 한 디렉터리를 다른 디렉터리로 로컬로 복사하며, 원래의 권한과 링크를 유지합니다 찾기 /home/user1 -name '*.txt' | XARGS CP -av --target-directory=/home/backup/ --parents는 '.txt'로 끝나는 모든 파일을 한 디렉터리에서 다른 디렉터리로 찾아 복사합니다 /var/log -name '*.log' 찾아보세요 | tar CV --files-from=- | bzip2 > log.tar.bz2는 '.log'로 끝나는 모든 파일을 찾아 bzip 패키지를 만듭니다 dd if=/dev/hda of=/dev/fd0 bs=512 count=1 MBR(마스터 부트 레코드) 콘텐츠를 플로피 디스크에 복사하는 동작을 수행합니다 dd if=/dev/fd0 of=/dev/hda bs=512 count=1 플로피 디스크에 저장된 백업에서 MBR 콘텐츠를 복구합니다
CD cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 복사 가능한 디스크의 내용을 비우기 mkisofs /dev/cdrom > cd.iso 디스크에 디스크의 ISO 이미지 파일을 생성합니다 MKISOFS /개발자/CDROM | gzip > cd_iso.gz 디스크 위에 압축된 디스크 ISO 이미지 파일을 생성합니다 mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd 디렉터리의 iso 이미지 파일 생성 cdrecord -v dev=/dev/cdrom cd.iso ISO 이미지 파일 굽기 gzip -DC cd_iso.gz | cdrecord dev=/dev/cdrom - 압축된 ISO 이미지 파일을 구워 마운트 -o 루프 cd.iso /mnt/iso를 통해 ISO 이미지 파일을 마운트하세요 cd-paranoia -B CD 디스크의 트랙을 wav 파일로 옮겼습니다 CD-Paranoia -- "-3"은 CD 디스크의 오디오 트랙을 WAV 파일(Parameter-3)로 전사했습니다. CDR로 --스캔버스가 버스를 스캔하여 SCSI 채널을 식별합니다 DD IF=/dev/hdc | md5sum은 CD와 같은 장치의 md5sum 인코딩을 검증합니다
네트워크 - (이더넷 및 WIFI 무선) ifconfig eth0는 이더넷 카드 구성을 보여줍니다 IFUP eth0는 'eth0' 네트워크 장치를 활성화합니다 Ifdown eth0는 'eth0' 네트워크 장치를 비활성화합니다 ifconfig eth0 192.168.1.1 netmask 255.255.255.0 제어 IP 주소 IFCONFIG eth0 promisc는 'eth0'를 promiscuous 모드로 설정하여 패킷을 스니핑합니다 (스니핑) DHclient eth0는 DHCP 모드에서 'eth0'를 활성화합니다 경로 -n 라우팅 테이블 표시 Route Add -NET 0/0 GW IP_Gateway configura default gateway 경로 추가 -net 192.168.0.0 넷마스크 255.255.0.0 GW 192.168.1.1 네트워크 '192.168.0.0/16'에 도달하기 위한 고정 경로 설정 정적 경로를 제거IP_gateway Route del 0/0 GW 에코 "1" > /proc/sys/net/IPv4/ip_forward IP 라우팅 활성화 호스트네임 시스템 호스트네임 보기 호스트www.example.com호스트네임을 조회하여 이름과 IP 주소를 해석하고, 그 반대도 마찬가지입니다(1) nslookupwww.example.com호스트네임을 조회하여 이름과 IP 주소를 해석하고, 그 반대도 마찬가지입니다(2) IP 링크 표시 모든 인터페이스의 링크 상태 표시 Mii-tool eth0 'eth0'의 링크 상태 표시 ethtool eth0 네트워크 카드 'eth0'의 통계 표시 netstat -tup 모든 활성 네트워크 연결 및 PID 표시 netstat -tupl 시스템에서 듣는 모든 네트워크 서비스와 그 PID 표시 tcpdump TCP 포트 80 모든 HTTP 트래픽 표시 IWLIST 스캔 무선 네트워크 iwconfig eth1 무선 네트워크 카드 구성 표시 호스트네임 쇼 호스트네임 호스트www.example.com호스트네임을 검색해서 이름과 IP 주소를 해석하고, 그 반대도 마찬가지입니다 nslookupwww.example.com호스트네임을 검색해서 이름과 IP 주소를 해석하고, 그 반대도 마찬가지입니다 후이스www.example.comWhois 데이터베이스 JPS 도구 JPS(Java Virtual Machine Process Status Tool)에서 조회하는 명령어로, JDK 1.5에서 제공하는 모든 현재 자바 프로세스의 PID를 표시하는 매우 간단하고 실용적이며, Linux/Unix 플랫폼에서 현재 자바 프로세스의 간단한 상황을 확인하는 데 매우 적합합니다. 많은 분들이 UNIX 시스템에서 ps(ps) 명령어를 사용해본 것 같은데, 주로 현재 시스템 프로세스, 어떤 프로세스가 있는지, 그리고 그 ID를 표시하는 데 사용됩니다. jps도 마찬가지로, 현재 시스템의 Java 프로세스 상태와 ID 번호를 보여줍니다. 각 자바 프로그램이 독점적인 자바 VM 인스턴스를 가지고 있기 때문에 몇 개의 자바 프로세스를 시작했는지, 프로세스 번호(다음 프로그램을 준비하기 위함)를 확인할 수 있고, opt를 사용해 이 프로세스들의 상세한 시작 매개변수를 확인할 수 있습니다. 사용법: 현재 명령줄에 jps를 입력하세요(JAVA_HOME 필요하며, 그렇지 않으면 변경 프로그램 디렉터리로 이동합니다). JP는 JAVA_HOME/bin/jps에 저장되므로, 편의를 위해 Path.$>에 JAVA_HOME/bin/을 추가해 주세요 23991 JPS 23789 보스메인 23651 레진 가장 일반적으로 사용되는 매개변수: -q는 pid만 표시하며, 클래스 이름, jar 파일 이름, 그리고 메인 메서드에 전달되는 매개변수는 표시하지 않습니다 $> JPS -q
28680
23789 23651-m은 임베디드 JVM에서 null$> jps -m이 될 수 있는 메인 메서드에 전달된 매개변수를 출력합니다. 28715 JPS -m 23789 보스메인 23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log-l 애플리케이션의 메인 클래스 전체 패키지 이름 또는 jar 파일의 전체 경로 이름을 출력하세요 $> jps -l 28729 sun.tools.jps.jps 23789 com.asiainfo.aimc.bossbi.BossMain 23651 com.caucho.server.resin.v는 JVM에 전달된 매개변수 $> jps -v를 출력합니다 23789 보스메인 28802 Jps -Denv.class.path=/data/aoxj/bossbi/twsecurity/java/trustwork140.jar:/data/aoxj/bossbi/twsecurity/java/:/data/aoxj/bossbi/twsecurity/java/twcmcc.jar:/data/aoxj/ jdk15/lib/rt.jar:/data/aoxj/jdk15/lib/tools.jar -Dapplication.home=/data/aoxj/jdk15 -Xms8m 23651 Resin -Xss1m -Dresin.home=/data/aoxj/resin -Dserver.root=/data/aoxj/resin -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -Djavax.management.builder.initial= com.caucho.jmx.MBeanServerBuilderImplsudo jps는 가장 완전한 프로세스 수를 인식합니다 192.168.0.77은 원격 서버의 모든 JVM 인스턴스를 나열하며, RMI 프로토콜을 사용해 192.168.0.77 머신을 사용합니다. 기본 연결 포트는 1099입니다(원격 서버가 jstatd 서비스를 제공한다면). 참고: jps 명령어에 잘못된 위치가 있는데, 현재 사용자의 Java 프로세스만 표시할 수 있고, Unix/Linux의 PS 명령어만 다른 사용자를 표시할 수 있습니다.
|