一、文件系统的管理

tips:输入命令的时候要常用tab键来补全

常用指令

ls          显示文件或目录

     -l           列出文件详细信息l(list)

ll =ls -l    ls -l 等价于  ll

     -a          列出当前目录下所有文件及目录,包括隐藏的a(all)

-R 列出当前目录下的可见文件及目录

pwd   查看当前所处的路径

mkdir         创建目录(文件夹)

     -p   a/b/c       如果要创建的文件夹的父目录不存在,则自动创建p(parent)

cd               切换目录

touch          创建空文件touch a.avi

vi 用文本编辑器编辑一个文件并且保存vi blabla.txt     

编辑完毕后,按ESC键,跳到命令模式,然后进行保存退出或不保存退出操作:

 :w 保存,不退出vi

 :w! 强制保存,不退出vi

 :wq:x 保存,并退出vi

 :wq!强制保存,并退出vi

echo            创建带有内容的文件。echo "hello" > helloworld.txt

 文件末尾追加内容 echo “hello”>>helloworld.txt

 

cat              查看文件内容

more 可以分页看

空格键(Space):代表向下翻一页。

Enter:代表向下滚动一行。

Ctrl+f        向下滚动一屏;

Space        向下滚动一屏;

Ctrl+b        返回上一屏;

:f:立刻显示出文件名与当前的行号。

q:代表立即退出,不予显示。

b[ctrl]-b:往回翻,不过该操作只对文件有用。

less   不仅可以分页,还可以方便地搜索,回翻等操作

head、tail    显示文件头、尾内容

tail -10 hello.txt   查看文件的尾部的10

tail -f  user.log   实时刷新显示文件的尾部(程序打出的日志在生产实践中具有非凡的 debug的意义)

head -20 hello.txt 查看文件的头部20

Ctrl+c 强制终止当前进程

cp                拷贝 cp srcFile destFile

mv               移动或重命名

mv  a.txt  /public/     移动到指定目录

mv  a.txt  b.txt      修改名称

mv  a.txt  /public/c.txt   移动到public目录下并修改文件名

rmdir   删除空文件夹  (只能删除空文件夹)

rm               删除文件

     -r            递归删除,可删除子目录及文件

     -f            强制删除

find              在文件系统中搜索某文件

find a.txt

wc                统计文本中行数、字数、字符数

wc  a.txt

grep             在文本文件中查找某个字符串

grep  nihao a.txt       [grep字符串  文件名]

tree             树形结构显示目录,需要安装tree包

yum  -y  install  tree 安装的命令

 

ln                  创建链接文件

打包压缩相关命令

gzip:

bzip2:

tar:                打包压缩

     -c              压缩文件

     -x              解压文件

     -z              gzip压缩文件

     -j              bzip2压缩文件

     -v              显示压缩或解压缩过程 v(view)

     -f              使用档名

例:

tar -cvf /home/abc.tar /home/abc              只打包,不压缩

tar -zcvf /home/abc.tar.gz /home/abc        打包,并用gzip压缩

tar -jcvf /home/abc.tar.bz2 /home/abc      打包,并用bzip2压缩

当前目录不需要加/

 

当然,如果想解压缩,就直接替换上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf 中的“c” 换成“x” 就可以了。

 

系统管理命令

stat              显示指定文件的详细信息,比ls更详细

who               显示在线登陆用户

whoami          显示当前操作用户

hostname      显示主机名

uname           显示系统信息

top                动态显示当前耗费资源最多进程信息

ps                  显示瞬间进程状态 ps -aux

du                  查看目录大小 du -h /home带有单位显示目录信息

df                  查看磁盘大小 df -h 带有单位显示磁盘信息

ifconfig          查看网络情况

ping                测试网络连通

netstat          显示网络状态信息

man                命令不会用了,找男人  如:man ls

clear              清屏

alias               对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit

kill                 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。

 

二、权限管理

linux系统中对文件权限的描述机制:

三种基本权限

d  r  w  x   r  w  x   r  -  x

   所有者    所属组   其他人

第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

R           读         数值表示为4

W          写         数值表示为2

X          可执行   数值表示为1

可以表示为二进制:  111 111 101

也可以表示为十进制: 7   7   5

修改权限

sudo chmod [u所属用户  g所属组  o其他用户  a所有用户]  [+增加权限  -减少权限]  [r  w  x]   目录名 

例如:有一个文件filename,权限为“-rw-r----x” ,将权限值改为"-rwxrw-r-x",用数值表示为765

sudo chmod u+x g+w o+r  filename

上面的例子可以用数值表示

sudo chmod 765 filename 用数字也可以表示权限  

5 --->  101 ---> r-x

修改文件的所有者owner(只能由root权限才能操作)

chown hadoop:hadoop  file 将file的所有者改成hadoop用户,所属组改成hadoop组

上级目录的权限对本级文件或者文件夹的操作有约束

三、用户管理

加用户

useradd  td001

必须设置密码才能正常登陆    passwd td001

删除用户

userdel td001

userdel -r td001 -----删除用户的同时删除用户的主目录

 

修改用户属性

usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号] 

参  数:

 -c<备注>  修改用户帐号的备注文字。

 -d登入目录>  修改用户登入时的目录。

 -e<有效期限>  修改帐号的有效期限。

 -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。

 -g<群组>  修改用户所属的群组。

 -G<群组>  修改用户所属的附加群组。

 -l<帐号名称>  修改用户帐号名称。

 -L  锁定用户密码,使密码无效。

 -s<shell>  修改用户登入后所使用的shell。

 -u<uid>  修改用户ID。

 -U  解除密码锁定。

usermod -l b a 将a的登陆名改为b

usermod -g hadoop td001 td001的组改为hadoop组

usermod -G hadoop,root td001 td001添加两个组hadoop,root

usermod -d /home/td td001 td001的主目录改成/home/td

(要事先创建td目录,并且拷入环境变量文件)

----****----修改用户的密码

passwd td001

添加用户组

groupadd beauties

删除用户组

groupdel beauties

修改用户组属性

groupmod

查看当前登陆的身份

whoami

查看当前用属的组

Groups

 

 

用户及用户组管理

/etc/passwd    存储用户账号

/etc/group       存储组账号

/etc/shadow    存储用户账号的密码

/etc/gshadow  存储用户组账号的密码

useradd 用户名

userdel 用户名

adduser 用户名

groupadd 组名

groupdel 组名

passwd root     给root设置密码

su root

su - root 

/etc/profile     系统环境变量

bash_profile     用户环境变量

.bashrc              用户环境变量

su user              切换用户,加载配置文件.bashrc

su - user            切换用户,加载配置文件/etc/profile ,加载bash_profile

更改文件的用户及用户组

sudo chown [-R] owner[:group] {File|Directory}

例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop

要想切换此文件所属的用户及组。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

 

四、常见系统管理(凡是涉及到修改,就一定要用root权限)

****

轻易不要使用su去切换到root的身份

普通用户使用sudo来执行root权限的命令

如,将hadoop用户添加到sudoers文件中去

root    ALL=(ALL)       ALL

hadoop  ALL=(ALL)       ALL

 

 

磁盘空间信息查看

df -h  查看磁盘空间状态信息 -h  显示单位

du -sh * 查看当前目录下所有子目录和文件的汇总大小 s 汇总   

 

 

进程信息查看

free  查看内存使用状况

top   查看实时刷新的系统进程信息

 

ps -ef  查看系统中当前瞬间的进程信息快照

ps -ef | grep myshell.sh  搜索myshell进程的信息

kill -9 pid  杀掉进程  (-9 表示强制杀死)

关机/重启机器

shutdown

     -r             关机重启

     -h             关机不重启

     now          立刻关机

halt               关机

reboot          重启

 

.rpm文件转为.deb文件

.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。

sudo alien abc.rpm

 

vim使用

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

命令模式下:

:q                      退出

:q!                     强制退出

:wq                   保存并退出

:set number     显示行号

:set nonumber  隐藏行号

/apache            在文档中查找apache 按n跳到下一个,shift+n上一个

yyp                   复制光标所在行,并粘贴

h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

 

六、网络管理

修改ip地址的配置

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改该配置文件即可改ip地址

或者在root权限下用setup指令通过一个带提示的伪图形界面来修改

 

 

 

查看ip地址

ifconfig

 

 

修改主机名

sudo vi  /etc/sysconfig/network  修改其中的hostname配置项

要想立即生效  可以执行指令  hostname nidezhujiming

 

HOSTNAME=yun12-01

 

管理内网的"主机名---ip地址"本地映射

sudo vi /etc/hosts

192.168.2.250  yun12-01

 

 

重启网络服务

root权限下   service network restart

关闭防火墙服务  service iptables stop

关闭防火墙自动启动   chkconfig iptables off

 

修改系统的默认启动级别

vi /etc/inittab

 

#   0 - halt (Do NOT set initdefault to this)

#   1 - Single user mode

#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)

#   3 - Full multiuser mode

#   4 - unused

#   5 - X11

#   6 - reboot (Do NOT set initdefault to this)

#

id:3:initdefault:

~

level 3 就启动全功能状态的字符界面

 

 

 

查看当前的进程连接网络的信息

netstat -nltp   

 

 

 

 

 

五、常用工具指令

wc   统计文本信息(行数,词数,字符数)

date  查看或者修改系统的日期和时间

echo  输出字符串或者变量的值

vi   linux系统中最通用的文本编辑器

 

六、linux中的软件安装

jdk

将安装包解压到你的安装路径下

然后修改环境变量  sudo vi /etc/profile

然后  source /etc/profile  来生效

tomcat

Eclipse

 

 

mysql

redhat 公司的RPM方式的包管理 也是很常用的软件包管理器

 

rpm -qa | grep mysql

sudo rpm -e mysql-libs-5.1.66-2.el6_3.i686 --nodeps

sudo rpm -ivh MySQL-server-5.1.73-1.glibc23.i386.rpm