您的位置:首页 > 运维架构 > Linux

Linux一些常用命令总结

2014-03-30 22:39 417 查看

Linux一些常用命令、操作总结

1、linux 启动过程分析

a)BIOS自检

b)启动GRUB/LILO

c)运行LINUX内核并检测硬件

d)运行系统的第一个进程init,它的进程号pid=1

e)init读取系统引导配置文件/etc/inittab中的信息进行初始化

f)/etc/rc.d/rc.sysinit系统初始化脚本

g)/etc/rc.d/rcX.d/[KS]* -根据运行级别X配置服务

  终止以"K"开头的服务

  启动以"S"开头的服务

h)/etc/rc.d/rc.local执行本地特殊配置

i)其它特殊服务

2、Fedora root密码破解

重启后 立即按e键 进入一个页面,选择第二行 再按e键,在下一个页面输入空格和1,代表以第一种级别登录

按b键进入单用户模式 直接命令行输入passwd user 即可改密码,当然也可以在这里修改配置文件,

如修改启动级别(修改配置文件):vi /etc/inittab

注:Fedora不能在图形界面以root用户登录,只能在命令行下面登录,即su+root密码

    且使用根用户登录Fedora必须先修改配置文件:vi /etc/pam.d/gdm

    在该文件里注释掉下面这行: auth required pam_succeed_if.so user!= root quiet  

    保存退出 :wq

3、vi Hello.java建立Hello.java文件

输入i进入插入(编辑)模式

输入esc进入命令行模式

输入 :wq表示保存退出

输入:q!表示不保存退出

编译 javac Hello.java

运行 java Hello

4、java开发环境搭建

进入安装包目录输入./jdk-6u45-linux-i586.bin即可

看一个配置文件 vi /etc/profile [环境配置文件]

配置自己的JDK 设置环境变量

JAVA_HOME=/home/jdk1.6.0_45

PATH=$PATH:/home/jdk1.6.0_45/bin

CLASSPATH=.:/home/jdk1.6.0_45/jre/lib/rt.jar
export JAVA_HOME PATH CLASSPATH

5、MySql的安装、目录结构、配置、使用:

参考http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/11/04/2236240.html

rpm -qal | grep mysql 检查有没有装过mysql

默认安装目录结构:

1)数据库目录:/var/lib/mysql/

2)配置文件:/usr/share/mysql(mysql.server命令及配置文件)

3)相关命令:/usr/bin(mysqladmin、mysqldump等命令)(*mysql的一种安全启动式:/usr/bin/mysqld_safe  --user=root &)

4)启动脚本:/etc/rc.d/init.d/

1、如果是rpm包,参考rpm包安装

2、如果是tar.gz文件

   解压:tar -zxvf 包名.tar.gz

3、继续配置

groupadd mysql (创建mysql组)

useradd -g mysql mysql (创建mysql用户,并放入到Mysql组)

进入到mysql文件夹输入:scripts/mysql_install_db --user=mysql (初始化数据库)

chown -R root .  (修改文件的所有者)

chown -R mysql data (修改date文件夹的所有者)

chgrp -R mysql . (改变用户组)  

启动mysql服务:service mysql start

启动mysql

bin/mysqld_safe --user=mysql & (地址符&表示以后台方式启动)

如何进入mysql(默认没有密码)

# mysql -u root -p

解决mysql"Access denied for user 'root'@'localhost'"问题

#/etc/init.d/mysql stop (停止mysql)

#mysqld_safe --user=mysql --skip-grant-tables --skip-networking &  (启动安全模式)

#mysql -u root mysql (通过以上模式直接进入了mysql,不检查用户名和密码)

mysql>UPDATE user SET Password=PASSWORD('新密码') where USER='root';

mysql>FLUSH PRIVILEGES;

mysql>quit

# /etc/init.d/mysql restart

# mysql -u root -p

Enter password: <输入新设的密码>

出现You must SET PASSWORD before executing this statement的解决方法:

mysql> SET PASSWORD = PASSWORD('123456'); 

如果希望在任何一个目录下都可以进入mysql

则需要在 /root/.bash_profile中添加路径

mysql数据库的使用

1)进入mysql # mysql -u root -p

2)建立数据库和表creat database zpcdb1;

3)建表create table users(userId varchar(8),userName varchar(8));

4)加入数据insert into users values('001','zpc');

5)编写一个java文件读取数据库数据

6)mysql驱动存放位置:jdk目录下的/jre/lib/

要配置CLASSPATH环境变量 vi /etc/profile

在配置文件中增加一行(注意lib后面没有ext,Classpath路径要和真实的路径对应):CLASSPATH=.:/home/jdk1.6.0_45/jre/lib/mysql-connector-java-5.1.29-bin.jar

export CLASSPATH

备份mysql数据库(进入到mysql安装目录,就是放有mysqldump命令的目录)

mysqldump -u root -p 数据库名>data.bak  其中data.bak就是备份文件,随意指定名称

恢复mysql数据库

mysql -u root -p密码 数据库名<data.bak

6、安装tar.gz文件:

a、解压tar -zxvf ???.tar.gz (指定解压目录:tar zxvf filename.tar -C /specific dir)

b、进入目录配置./configure --prefix=/opt/zpcsamba

c、编译 make

d、安装 make install

补装gcc编译器 yum -y install gcc* 

-c :create 建立压缩档案的参数;

-x : 解压缩压缩档案的参数;

-z : 是否需要用gzip压缩;

-v: 压缩的过程中显示档案;

-f: 置顶文档名,在f后面立即接文件名,不能再加参数

7、启动Eclipse[进入图形界面再打开终端]

进入图形界面的两种方式

1、startx 以执行命令者的身份启动X图形界面

2、init5 启动 runlevel 5所对应的服务,并运行图形登录管理器,由用户选择以何种身份登录,只有root有权执行

启动Eclipse

cd eclipse

ls

./eclipse

8、用户管理、目录结构

root 存放root用户的相关文件

home 存放普通用户的相关文件

bin 存放常用命令的目录

sbin 存放具有一定权限才可以使用的命令

mnt 默认挂载光驱和软驱的目录

etc 存放配置相关文件(环境变量、tomcat、mysql数据库的配置)

var 存放经常变化的文件

boot 存放引导相关的文件

df

df -h查看磁盘使用情况

9、添加用户、设密码、删除用户

useradd xiaozhou

设密码

passwd xiaozhou

删除用户

userdel xiaozhou

删除用户及用户主目录

userdel -r xiaoming

修改启动级别(修改一个配置文件)

vi /etc/inittab

10、重启命令:

1、reboot

2、shutdown -r now 立刻重启(root用户使用)

3、shutdown -r 10 过10分钟自动重启(root用户使用) 

4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用)

如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启

11、关机命令:

1、halt   立刻关机

2、poweroff  立刻关机

3、shutdown -h now 立刻关机(root用户使用)

4、shutdown -h 10 10分钟后自动关机

如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启

12、文件操作命令

pwd显示当前工作目录

cd 改变目录

ls 列出文件和目录

ls -a 显示隐藏文件

ls -l显示长列表格式

mkdir 建立目录

rmdir 删除空目录

rm -rf 删除整个目录(里面内容全删掉)

-r 就是向下递归,不管有多少级目录,一并删除

-f 就是直接强行删除,不作任何提示的意思

mv a.txt b.txt重命名文件如果已经有b.txt则覆盖

rename 'a' 'b' a.txt 重命名a.txt为b.txt 

cp zpc.java /home/zhou 把zpc.java文件拷到zhou目录下

rm zpc.java 删除zpc.java文件

管道命令|,把上一个命令的结果交给|的后面的命令处理

grep在文本中查询内容

grep -n "zpc" zpc.java到zpc.java文件中找zpc,找到后输出行数和那一行的内容

more 显示文件内容带分页

find / -name zpc.java从根目录开始查找zpc.java文件

ls -l>a.txt 本来改在终端显示的东西写入到文件a.txt中,覆盖写

ls -al>>a.txt追加写

13、如何在Linux中添加组

groupadd policeman

查看linux中所有的组

vi /etc/group

或者只查看

cat /etc/group

创建一个用户,指定将该用户分配到哪个组

useradd -g 组名 用户名

查看Linux所有用户信息

cat /etc/passwd

14、文件所有者对该文件的权限:

r 可读 用4表示

w 可写 用2表示

x 可执行 用1表示

-rw-r--r--

第一个字段表示文件的所有者对该文件的权限

第二个字段表示文件所在的组对该文件的权限

第三个字段表示其他的用户对该文件的权限

chmod 777 zpc1 修改了zpc1目录的访问权限,3个7分别表示本身、组内、组外

如果只想让自己和本组的人访问该目录,则777改成770

chmod 664 zpc1.java表示组内和自身都可以写

在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组:usermod -g 组名 用户名

可以用usermod -d 目录名 用户名 改变该用户登录的初始目录

15、挂载光驱

mount /mnt/cdrom/

cd /mnt/cdrom/

ls

卸载

umount /mnt/cdrom/

16、Shell编程

ls -l /bin/*sh查看系统的shell种类

env 查看目前使用的shell种类

chsh -s /bin/csh 改成了csh这种shell

chsh -s /bin/bash 改成了bash这种shell

history 列出最近使用过的命令

history 5 显示最近使用的5个命令

17、网络配置

setup

保存网络设置

/etc/rc.d/init.d/network restart

ifconfig 查看网络配置

临时网络配置(这种方法会即时生效,但也是临时生效)

ifconfig eth0 x.x.x.x 对网卡进行设置

ifconfig eth0 network x.x.x.x对子网掩码设置

显示网络统计信息的命令

netstat

netstat -an 按端口号排序

netstat -anp 按端口号排序并显示进程号

ifconfig 查看网络配置

追踪数据包经过程命令:

traceroute www.sohu.com

route路由表 

18、安装rpm包

rpm -i RPM包全路径名称 :安装包到当前系统

rpm -ivh RPM包全路径:带有提示信息的安装

i=install 安装

v=verbose 提示

h=hash 进度条

删除rpm包

rpm -e RPM包的名称 

强制删除

rpm -e --nodeps RPM包的名称

查询linux中安装了哪些rpm软件

rpm -qa

rpm -qa mysql 查看系统是否安装了mysql

19、samba的安装步骤

a、rpm -q  samba 检查是否已安装该软件(这里检查的是rpm为后缀的安装包)

b、如有就先卸载

c、把自己的安装文件挂载到linux下(如挂载U盘)

d、把 samba开头的文件拷到/home,准备安装

  cp samba-4.1.6.tar.gz /home(这里是tar.gz的文件)

e、开始安装

f、创建一个用户youyou

  useradd youyou

  passwd youyou

g、给youyou设置samba密码

  cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

  smbpasswd youyou

g、第二种方法:smbpasswd -a suyang 将系统用户suyang加入到 samba用户数据库

h、启动samba服务器

  service smb start

  service smb stop

  service smb restart

另一种方法

a、yum -y install samba 在线安装samba

b、参考http://lxsym.blog.51cto.com/1364623/289156/

20、linux下挂载U盘

a、mkdir /mnt/USB 先在/mnt下建立一个叫USB的目录来挂载u盘

b、fdisk -l 查看一下磁盘分区情况

c、U盘插入USB口再输入fdisk -l查看一下u盘是否读取

d、mount -t vfat /dev/sdb1 /mnt/USB 挂载

e、cd /mnt/USB 

   ls -l /mnt/USB 查看u盘里的文件

f、umount /mnt/USB 卸载u盘(卸载时切换个目录,不要在u盘目录下卸载,否则提示忙)

21、任务调度的使用

1、设置任务crontab -e

2、每隔一分钟去执行date > /home/mydata1:* * * * * date >> /home/mydate

 每天凌晨2:00执行date > /home/mydata1:在crontab -e中加入0 2 * * * date >> /home/mydate

 *号分别表示分钟(每小时的第几分钟执行)、小时、日期、月历、星期

3、调度多个任务

  1)在crontab -e中直接写

  2)把所有的任务写入到一个可执行文件(shell编程)

4、终止任务调度

  crontab -r:终止任务调度

  crontab -l:列出当前有哪些任务调度

22、查看进程状态

ps -aux | more

杀死进程

kill 进程号

kill -9 进程号(强制杀死)

另外一种查看进程方法

top | more 区别在于top命令不断实时刷新

top -d 10  指定系统更新进程的时间为10秒

20120  4188

date命令显示系统时间

查看月历:

cal 2 2014 查看2014年2月

cal 2014 查看2014整年

把日历存到test文件里

cal 2014 > test

23、linux补充知识:

1)拷贝文件夹(比拷贝文件多了个-r)

cp -r workspace/ /home

cp -rf workspace/ /home(加个f表示全覆盖,不用询问)

2)建立符号连接

ln -s 源 目标

ln -s /root/zpc.java  zpc(zpc指向实际文件zpc.java)

3)grep在文本中查询内容

grep -n "zpc" /root/zpc.java  /home/

在/root/zpc.java文件和/home/目下寻找包含zpc的串

4)find命令:搜索文件及目录

find /home -name abc 在home目录下查找名字为abc的文件

find /home -size +10k 查找/home目录下大小为10k的文件

find /home -admin -10 查找10分钟内存取过的文件或目录

5)每天凌晨两点自动备份数据库

  vi mytask2.sh

  在mytask2.sh中写入:/usr/bin/mysqldump -u root -p123456 zpcdb1 > /home/zpcdb1.bak

  修改mytask2.sh的可执行权限:chmod 744 mytask2.sh

  添加任务调度:crontab -e

  写入:0 2 * * * /root/mytask2.sh

6)用户登录后自动执行的shell脚本文件(配置用户的或者全局的profile文件)

  配置.bashrc文件可以指定某些程序在用户登录的时候就自动启动。

7)显示变量内容

  echo $PATH 输出当前PATH环境变量内容

  env也可以直接查看所有环境变量

  临时编辑环境变量(追加)export PATH=$PATH:/root/zpc

8)通配符的使用

  find /home/ -name m*  在home目录下找m打头的文件

  *代表多个字母或数字

  ?代表多一个字母或数字

  []限定范围 ls abc[1-6].java 表示abc后面可以跟一个1-6的数字

  

9)使用别名,alias用法

  ls -l /home

  取个别名:alias llh='ls -l /home'

10)文件压缩  zip aa.zip zpc.java user.java把zpc.java、user.java两个文件压缩到aa.zip中

   文件夹压缩 zip  -r aa2.zip ./workspace 把当前目录下的workspace压缩为aa2.zip

11)解压缩unzip aa.zip
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: