= Linux = {{tag>OS Operating_System Linux Shell}} = Setting = == Repository 변경 == sudo vi /etc/apt/sources.list :%s/us.archive.ubuntu.com/ftp.daumkakao.com/g # 혹은 sudo sed 's/us.archive.ubuntu.com/ftp.daumkakao.com/g' /etc/apt/sources.list sudo apt-get update sudo apt-get upgrade == SSH 키 충돌 날 때 == ssh-keygen -R [IP] = Utility = == ZSH == sudo apt-get install zsh chsh -s `which zsh` curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh == Oracle JDK 8 == sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java8-installer === 수동 설치 === wget --no-cookies \ --no-check-certificate \ --header "Cookie: oraclelicense=accept-securebackup-cookie" \ http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz \ -O jdk-8-linux-x64.tar.gz sudo mv jdk1.8.0_171 /usr/lib sudo alternatives --install /usr/bin/java java /usr/lib/jdk1.8.0_171/bin/java 1 sudo alternatives --install /usr/bin/javac javac /usr/lib/jdk1.8.0_171/bin/javac 1 sudo alternatives --install /usr/bin/jar jar /usr/lib/jdk1.8.0_171/bin/jar 1 sudo alternatives --set java /usr/lib/jdk1.8.0_171/bin/java sudo alternatives --set javac /usr/lib/jdk1.8.0_171/bin/javac sudo alternatives --set jar /usr/lib/jdk1.8.0_171/bin/jar alternatives --config java java --version sudo /etc/profile JAVA_HOME=/usr/lib/jdk1.8.0_171 PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME PATH source /etc/profile == Samba == sudo apt-get install samba samba-common-bin sudo smbpasswd -a 사용자 sudo nano /etc/samba/smb.conf #root계정으로 설정할 때 [root] comment = samba server path = / valid user = root writable = yes browseable = yes #service --status-all service samba restart #12.04는 smbd ##만약 안된다면 ### sudo /etc/init.d/samba restart #비밀번호 변경 smbpasswd -U 사용자계정 #등록된 user 확인 #옵션에 -v 붙이면 더 상세한 정보 확인 가능 sudo pdbedit -L #설정 정보 확인 testparm #Windows에서 자격증명 전체 삭제 net use /delete * == VirtualBox 게스트 확장 설치 == sudo apt-get install dkms sudo apt-get install build-essential linux-headers-`uname -r` mkdir tools sudo mount /dev/cdrom ~/tools sudo ./tools/VBoxLinuxAdditions.run # Reboot! # 확인 lsmod | grep vboxvfs # vboxsf 마운트 시키기 (공유 디렉토리 설정) VBoxManage showvminfo "VM 이름" mount -t vboxsf SHARED /mnt/vm_shared = Command = == grep == # 해당 문자열이 포함된 파일 찾기 ## 00 03 06 09 12 15 18 21 grep -r '00 03 06 09 12 15 18 21' ./ === grep sed 를 이용해 여러 파일에 있는 문자 치환하기 === grep -rl "특정문자" * | xargs sed -i 's/특정문자/바꿀문자/g' == find == # 해당 디렉토리에 있는 모든 text 파일에서 AAA를 BBB로 치환 ## sed 뒤에 i는 자기 자신을 치환 find ./ -name '*.txt' -exec sed -i 's/AAA/BBB/g' {} \; == Permission 전체 변경 == //777로 변경 chmod -Rf 777 DIRECTORYNAME == tar == === 풀기 === tar -xvf FILENAME.tar === 압축 === tar -cvf FILENAME.tar DIRECTORYNAME/ == MySQL Dump== === 추출 === mysqldump -u USERID -p DBNAME > FILENAME.sql === 입력 === mysqldump -u USERID -p create database DBNAME; -- DB 생성 mysql -u USERID -p DBNAME < FILENAME.sql = Crontab = __**C**__h__**ron**__(time)__**tab**__le * * * * * COMMAND # m(0 ~ 59) h(0~23) d(1~31) M(1~12) DayOfWeek(0~6, 0 : Sunday) # 등록 crontab -e # 삭제 crontab -r # 1분마다 date 출력 * * * * * date >> /tmp/greet.txt ## */1 * * * * date >> /tmp/greet.txt # 매시 15,45분 "Hello, world" 출력 15,45 * * * * echo "Hello, world!" >> /tmp/greet.txt == File Descriptor == |<100%>| ^ STDIN | 0 | ^ STDOUT | 1 | ^ STDERR | 2 | # crontab 예시 ## 표준 출력, 표준 오류 모두 출력 * * * * * /bin/echo "foobar" >> /file_you_own 2>&1