zoukankan      html  css  js  c++  java
  • Linux常见命令集锦

    这是平常用到的命令在这里做一下总结:

    一、python 类
    1、pip(已安装)
    pip用来安装来自PyPI(https://www.python.org/)的python所有的依赖包,并且可以选择安装任何在PyPI上已上传的先前版本的依赖包,个人认为是python相关的包和第三方包以及各种版本
    2、setuptools (已安装)
    easy_install

    综上:安装pip的方法:
    Install pip and virtualenv for Ubuntu 10.10 Maverick and newer

    $ sudo apt-get install python-pip python-dev build-essential
    $ sudo pip install --upgrade pip
    $ sudo pip install --upgrade virtualenv
    For older versions of Ubuntu

    Install Easy Install
    $ sudo apt-get install python-setuptools python-dev build-essential
    Install pip
    $ sudo easy_install pip
    Install virtualenv
    $ sudo pip install --upgrade virtualenv


    二、ssh
    1.无密码:
    ssh-keygen -t rsa
    cd ~/.ssh
    cp id_rsa.pub authorized_keys
    cd
    ssh a(建立自身链接)
    设置b
    拷贝a上的.ssh 文件覆盖本地即可

    有时候需要 ssh b@ip 先进行链接(更改 /etc/hosts ip1 主机名a ip2 主机名2 ssh 主机名a)
    2.scp
    三 、 mysql
    find / |grep my.cnf
    find / -name my.conf
    whereis
    which
    配置文件
    1.终端启动MySQL:/etc/init.d/mysql start;(stop ,restart。)
    2.登录MySQL:mysql -u root -p (用root账户登录),然后输入密码; mysql -h ip -u root -p 登陆到其他机器

    3.查看所有的数据库名字:show databases;
    4.选择一个数据库操作: use database_name;
    5.查看当前数据库下所有的表名:show tables;
    6.创建一个数据库:create database database_name;
    7.删除一个数据库:drop database database_name;
    8.创建一个表: create table mytest( uid bigint(20) not null, uname varchar(20) not null);
    9.删除一个表: drop table mytest;
    10.SQL插入语句:insert into table_name(col1,col2) values(value1,value2);
    11.SQL更新语句:update table_name set col1='value1',col2='value2' where where_definition;
    12.SQL查询语句:select * from table_name where.......(最复杂的语句)
    13.SQL删除语句:delete from table_name where...
    14.增加表结构的字段:alert table table_name add column field1 date ,add column field2 time...
    15.删除表结构的字段:alert table table_name drop field1;
    16.查看表的结构:show columns from table_name;
    17.limit 的使用:select * from table_name limit 3;//每页只显示3行
    select * from table_name limit 3,4 //从查询结果的第三个开始,显示四项结果。
    此处可很好的用来作分页处理。
    18.对查询结果进行排序: select * from table_name order by field1,orderby field2;多重排序
    19.退出MySQL:exit;
    20 导入导出 mysqldump

    21 导出文件
    第一种 :mysql -uroot -pmima -e"select *from contest" jol > /tmp/contest.txt 有时候会有乱码

    第二种 :mysql -uroot -ppwd -e"select * fromtable into outfile '/table.txt' fields terminated by ',' lines terminated by ' '"


    远程链接 对于给定的ip 地址
         mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip' IDENTIFIED BY 'pwd' WITH GRANT OPTION;
    mysql > flush privileges;

    四 apache

    配置文件 /etc/apache2
    日志文件 /var/log/apache2
    启动 /etc/init.d/apache2 restart

     

    五、phpmyadmin

    本地phpmyadmin远程连接服务器端MySQL 首先要确定你的mysql远程连接已开启,如果没有开启按照下面的二个方法操作:
    方法一:改表法
    因为在linux环境下,默认是关闭3306端口远程连接的,需要开启,如果你装mysql数据库时开启了3306就OK了。
    默认mysql帐号不允许从远程登陆,只允许localhost访问。登入mysql后,更改 "mysql" 数据库 里的 "user"(远程数据库的名称) 表里的 "host" 项,把"localhost"改称"%" 。这样你的mysql就可以远程操作了。
    update user set host = '%' where user = 'root';
    注意:这样方法只是把本机localhost访问改为了"%"所有地址IP都可以访问mysql服务器,这样很不安全。默认localhost访问的时候有所有操作权限。所以不安全!推荐用第二个方法。
    方法二:授权法 (推荐使用)
    (1)SQL语句:
    grant select,insert,update,delete on *.* to root@"%" Identified by "password";
    允许地址IP上root用户,密码dboomysql来连接mysql的所有数据库,只付给select,insert,update,delete权限。 这样比较安全。如果只允许IP(192.168.1.1)上root用户
    访问更安全,操作(2)
    (2)SQ语句:
    grant select,insert,update,delete on *.* to root@"192.168.1.1" Identified by "password";
    只允许地址IP(192.168.1.1)上root用户访问更安全了。
    (3)
    grant all on *.* to root@"192.168.1.1" Identified by "password"
    允许地址192.168.1.1上用root用户,密码password来连接mysql的所有数据库,付给所有权限。不太安全。
    现在重启mysql服务,如果你的服务器上安装了防火墙,看看3306端口开启没,如果没需要开启3306端口才能用了,在linux下要开启防火墙 打开3306 端口,编辑这个文件vi /etc/sysconfig/iptables
    输入
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    保存后在控制台输入 /etc/init.d/iptables restart 重启防火墙,记得一定要重启防火墙。

    配置好本地PHP环境,下载PHPMYADMIN
    方法一:
    (一)、下载phpmyadmin
    http://www.phpmyadmin.net/home_page/index.php
    (二)、修改libraries文件夹下的config.default.php文件或者phpmyadmin根目录的config.inc.php文件。
    1、查找$cfg['PmaAbsoluteUri'] ,将其值设置为你本地的phpmyadmin路径
    2、查找$cfg['Servers'][$i]['host'] , 将其值设置为你mysql数据库地址,例如127.0.0.1
    3、查找$cfg['Servers'][$i]['user'] , 将其值设置为你mysql数据库用户名,例如admin
    4、查找$cfg['Servers'][$i]['password'] , 将其值设置为你mysql数据库密码,例如admin
    (三)、在本地访问phpmyadmin 可查看远程mysql数据库,phpMyAdmin 3.3.1只需要修改 $cfg['Servers'][$i]['host']的值,用户名密码 访问phpmyadmin时输入。
    方法二:
    1,在浏览器中输入:http://localhost/phpmyadmin/setup/
    2,点击“新建服务器” ,填写表单:
    服务器名称:主机名称
    服务器主机名:主机IP
    认证方式:config
    config 认证方式的用户名:用户名
    config 认证方式的密码:用户密码
    3,保存后返回setup界面,点击下载,下载的文件为 config.inc.php
    4,将下载的文件 config.inc.php 复制到 /usr/share/phpmyadmin/ 目录下

    5,编辑 /usr/share/phpmyadmin/config.inc.php
    添加以下代码
    /* Server: localhost [1] */
    $i++;
    $cfg['Servers'][$i]['verbose'] = '主机名称';
    $cfg['Servers'][$i]['host'] = '主机IP';
    $cfg['Servers'][$i]['port'] = '';
    $cfg['Servers'][$i]['socket'] = '';
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['auth_type'] = 'config';
    $cfg['Servers'][$i]['user'] = '用户名';
    $cfg['Servers'][$i]['password'] = '密码';


    六、iptables

    iptables -L -n 检查端口情况
    为了能采用远程SSH登陆,我们要开启22端口. input链的默认规则是DROP。所以我们就写需要ACCETP的链。
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

    iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 开启3306 的端口

    iptables -I INPUT -p tcp --dport 3306 -j DROP  关闭

    七 vnc
    1.每次服务器关闭后,都要重新kill,重新申请vnc端口号。否则出现“authentication failure”

    #vncpassword 修改密码
    #vncserver -geometry 1280x1024(不能是*,用小写x(字母)) 设置vnc server分辨率
    #vncserver -alwaysshared 设置vnc的同一个显示窗口可以连接多个客户机,一般默认是连接最后发送连接请求的客户机
    vncserver -kill :15 暴力停止vnc server(一定要记得冒号前加空格,否则kill失败。开多个端口而不用,很浪费资源,一般就一个)

    八 、服务器缓存处理
    1、
    查看目录下有多少个文件及文件夹需在终端输入
    ls | wc -w
    查看目录下有多少个文件需在终端输入
    ls | wc -c
    查看文件夹下有多少个文件,多少个子目录需在终端输入
    ls -l |wc -l
    若只想知道文件的个数,则需在终端输入
    /bin/ls -l |grep ^-|wc -l
    2、
    du -h --max-depth=1 查看文件夹容量
    df -h 查看文件系统容量
    3、
    uname -a 查看系统位数 i686 32 还是 64位
    4、find . -mtime +1 -type f -name 'cache*' | xargs rm -rf
    寻找 前24小时的文件 放入管道 并且 删除


    九、使用shell分析Apache的access.log

    #查看80端口的tcp连接

    #netstat -tan | grep "ESTABLISHED" | grep ":80" | wc -l

    1

    #当前WEB服务器中联接次数最多的ip地址:

    #netstat -ntu |awk '{print $5}' |sort | uniq -c| sort -n -r

    #查看日志中访问次数最多的前10个IP

    #cat access.log |cut -d ' ' -f 1 |sort |uniq -c | sort -nr | awk '{print $0 }' | head -n 10 |less

     

    #查看日志中出现100次以上的IP

    #cat access.log |cut -d ' ' -f 1 |sort |uniq -c | awk '{if ($1 > 100) print $0}'|sort -nr |less

     

    #查看最近访问量最高的文件

    #cat access.log |tail -10000|awk '{print $7}'|sort|uniq -c|sort -nr|less

    #从日志里查看该ip在干嘛:

    #cat access.log | grep 218.66.36.119| awk '{print $1"/t"$7}' | sort | uniq -c | sort -nr | less

    #列出传输时间超过 30 秒的文件

    #cat access.log|awk ‘($NF > 30){print $7}’|sort -n|uniq -c|sort -nr|head -20

    #列出最最耗时的页面(超过60秒的)的以及对应页面发生次数

    #cat access.log |awk ‘($NF > 60 && $7~//.php/){print $7}’|sort -n|uniq -c|sort -nr|head -100

    九、vi
    查找 /关键字 n继续查找 N网上查找
    十、其他

    1、(乱码) 已配置 并且禁用了 8中字体
    zip 解压时:防止乱码 unzip -O CP936 文件名.zip GBK GB18030 ********
    ubuntu默认不支持gbk所以用gbk编码写的东西就会乱码 让Ubuntu支持GBK,方法如下:
     修改/var/lib/locales/supported.d/local文件,在文件中添加  zh_CN.GBK GBK  zh_CN.GB2312 GB2312  sudo dpkg-reconfigure --force locales  然后在输出的结果中会出现  zh_CN.GB2312 done  zh_CN.GBK done  这样, Ubuntu就支持GBK编码了这只是系统支持了 有的程序还是不支持的需要你自己再配置一下

    2、cp 不带参数,只能copy一个文件,不能copy带文件的目录,到指定地方.

    cp -rf 带参数,就能copy任何数据,到指定地方.

    比如:cp test.txt /home/MIR1566-PC/Document 拷贝test文本文件到指定目录下.

    比如:cp -rf test /home/MIR1566-PC/Document 拷贝test目录到指定目录下.

    3、[****@localhost ~]$ su - username
    Password: #输入用户username的密码

    4、可以用命令“getconf LONG_BIT”查看,
    如果返回的结果是32则说明是32位,返回的结果是64则说明是64位。

    此外还可以使用命令“uname -a”查看,
    输出的结果中,如果有x86_64就是64位的,没有就是32位的。

     

     

     后续待补

  • 相关阅读:
    修改Windows上MySQL的数据文件路径
    【转】Analysis Services 2005中数据完整性处理
    设置Bitvise Ssh Client 为Windows服务
    Finalize/Dispose资源清理模式
    ACM HDU BFS 题目
    BFS专题之hdu1242 rescue
    bfs专题之HUD 1429 胜利大逃亡(续)
    ACM HDU 1010 Tempter of the Bone
    流水线作业调度问题
    系统原型
  • 原文地址:https://www.cnblogs.com/shizhenqiang/p/5391880.html
Copyright © 2011-2022 走看看