다른 계정 사용자로 로그인 su [옵션] 계정명 -c : 계정변신 없이 명령만 실행 ex) su -c 'cat /etc/shadow' - root -s : 지정된 쉘로 로그인 - : 환경변수 적용해 로그인 ◎ 일반계정에서 root로 로그인 (환경변수 미적용) [root@push06 kbs]# id uid=0(root)gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) [root@push06 kbs]# [root@push06 kbs]# env HOSTNAME=push06 TERM=linux SHELL=/bin/bash HISTSIZE=1000 USER=kbs PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/kbs/bin MAIL=/var/spool/mail/kbs PWD=/home/kbs
- 서버에 접속한 사용자의 접속정보 및 작업정보 [root@ ~]# w 13:10:50 up 21:37, 2 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 175.198.97.114 09:53 0.00s 0.17s 0.00s w root pts/1 175.198.97.114 11:56 1:13m 0.01s 0.01s -bash TTY : teletype JCPU : 모든 프로세스의 CPU 사용시간 PCPU : WHAT 필드에서 사용하는 CPU 사용시간
◎ useradd 명령어 옵션 설명 -u uid : 사용자 ID를 지정-g gid : 그룹이름이나 GID를 지정-d dir : 사용자의 홈 디렉토리의 절대 경로지정-c comment : 패스워드 파일에 기재할 주석문을 넣을때 사용-m : 사용자의 홈 디렉토리가 없는 경우 생성-k : 홈 디렉토리에 저장될 각종 정보를 포함시킬 디렉토리 지정-s : 사용자가 사용할 쉘을 지정 ◎ useradd 환경을 설정하는 파일들1. /etc/default/useradd2. /etc/login.defs3. /etc/skel/모든파일 1. [/etc/default/useradd]useradd 의 기본파일, useradd 로 계정 생성시에 어떤 환경과 어떤 파일들을 참조하여 새로운 계정을 생성할 것인가 # cat /etc/default/useraddGROUP=100 // 기본 등록 그룹의 GIDHOME=/home // 홈디렉토리 경로INACTIVE=-1 // 패스워드 종료일 이후의 유효(기간)여부 설정 (0, -1, 1 이상의 숫자)EXPIRE= // 계정 종료일자 지정SHELL=/bin/bash // 기본사용자 쉘SKEL=/etc/skel // 홈디렉토리에 복사할 기
패스워드에 lock 걸어 잠그기 [root@push06 skel]# passwd -l kbs Locking password for user kbs. passwd: Success [root@push06 skel]# grep kbs /etc/shadow kbs:!!$1$aPkNiTws$ZV5bM4sc48RINJ0vK5U3f0:15947:0:99999:7::: [root@push06 skel]# passwd -u kbs Unlocking password for user kbs. passwd: Success.
사용형식 : gpasswd [옵션] [그룹명] [옵션] -a user : 특정 그룹에 유저 추가 -d user : 특정 그룹에서 유저 제거 -r : 특정 그룹의 패스워드 제거 -R : 특정 그룹에 접근 제한 -A user : 특정 그룹의 그룹관리자로 지정 -M user : 특정 그룹의 그룹멤버를 새로 설정 vi /etc/group 로 수정하는 방법이 보편적
◎ /etc/passwd와 /etc/shadow 필드 설명 [/etc/passwd] root : x : 0 : 0 : root : /root : /bin/bash 필드 1 2 3 4 5 6 7 1 : 사용자명2 : 패스워드3 : 사용자 계정 uid4 : 사용자 계정 gid5 : 사용자 계정 이름6 : 사용자 계정 홈 디렉토리7 : 사용자 계정 로그인 쉘 [/etc/shadow] root : $1$9L2L0oTwd : 12751 : 0 : 99999 : 7 : : :필드 1 2 3 4 5 6 7 8 9 1 : 사용자명2 : 암호화된 패스워드3 : 암호 최종 변경일4 : 암호 변경 최소일수5 : 암호 변경 최대일수6 : 암호 변경 경고일 수7 : 암호 비활성화 기간8 : 계정 사용 종료일9 : 예약 필드
aging 정보는 /etc/shadow 파일에 설정되는 정보들로써 계정 사용자들의 종료일자, 패스워드 만료일자, 만료기간, 암호변경 최소날짜, 암호 유효 최대날짜 등을 의미 [root@~ ]# chage -l root Last password change : Aug 28, 2013 // -d 옵션Password expires : never // -M 옵션Password inactive : never // -I 옵션Account expires : never // -E 옵션Minimum number of days between password change : 0 // -m 옵션Maximum number of days between password change : 99999 // -M 옵션Number of days of warning before password expires : 7 // -W 옵션 # aging 변경[root@push06 ~]
새로운 계정이 생성되면 생성되는 계정명과 동일한 이름의 그룹이 자동생성 되고, 자동생성된 그룹에 속하게 된다. groupadd 명령어로 생성되는 그룹은 기본값으로 GID가 500 이상부터 생성된다. (GID 499까지는 시스템용) # 그룹 생성 [root@~ ]# groupadd sgroup # GID를 지정하여 그룹 생성 [root@~ ]# groupadd -g 700 kgroup # /etc/group 파일의 내용에 새로운 그룹이 생성됨 [root@push06 ~]# tail -n 3 /etc/group kbs:x:502: sgroup:x:500: kgroup:x:700: # 시스템용으로 사용할 그룹 생성 [root@push06 ~]# groupadd -r systemgroup [root@push06 ~]# tail -n 2 /etc/group protoss:x:501: systemgroup:x:160: # 그룹 삭제 [root@push06 ~]# groupdel systemgroup
프로세스의 상태를 확인하는 명령어 사용형식 : ps [옵션] # ps -ef -e : 모든 프로세스 표시 -f : 전체 경로로 프로세스 표시 # ps -f -U USERID -u USERID 계정이 USERID인 사람으로 실행되는 프로세스 보기 # 계정 메모리 실사용량 확인 ps -o user,pid,rss,comm --sort -rss -u 계정명 # 계정 메모리 실사용량합계 ps -o rss -u 계정명 | awk '{sum+=$0} END {print sum}
/- 최상위 디렉토리인 루트디렉토리.- 파티션 설정 시 반드시 존재하여야 함 /bin - 리눅스의 기본 명령어들이 들어있는 디렉토리- root와 일반사용자들도 사용 /sbin - 시스템 관리자용 명령어들이 들어있는 디렉토리 /lib - 프로그램이 필요로 하는 라이브러리 파일 존재- /lib/module : 커널이 필요로 하는 커널모듈 파일 존재 /boot- 시스템 부팅에 관련된 파일을 저장하고 있는 디렉토리 /dev- 시스템 디바이스 파일을 저장하고 있는 디렉토리- 컴퓨터에 연결된 모든 장치가 파일로 표현 /etc - 시스템 환경 설정 파일이 있는 디렉토리 /home- 사용자의 홈디렉토리, ID와 동일한 이름으로 디렉토리를 가짐 /root - root의 홈디렉토리 /mnt - 플로피, CD-ROM 등 다른 장치들을 마운트 할때 사용하는 디렉토리 /proc- 현재 메모리에 존재하는 모든 작업들이 파일형태로 존재하는 가상디렉토리 /var - 시스템운용중에 생성되었다가 삭제되는 데이터를 저장하는 디렉토리 /var/log - 각종 로그파일이 저장되는 디렉토리 /var/spool/mail- 메일이 일시적으로 저장되는 디렉토리 /tmp - 일시적인 저장을 위한 디렉토리
# rpm -qa 설치된 전체 패키지 확인 # rpm -qa | wc -l 설치된 전체 패키지 갯수 # rpm -qa | grep kernel특정 패키지 확인 # rpm -ql vsftpd특정 패키지에 의해 어떤파일들이 생성되었는지 확인 # rpm -qf /bin/ps 특정파일이 어떤패키지에 의해 생성되었는가를 확인 # rpm -qi vsftpd특정패키지의 정보를 출력 # rpm -qa --queryformat "%{NAME} : %{Summary} " | more 설치된 패키지들이 이름 : 설명 식으로 출력
mii-tool 네트워크 인터페이스의 연결 상태를 확인하고, 랜카드의 속도와 duplex 모드(전이중, 반이중모드)를 변경, 자동감지설정(autonegotiation)의 ON/OFF를 설정 할 수 있다. [root@push06 ~]# mii-tool eth0: negotiated 100baseTx-FD, link ok eth1: negotiated 100baseTx-FD, link ok eth0은 100MB의속도로 전이중모드로 설정되어 정상적(link ok)으로 사용되고 있다. -v 상세하게 확인 할 수 있다. -w 실시간으로 연결 상태를 확인할 수 있다. -R 기본설정대로 Mii를재설정한다 -r autonegotiation 설정을 재시작한다 autonegotiation으로 두 장비간의 연결 속도와 duplex 모드를 자동으로 맞추게 되지만 제대로 되지 않아 충돌이 발생하는 경우나 원하는 속도로 변경을 해야할 때 사용한다. 예) 100MB, Full duplex 모드로 변경 [root@push06 ~]# mii-tool -F 100baseTx-FDeth0 autonegotiation - 상대의 NIC 를 확인하여 자신의 NIC 속도와 D