cap|linux|share|ubuntu

January 9, 2007

mysql没了root或者丢了密码怎么办

我使用的是ubuntu6.06的系统….运行的是lamp….php5 phpmyadmin也有的 我在配合泡面亚当民下删除了我的root..于是在大家的帮助下, 重新建立起了我的mysql以下是步骤….我重新安装过服务…..但是可能没有删干净我机器里驻留的mysql配置文件(尽管我在新立德软件管理器里是将能删的mysql都删了..而且是连同配置文件一起删除的, 但还是不奏效) 

1.先停掉

Mysql server killall mysqld

2进入mysql的安全模式

mysqld_safe –skip-grant-tables &

3从别人的机器上拷贝mysql/data/mysql下的三个文件user.frm、user.MYD、 user.MYI, 保证用户名是root 密码你要知道. 然后用这三个文件覆盖本地的文件

4 然后关闭服务再启动服务service mysqld stop/service mysqld start(不知道为什么重启服务不行,一定要一步一步来)

5 然后开启一个新的终端, mysql -u root -p,回车后输入对方的root密码, 就进去了…….

6 在mysql下, mysql> use mysql;

                    update user set password=password("123456") where user="root"; 设定你的root密码为123456

                      flush privileges; 刷新权限

                             \q回车就退出了

 然后不管你是在win下还是在linux下. 进入phpmyadmin里仔细修改你的用户…..应该你会发现原来用户的账号还在……

 ======参考的文章=======

 1. 先停掉 Mysql server

killall mysqld

2. 執行下列指令,讓MySQL以安全模式執行:

mysqld_safe –skip-grant-tables &

3. mysql -u root -p

這樣子不需要密碼就可以進入MySQL。

4. 於提示字元下輸入:

use mysql

update user set password=password("new_pass") where user="root";


上列的new_pass就是新的密碼。

於提示字元下:flush privileges;

輸入quit,離開MySQL

5. 停掉安全模式下的MySQL

killall mysqld

6. 重新啟動MySQL

/usr/local/etc/rc.d/mysql-server.sh start
======================

 前天钱包被偷,除了直接的经济损失以外,还有一点重要的是我刚配好的一台服务器的root密码跟mysql的root密码丢了。(之前为了安全着想。我自己写了个随机算法生成了一个超长口令。。结果。。可想而知了。。自己记不住。抄了张纸在钱包里。钱包偷了。。密码当然也不能幸免)
系统的root密码easy,e修改grub的kernel行到single模式下,或者用光盘启动到rescure模式下,passwd root,重置个就OK了。
但mysql的用户管理是独立的。。mysqladmin,mysql都没法用了,怎么办才好呢。。
经过不断试验。摸索。。发现在/usr/local/mysql/data/mysql下的三个文件user.frm、user.MYD、 user.MYI是症结所在,用别人的机器上tar下这三个文件,覆盖掉本地的!然后关闭服务再启动服务service mysqld stop/service mysqld start(不知道为什么重启服务不行,一定要一步一步来),OK!
mysql -u root -p对方的root密码
yahoo,进去了~~
所以说。。其实,linux下基本上没有什么办不到的事情,只有想不到的主意。有人说,这么简单就把密码给清了,linux不是没有一点安全性可言吗?非也非也!关键在于root,root的权力实在是太大了。觉得自己的系统不安全么?谁让你把root密码随便给人了。。一个普通用户,他能做到上面的事情吗?答案是不可能!!!嘿嘿。。系统安全,sa——你准备好了吗?
====================

 MySQL遗忘密码
Wikipedia,自由的百科全书

MySQL密码忘记后该怎么办

首先杀掉原有的mysqld进程.再启动一个跳过grant的mysqld服务

/path/to/mysql/bin/mysqld_safe –skip-grant –user=mysql &

然后直接登陆

/path/to/mysql/bin/mysql -uroot

登陆以后就可以设置密码了: mysql> use mysql;

mysql> update user set password=password("new-password") where user="root";

mysql> flush privileges;

mysql> exit

这时候再正常启动mysql就可以使用新的密码了。

January 3, 2007

Debian/Ubuntu Linux下内核编程者必备的几件法宝

如果你想要升级你的Debian/Ubuntu Linux内核,或者你希望为内核开发新的模块,或者您要为某个硬件写新的驱动程序……这一切都涉及到Debian/Ubuntu Linux内核编程。
作为一个内核编程者,有那么几个软件是你必须要有的,看作是你进行内核编程的几件法宝吧,下面我一一列举出来:

1、gcc
大名鼎鼎的gcc我想没有人不知道的吧?它是任何编程者必然要先安装的一个武器了。不过一般如果你是安装的Debian系统,应该已经默认安装了的。要是Ubuntu你就安装一下吧,安装方法嘛,就是输入:
apt-get install gcc

2、make
如果你实实在在地写过有用的程序,你一定输入过make clean、make、make install等命令的,make是一个源代码维护工具,它能自动检测出需要重新编译的源文件并根据你设定的编译规则去重新编译程序。这里也不多说,如果 不了解的朋友就google一下吧。不过一般如果你是安装的Debian系统,应该已经默认安装了的。要是Ubuntu你就安装一下吧,安装方法一样,输 入:
apt-get install make

3、kernel-source
从这个包的名称上已经知道了,这是内核源码包。你可以apt-cache search kernel-source搜索到内核源代码包,并用uname -r命令查看到当前系统内核版本,然后用apt-get install kernel-source-xxxx来安装和你内核版本一致的内核源代码包。
但我并不建议你这样做,因为大多数发行版的Linux的内核源代码包并不是和你从kernel.org上下载来的完全一致,应该是经过发行者们修改优化过 的包,虽然发行版的制作者们花了心血在上面,但对我们编程者来说这并不是件好事,因为大多发行版的源代码包缺少某些必要的头文件和某些有用的脚本程序,这 会导致我们在编写内核模块时遇到麻烦,比如编译时可能会报错说某个头文件找不到,又可能报错说某个脚本程序不存在啦。
如果你直接去kernel.org上下载一个新的内核来编译升级你的内核,并在此基础上进行内核编程可能会省事一些,至少我后面讲到的这些包你都可以不用安装了,把KERNEL_DIR变量设置为你内核源代码包的位置就够了。
在这里还是以Debian 3.1、内核2.6.8-2-386为基础来教大家准备内核编程环境吧。那么你依次用这几个命令来安装kernel-source包吧。
apt-cache search kernel-source
uname -r
apt-get install kernel-source-xxxx
注:如果你不想重新编译内核,内核源代码包kernel-source是完全可以不下载来的。

4、kernel-headers
这是内核源代码头文件包,不管你是要进行内核模块开发还是进行驱动程序开发,这个包都是必须要安装的。因为作为一个内核模块编写者,通常会调用内核里的一 些东西,比如内核头文件,内核数据结构申明等。它里面包含了一些关键的内核头文件。否则在编译内核时会报类似下面的错误:
HOSTCC scripts/basic/fixdep
scripts/basic/fixdep.c:105:23: error: sys/types.h: 没有那个文件或目录
输入如下命令来安装吧:
apt-cache search kernel-headers
uname -r
apt-get instakk kernel-headers-xxxx
注:在Ubuntu下,好象这个包的前面都加上了linux-,从而变成了linux-kernel-headers。
如果之前没有安装过kernel-kbuild包,安装此包的过程中会安装kernel-kbuild包,这个包在下面介绍。

关于本文档:
/**********************
*filename: Debian/Ubuntu Linux下内核编程者必备的几件法宝
*purpose: 记录Linux内核开发者必备的几个软件包
*wrote by: zhoulifa(zhoulifa@163.com) 周立发(http://zhoulifa.bokee.com)
Linux爱好者 Linux知识传播者 SOHO族 开发者 最擅长C语言
*date time:2006-07-01 22:50:00
*Note: 任何人可以任意复制代码并运用这些文档,当然包括你的商业用途
* 但请遵循GPL
**********************/


5、kernel-kbuild
这个包是用来编译�

December 26, 2006

envolution的gmail设置


  在Gmail上找不到Evolution的配置方法,网上也有不少人询问如何配置,我在网上找到一篇英文的配置说明,我按其设置成功了,所以拿来与大家共享,简单翻译如下:

(注:要使用客户端发送接收gmail,需要在gmail中启用pop,具体见gmail的帮助)

  1. 启动Evolution。

  2. 点击“编辑”──首选项。

  3. 点击添加(账户)/注:如果你已经设置过gmail账户,则可以点击编辑。

  4. 在名称里输入你的名字,在请求的信息中全名和电子邮件地址都填写你的Email地址。填好之后点击接收电子邮件标签。

  5. 接收电子邮件:服务器类型:POP; 服务器:pop.gmail.com; 用户名:你的gmail地址,如kakald@gmail.com; 使用安全链接:SSL加密; 记住密码。设置好后点击下一个标签。

  6. 接收选项:按自己喜欢设置,并不影响gmail是否在evolution中工作。

  7. 发送电子邮件:服务器类型:smtp; 服务器:smtp.gmail.com; 服务器需要认证:选中; 使用安全链接,SSL加密; 身份验证:用默认的"Plain"; 用户名:同你的邮件地址,如kakald@gmail.com,最后记住密码。

  8. 默认选项卡可以依喜好设置,或保持默认。

  9. 点击应用,完成设置。
 
  现在你可以试试发送接收邮件,如果提示你输入密码,说明成功了,你可以用Evolution发送接收gmail邮件了。

  如果有问题请留言讨论,或给我发邮件:kakald@gmail.com

aMule设置

首先要安装 aMule,现在 aMule 已经是 GTK 2 界面了,很漂亮,中文支持也很好。安装之后,设置昵称为 [CHN][VeryCD]xxxx,然后服务器设置为:

名称:DonkeyServer No1 地址:62.241.53.2:4242

其他的服务器还有:

名称:华语P2P源动力 地址:61.152.93.254:4661
名称:Razorback 2 地址:195.245.244.243:4661

但是这两个我这里一般连不上。

然后设置 firefox 和 opera。

firefox:

在地址栏中键入:about:config,打开配置页。右键点击配置列表,创建“布尔”项 network.protocol-handler.external.ed2k,值为 true,然后在创建一个“字符串”项 network.protocol-handler.app.ed2k,值为 /usr/bin/ed2k.amule。这样就可以了。

opera:

在菜单->工具->首选项->高级->程序->选择其他协议的帮手程序中,添加一项,协议为 ed2k,程序为 /usr/bin/ed2k.amule。这样就可以了。

这些东西在网上都能搜到,在这里记下来免得以后设置再到网上查。

另外比较可靠的一个列表连接 http://corpo.free.fr/server.met

December 25, 2006

用apt-get方法安装mysql5 + Apache2 + PHP5+Phpmyadmin:


大家请先看下Ubuntu的WIKI,(http://wiki.ubuntu.org)上面讲的很详细的。但本人按上面做的第一次没有成功。apache2,php5,mysql5都可以运行,就是phpmyadmin不能用。
本人得到的经验是:MYSQL安成功后,一定要先给它设个密码,这上步是不可少的。
此篇只代表个人的观点和经验,可能会片面化和有错误,请大家批评指正,有问题大家一起来讨论!!

1 .要用apt-get的方式安装,最好,也可能是必须先运行下面在命令升级自己的系统,我的就只能先升级后才能安装mysql5 + Apache2 + PHP5的。
我在没升级前运行sudo apt-get install apache2 php5 mysql-server 是没有用的。而如果你找的源不好或是你的网络不稳定的话,你也有可能升级不成。这样的话,你想用apt-get的方式来安装一些软件时可能是不能安装的。
sudo apt-get update
sudo apt-get dist-upgrade

2.安装:
sudo apt-get install mysql-server
安装上mysql5
sudo apt-get install apache2
安装apache2
sudo apt-get install php5
安装php5
sudo apt-get install php5-mysql
安装php的mysql模块
sudo apt-get install php5-gd
安装GD库
在运行上面的命令的时候,可以留心看下libapache2-mod-auth-mysql(安装apache2时可能会安上)和libapache2-mod-php5,如果看到安上了就不用再单独安装了。

3 . 配置:

我们刚安装上的MYSQL,只有一个系统默认的root用户,而且是没有密码的,此时我们一定要给MYSQL设置一个密码,个人认为一定要的。因为我第一 次安装时就是没有搞这一步,认为和win下的一样,可先不用设置。可是当我在http://127.0.0.1/phpmyadmin下用root不带密 码登陆时怎样也不会成功!
终端下输入:
mysql -u root
mysql> GRANT ALL PRIVILEGES ON . TO root@localhost IDENTIFIED BY "123456";
’123456‘是root的密码,可以自由设置,但最好是设个安全点的。
mysql>\q 退出mysql

mysql的配置文件-my.cnf:(路径:/etc/mysql/my.cnf)
运行命令:sudo gedit /etc/mysql/my.cnf可编辑。

apache2的配置文件-apache2.conf(路径:/etc/apache2/apache2.conf)
运行命令:sudo gedit /etc/apache2.conf可编辑

PHP的配置文件-php.ini:(路径:/etc/php5/apache2/php.ini)
运行命令:sudo gedit /etc/php5/apache2/php.ini可编辑。

此时这三个文件暂时不用编辑,如为了安全起见和优化,是一定要编辑的。具体的大家可参观其它资料,此篇暂不多说!!

4 . 安装phpmyadmin
sudo apt-get install phpmyadmin
安装完毕可测试:http://127.0.0.1/phpmyadmin 当出来界面就行了,暂时先别登录,等改下你的PHPMYADMIN的配置文件(config.inc.php)再登陆。
终端输入:sudo gedit /etc/phpmyadmin/config.inc.php
找到$cfg[’Servers’][$i][’password’]= ‘’;
改成:$cfg[’Servers’][$i][’password’]= ‘123456′;
‘123456‘是刚才设置的mysql的密码。

5 . 此时最好重新启动计算机,(在网看到有人这样说,因是第二次安装也就照做了)打开浏览器http://localhost/phpmyadmin/
用户名输入root,再输入刚改的密码,然后执行
可以看到在win下那可亲的phpmyadmin面貌了。

小结:
apache2的操作命令:
启动:sudo /etc/init.d/apache2 start
重启:sudo /etc/init.d/apache2 restart
关闭:sudo /etc/init.d/apache2 stop
apache2的默认主目录:/var/www/

December 22, 2006

totem设置

Filed under: all, linux-ubuntu

安装totem-xine  for 6.06&6.10

ubuntu6.10在安装的时候系统自带了totem播放器,可是支持的格式比较少,就准备把它卸载,安装totem-xine。

$sudo apt-get install libxine-extracodecs totem-xine

系统自动卸载totem,然后安装以xine为后端的totem-xine播放器。

安装w32codecs

toemt-xine已经安装成功,可是因为经常要播放rm,rmvb等文件,就需要安装 w32codecs解码器,可能是因为版权问题,网上很多w32codecs.deb文件都不能正常使用,无意中找到了ubuntu台湾的wiki,找到 了相关的资料。安装如下:

#sudo echo "deb http://apt.ubuntu.org.tw ubtw-testing/" >> /etc/apt/sources.list
//这句话在6.06版本里好像说权限不够,执行不了

所以,改成以下两句

$sudo gedit /etc/apt/sources.list

在打开的文档里粘贴

deb http://apt.ubuntu.org.tw ubtw-testing/

然后保存退出

继续执行
$sudo apt-get update

$sudo apt-get install w32codecs

成功安装了w32codecs,可是totem默认的解码器地址为/usr/lib/codecs,

而下载安装的w32codecs为/usr/lib/win32,那么直接作一个软连接:

$sudo ln -s /usr/lib/codecs /usr/lib/win32

配置成功,能满足自己日常的多媒体播放器的需求。
在此表示感谢!

GRUB修复

Filed under: all, using linux

为了帮助广大用户在遇到类似问题时能够迅速进行修复,下面列出Grub修复的一般过程:

1.找一张Linux安装盘,最好是Fedora、CentOs或者Red Hat系列的;

2.用光盘启动,在启动选项提示状态下输入Linux rescue,并根据系统提示选择默认操作;

3.进入命令行提示符后,输入chroot /mnt/sysimage;

4.运行/sbin/grub-install /dev/sda, 其中,grub-install的路径在某些发行版中有可能是/usr/sbin,/dev/sda是需要修复的硬盘,如果是第一块PATA接口硬盘,通常是/dev/had;

5.重新启动系统。

安装beep media player及wma、ape插件

=================================
http://ekkotwb.blogeden.cn/post/169792/5998
=================================
安装beep media player(也可以直接在 菜单-添加/删除 里安装)

sudo apt-get install beep-media-player

安装后改变mp3标签设置以显示中文:右击播放器界面-首选项-插件-媒体-MPEG音频插件-标签-转换非UTF-8标签为UTF-8标签, 填GBK

下面安装ape、wma插件,采用编译源代码方式。

先安装编译环境

sudo apt-get install build-essential

如果编译gtk+相关程序,可能需要安装libgtk2.0-dev包,这里就需要

sudo apt-get install libgtk2.0-dev

安装beep media player开发包,用于编译插件

sudo apt-get install beep-media-player-dev

安装编译汇编代码的包,编译ape插件需要

sudo apt-get install yasm

安装ape插件,下载地址(国内)http://supermmx.org/linux/mac/

下载ape解码包(源码)MAC non-win32 port,文件名mac-3.99-u4-b5.tar.gz,解压,到解压后目录配置、编译、安装

./configure –enable-assembly
make
sudo make install

下载ape插件(源码)MAC plugin for Beep Media Player,文件名bmp-mac-0.1.1.tar.gz,解压,到解压后目录配置、编译、安装

./configure –enable-local=yes
make
sudo make install

安装wma插件(源码),下载地址(国外)http://download.berlios.de/bmp-plugins/bmp-wma-0.1.1.tar.gz
先安装gcc-3.4(用gcc-4.0以上版本无法正常编译)

sudo apt-get install gcc-3.4

设置编译器版本

export CC=gcc-3.4

将wma插件包解压,到解压后目录,配置、编译、安装

./configure
make
sudo make install

如果编译文件时出错,且屏幕不能完全显示,则在运行编译命令前,输入scripts filenameilename不写则文件名默认为typescript。接着运行编译命令,这样会在目录下生成名为filename的文件,里面记录着编译时候在命令行的输出。这些信息可以帮助你分析出错原因。

December 21, 2006

CHM chmview

Filed under: all, using linux

    the chmview is a useful one I figure…..

     just one smart file-chmview_*****. Stars stands for different explorers.

          if urs is konqueror the *** part would be replaced by chmview_konq

          And for firefox is chmview_fox

                      mozzilla is chmview_moz
perhaps, we could get it from http://forum.ubuntu.org.cn/download.php?id=7309

from http://forum.ubuntu.org.cn/viewtopic.php?t=34482
 

一句话技巧

Filed under: all, linux-ubuntu

http://wiki.ubuntu.org.cn/Ubuntu%E6%8A%80%E5%B7%A7
安装

查看软件xxx安装内容

   

      dpkg -L xxx

查找软件

    *

      apt-cache search 正则表达式

查找文件属于哪个包

    *

      dpkg -S filename
      apt-file search filename

查询软件xxx依赖哪些包

    *

      apt-cache depends xxx

查询软件xxx被哪些包依赖

    *

      apt-cache rdepends xxx

增加一个光盘源

    *

      sudo apt-cdrom add

系统升级

    *

      sudo apt-get update
      sudo apt-get upgrade
      sudo apt-get dist-upgrade

清除所以删除包的残余配置文件

    *

      dpkg -l |grep ^rc|awk ‘{print $2}’ |tr ["\n"] [" "]|sudo xargs dpkg -P  -

编译时缺少h文件的自动处理

    *

      sudo auto-apt run ./configure

查看安装软件时下载包的临时存放目录

    *

      ls /var/cache/apt/archives

备份当前系统安装的所有包的列表

    *

      dpkg –get-selections | grep -v deinstall > ~/somefile

从上面备份的安装包的列表文件恢复所有包

    *

      dpkg –set-selections < ~/somefile
      sudo dselect

清理旧版本的软件缓存

    *

      sudo apt-get autoclean

清理所有软件缓存

    *

      sudo apt-get clean

删除系统不再使用的孤立软件

    *

      sudo apt-get autoremove

系统

查看内核

    *

      uname -a

查看Ubuntu版本

    *

      cat /etc/issue

查看内核加载的模块

    *

      lsmod

查看PCI设备

    *

      lspci

查看USB设备

    *

      lsusb

查看网卡状态

    *

      sudo ethtool eth0

查看CPU信息

    *

      cat /proc/cpuinfo

显示当前硬件信息

    *

      lshw

硬盘

查看硬盘的分区

    *

      sudo fdisk -l

查看IDE硬盘信息

    *

      sudo hdparm -i /dev/hda

查看STAT硬盘信息

    *

      sudo hdparm -I /dev/sda
      或
      sudo apt-get install blktool
      sudo blktool /dev/sda id

查看硬盘剩余空间

    *

      df -h
      df -H

查看目录占用空间

    *

      du -hs 目录名

优盘没法卸载

    *

      sync
      fuser -km /media/usbdisk

内存

查看当前的内存使用情况

    *

      free -m

进程

查看当前有哪些进程

    *

      ps -A

中止一个进程

    *

      kill 进程号(就是ps -A中的第一列的数字)
      或者  killall 进程名

强制中止一个进程(在上面进程中止不成功的时候使用)

    *

      kill -9 进程号
      或者  killall -9 进程名

图形方式中止一个程序

    *

      xkill 出现骷髅标志的鼠标,点击需要中止的程序即可

查看当前进程的实时状况

    *

      top

查看进程打开的文件

    *

      lsof -p

ADSL

配置 ADSL

    *

      sudo pppoeconf

ADSL手工拨号

    *

      sudo pon dsl-provider

激活 ADSL

    *

      sudo /etc/ppp/pppoe_on_boot

断开 ADSL

    *

      sudo poff

查看拨号日志

    *

      sudo plog

网络

根据IP查网卡地址

    *

      arping IP地址

查看当前IP地址

    *

      ifconfig eth0 |awk ‘/inet addr/ {split($2,x,":");print x[2]}’

查看当前外网的IP地址

    *

      w3m -no-cookie -dump www.ip138.com|grep -o ‘[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}’
      w3m -no-cookie -dump ip.loveroot.com|grep -o ‘[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}’

查看当前监听80端口的程序

    *

      lsof -i :80

查看当前网卡的物理地址

    *

      arp -a | awk ‘{print $4}’
      ifconfig eth0 | head -1 | awk ‘{print $5}’

立即让网络支持nat

    *

      sudo echo 1 > /proc/sys/net/ipv4/ip_forward
      sudo iptables -t nat -I POSTROUTING -j MASQUERADE

查看路由信息

    *

      netstat -rn
      sudo route -n

手工增加删除一条路由

    *

      sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1
      sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

修改网卡MAC地址的方法

    *

      sudo ifconfig eth0 down #关闭网卡
      sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE #然后改地址
      sudo ifconfig eth0 up #然后启动网卡

统计当前IP连接的个数

    *

      netstat -na|grep ESTABLISHED|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n
      netstat -na|grep SYN|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n

统计当前20000个IP包中大于100个IP包的IP地址

    *

      tcpdump -tnn -c 20000 -i eth0 | awk -F "." ‘{print $1"."$2"."$3"."$4}’ | sort | uniq -c | sort -nr | awk ‘ $1 > 100 ‘

屏蔽IPV6

    *

      echo "blacklist ipv6" | sudo tee /etc/modprobe.d/blacklist-ipv6

服务

添加一个服务

    *

      sudo update-rc.d 服务名 defaults 99

删除一个服务

    *

      sudo update-rc.d 服务名 remove

临时重启一个服务

    *

      /etc/init.d/服务名 restart

临时关闭一个服务

    *

      /etc/init.d/服务名 stop

临时启动一个服务

    *

      /etc/init.d/服务名 start

设置

配置默认Java使用哪个

    *

      sudo update-alternatives –config java

修改用户资料

    *

      sudo chfn userid

给apt设置代理

    *

      export http_proxy=http://xx.xx.xx.xx:xxx

修改系统登录信息

    *

      sudo vim /etc/motd

中文

转换文件名由GBK为UTF8

    *

      sudo apt-get install convmv
      convmv -r -f cp936 -t utf8 –notest –nosmart *

转换文件内容由GBK为UTF8

    *

      iconv -f gbk -t utf8 $i > newfile

转换 mp3 标签编码

    *

      sudo apt-get install python-mutagen
      find . -iname “
.mp3” -execdir mid3iconv -e GBK {} \;

控制台下显示中文

   

      sudo apt-get install zhcon
      使用时,输入zhcon即可

文件

快速查找某个文件

    *

      whereis filename

    *

      find 目录 -name 文件名

查看文件类型

    *

      file filename

显示xxx文件倒数6行的内容

    *

      tail -n 6 xxx

让tail不停地读地最新的内容

    *

      tail -n 10 -f /var/log/apache2/access.log

查看文件中间的第五行(含)到第10行(含)的内容

    *

      sed -n ‘5,10p’ /var/log/apache2/access.log

查找包含xxx字符串的文件

    *

      grep -l -r xxx .

查找关于xxx的命令

    *

      apropos xxx
      man -k xxx

通过ssh传输文件

    *

      scp -rp /path/filename username@remoteIP:/path  #将本地文件拷贝到服务器上
      scp -rp username@remoteIP:/path/filename /path  #将远程文件从服务器下载到本地

查看某个文件被哪些应用程序读写

    *

      lsof 文件名

把所有文件的后辍由rm改为rmvb

    *

      rename ’s/.rm$/.rmvb/’ *

把所有文件名中的大写改为小写

    *

      rename ‘tr/A-Z/a-z/’ *

删除特殊文件名的文件,如文件名:–help.txt

    *

      rm — –help.txt 或者 rm ./–help.txt

查看当前目录的子目录

    *

       ls -d */. 或 echo */.

将当前目录下最近30天访问过的文件移动到上级back目录

    *

      find . -type f -atime -30 -exec mv {} ../back \;

将当前目录下最近2小时到8小时之内的文件显示出来

    *

      find . -mmin +120 -mmin -480 -exec more {} \;

删除修改时间在30天之前的所有文件

    *

      find . -type f -mtime +30 -mtime -3600 -exec rm {} \;

查找guest用户的以avi或者rm结尾的文件并删除掉

    *

      find . -name ‘
.avi’ -o -name ‘.rm’ -user ‘guest’ -exec rm {} \;

查找的不以java和xml结尾,并7天没有使用的文件删除掉

    *

      find . ! -name *.java ! -name ‘
.xml’ -atime +7 -exec rm {} \;

统计当前文件个数

    *

      ls /usr/bin|wc -w

显示当前目录下2006-01-01的文件名

    *

      ls -l |grep 2006-01-01 |awk ‘{print $8}’

压缩

解压缩 xxx.tar.gz

    *

      tar -zxvf xxx.tar.gz

解压缩 xxx.tar.bz2

    *

      tar -jxvf xxx.tar.bz2

压缩aaa bbb目录为xxx.tar.gz

    *

      tar -zcvf xxx.tar.gz aaa bbb

压缩aaa bbb目录为xxx.tar.bz2

    *

      tar -jcvf xxx.tar.bz2 aaa bbb

Nautilus

显示隐藏文件

    *

      Ctrl+h

显示地址栏

    *

      Ctrl+l

特殊 URI 地址

    *

      * computer:/// - 全部挂载的设备和网络
      * network:/// - 浏览可用的网络
      * burn:/// - 一个刻录 CDs/DVDs 的数据虚拟目录
      * smb:/// - 可用的 windows/samba 网络资源
      * x-nautilus-desktop:/// - 桌面项目和图标
      * file:/// - 本地文件
      * trash:/// - 本地回收站目录
      * ftp:// - FTP 文件夹
      * ssh:// - SSH 文件夹
      * fonts:/// - 字体文件夹,可将字体文件拖到此处以完成安装
      * themes:/// - 系统主题文件夹

查看已安装字体

    *

      在nautilus的地址栏里输入”fonts:///“,就可以查看本机所有的fonts

程序

详细显示程序的运行信息

    *

      strace -f -F -o outfile <cmd>

日期和时间

设置日期

    *

      #date -s mm/dd/yy

设置时间

    *

      #date -s HH:MM

将时间写入CMOS

    *

      hwclock –systohc

读取CMOS时间

    *

      hwclock –hctosys

从服务器上同步时间

    *

      sudo ntpdate time.nist.gov

控制台

不同控制台间切换

    *

      Ctrl + ALT + ←
      Ctrl + ALT + →

指定控制台切换

    *

      Ctrl + ALT + Fn(n:1~7)

控制台下滚屏

    *

      SHIFT + pageUp/pageDown

控制台抓图

    *

      setterm -dump n(n:1~7)

数据库

mysql的数据库存放在地方

    *

      /var/lib/mysql

从mysql中导出和导入数据

    *

      mysqldump 数据库名 > 文件名  #导出数据库
      mysqladmin create 数据库名 #建立数据库
      mysql 数据库名 < 文件名 #导入数据库

忘了mysql的root口令怎么办

    *

      sudo /etc/init.d/mysql stop
      sudo mysqld_safe –skip-grant-tables &
      sudo mysqladmin -u user password ‘newpassword'’
      sudo mysqladmin flush-privileges

修改mysql的root口令

    *

      sudo mysqladmin -uroot -p password ‘你的新密码’

其它

下载网站文档

    *

      wget -r -p -np -k http://www.21cn.com
      · -r:在本机建立服务器端目录结构;
      · -p: 下载显示HTML文件的所有图片;
      · -np:只下载目标站点指定目录及其子目录的内容;
      · -k: 转换非相对链接为相对链接。

如何删除Totem电影播放机的播放历史记录

    *

      rm ~/.recently-used

如何更换gnome程序的快捷键

    *

      点击菜单,鼠标停留在某条菜单上,键盘输入任意你所需要的键,可以是组合键,会立即生效;
      如果要清除该快捷键,请使用backspace

vim 如何显示彩色字符

    *

      sudo vim /etc/vim/vimrc
      找到 " syntax on 的行,去掉前面的注释符号 " 。






















Get free blog up and running in minutes with Blogs.ie
Theme designed by Helga Cleve