常用命令
修改 apeche主页:
1.修改默认网站目录
ubuntu8.10下修改apache2的默认文档目录 默认是在/var/www里面
sudo gedit /etc/apache2/sites-enabled/000-default
在文档中找到 DocumentRoot 在后面修改你要放置网页文件的目录。
修改完了 别忘记重启apache2服务器
sudo /etc/init.d/apache2 restart
2.修改默认主页
修改默认主页:一般在 sudo gedit /etc/apache2/apache2.conf里面
找到 DirectoryIndex 在后面添加 如index.php等
不过随apache2的版本不同 文件的放置位置不一样 我在ubuntu8.10下面配置文件就不一样。
别怕 输入这个命令:
grep -iR DirectoryIndex /etc/apache2
查看 DirectoryIndex 在apache2那个文件里面。
修改文件权限
sudo chmod a+rw 777/666 /xxx/xxx/xxx
sudo chmod a+rw -Rv /xxx/xxx/xxx
文件夹建立软链接(用绝对地址)
ln -s 源地址 目的地址
比如我把linux文件系统rootfs_dir软链接到/home/jyg/目录下
ln -s /opt/linux/rootfs_dir /home/jyg/rootfs_dir
ln -s [文件目录] [目标目录]
删除上一个commit:
git reset --hard <commit_id>
git push origin HEAD --force
5.安装deb包
sudo dpkg -i iptux.deb
#安装iptux.deb软件包(其中-i等价于--install)
模块编译:
mmm xxx/xxx/xxx
make snod
重定向日志:
make -j24 2>&1 | tee log.txt
clone项目:
git clone git@192.168.1.9:sp7730.git
git push origin <branch>:<branch>
高通编译:
./cgbuild.sh
cd ~\code\L9011A\qualcomm_8916\common\build
python update_common_info.py
镜像文件
~\code\L9011A\qualcomm_8916\common\build\bin\asic\sparse_images
~\code\L9011A\qualcomm_8916\LINUX\android\out\target\product\msm8916_32_512
fastboot 烧录:
adb reboot devices
adb reboot bootloader
fastboot devices
cd D:\dl9011\dl\s
fastboot flash boot boot.img
fastboot flash recovery recovery.img
fastboot flash system system.img
树形显示log:
git log --graph
显示log的状态:
git log --name-status
终端配置:
vi /home/zhangshaobin/.bashrc
命令历史记录:
vi /home/zhangshaobin/.bash_history
命令记录输出:
history
awk
xargs
|
vim
:进入命令行模式
:%s/src/dest/g dest替换src
:%s/src/dest/
自动补齐 ctrl+p 仅限于当前文件已经使用过的,或者结合ctags实现函数跳转
获取patch文件:
git log --graph --name-status
制作patch diff包:
git show 6764d5e40c87a9e2642f7be622c0130c37db1d61 > name.diff
cat name.diff | grep diff | awk '{print $4}' > tt
删除路径前的a/b:
vi tt
把tt内的文件打包:
cat tt | xargs tar -cavf name.tar.gz
tar -cavf name.tar.gz `cat tt`
##837866## 查版本号
##837868## 查量产版本日期
##83789## 工厂测试
##83781## 工程模式
LOG
1.程序异常退出,uncausedexception (Fatal)
2.程序强制关闭,ForceClosed (简称FC) (Fatal)
3.程序无响应, ApplicationNo Response (ANR)
4.导致的原因 Caused by
find命令
find frameworks/ -name AudioPolicyManagerBase.cpp
find 路径 -name 文件名
修改commit 信息:
git commit --amend
回退提交的某次记录:
git revert commitid
查询ip:
ifconfig ubuntu
MTK EngineerMode ##3646633##
查看提交的id:
git log
git format-patch <commit-id>
adb获取ro路径:
getprop ro.product.partitionpath
从其他分支合入commit修改:
git cherry-pick <commit-id>
git diff --cached > tmp.diff
压缩命令
仅打包,不压缩
tar -cvf /tmp/etc.tar /etc
打包后,以 gzip 压缩
tar -czvf /tmp/etc.tar.gz /etc
打包后,以 bzip2 压缩
tar -cjvf /tmp/etc.tar.bz2 /etc
解压
tar -xzvf /tmp/etc.tar.gz
卫星信号
*#*#2266#*#*
1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用
tar czvf this.tar.gz ./*.txt
2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
tar xzvf this.tar.gz ./
ubuntu 个人文件夹 中文转英文
export LANG=en_US
xdg-user-dirs-gtk-update
设置ubuntu 编译环境
1、安装Android5.1环境编译需要的相关包
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev lib32z1 x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc lib32readline-gplv2-dev
2、安装openJDK
sudo apt-get install default-jre
sudo apt-get install default-jdk
默认安装在usr/lib/jvm下,安装成功了,可以通过java -version进行查看,如要设为默认的,可进行如下步骤
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/javac 300
sudo update-alternatives --config java
设置环境变量(全局)
sudo gedit /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64</span>
export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
export PATH="$JAVA_HOME/bin:$PATH"
添加相应的path路径:
sudo gedit /etc/environment
MAC 禁用dashboard
defaults write com.apple.dashboard mcx-disabled -boolean YES && killall Dock
#############ubuntu 配置 git 服务器 #####################
1.安装git ssh gitolite
2.创建git库账户 sudo adduser --system --group --shell /bin/bash git
3.创建git-admin管理账户的ssh-keygen,并将公钥scp至git账户。
4.在git账户用git-admin的ssh-key初始化 gl-setup xxx.pub
5.在git-admin账户clone管理分支 git clone git@xxx.xxx.xxx.xxx:gitolite-admin
5.1 该项目有两个文件夹conf keydir
5.2 权限设置:conf/gitolite.conf
5.3 项目添加:
5.3.1 修改gitolite.conf 添加repo,拷贝pubkey至keydir, git add . && git push origin master
5.3.2 mkdir xxx,git init,git remote add origin master git@xxx.xxx.xxx.xxx:xxx.git,git push origin master
5.4 添加用户:
5.4.1 sudo adduser xxxx
5.4.2 passwd xxxx
5.4.3 登入su - xxxx,生成秘钥 ssh-keygen -t rsa -C ""
5.4.4 将秘钥拷贝到git-admin用户下,提交gitolite-admin
6.添加git库
6.1 用gitadmin账户修改gitolite-admin/config/gitolite.config,添加
repo proja
RW+ =[user]
repo projb
RW+ =@group
@group =[user1] [user2] ...
6.2 用gitadmin账户add,commit,push
7.安装gitweb
7.1 sudo apt-get install gitweb hightlight
7.2 在目录/etc/apache2/sites-available/ 创建gitweb.conf
<Directory "/usr/share/gitweb">
Options +FollowSymLinks +ExecCGI
AddHandler cgi-script .cgi
DirectoryIndex gitweb.cgi index.cgi
Order allow,deny
Allow from all
</Directory>
7.3 修改/etc/gitweb.conf中的$projectroot
7.4 如过localhost/gitweb.cgi不显示项目,需修改项目权限为755
ubuntu vi编辑模式,backspace,上,下,左,右,无效的解决方法
1.重新安装VIM
2.在.bashrc中添加
set nocompatible
set backspace=2
SSH免登陆服务器配置
1.server端在~/.ssh/目录创建authorized_keys文件,设置权限600
2.user端ssh-keygen -t rsa -C "mail"生成key,将pub key 用 scp xxx.pub server@xxx.xxx.xxx.xxx:.ssh/至服务端
3.user端在~/.ssh/配置config文件
Host xxx.xxx.xxx.xxx
HostName xxx.xxx.xxx.xxx
User xxx
IdentityFile ~/.ssh/xxx (此处为私钥)
4.known_hosts内保存的为server地址
给用户添加root权限,修改/etc/group
从.git创建git初始仓库
git clone --bare -l /home/proj/.git /pub/scm/proj.git
修改ubuntu ip:修改/etc/network/interfaces
添加固定ip:
auto eth0
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask 255.255.255.0
gateway xxx.xxx.xxx.xxx
修改ubuntu 系统语言
修改/etc/default/locale
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"
locale-gen -en_US:en
中文可安装
sudo apt-get install zhcon
######## 配置samba服务 ###############
安装samba
sudo apt-get install samba smbfs
sudo useradd [myname]
sudo passwd [myname]
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a [myname] 新增
sudo smbpasswd -x [myname] 删除
新增网络使用者的帐号:
sudo gedit /etc/samba/smbusers
[myname]= "networkusername"
修改/etc/samba/smb.conf
添加
[share]
comment = Ubuntu File Server Share
path = /home/share
available = yes
browseable = yes
guest ok = yes
read only = no
public = yes
writable = yes
;valid users = [myname]
create mask = 0755
directory mask =0755
force user =nobody
force group = nogroup
修改workgroup
workgroup = [workgroup](用户组)
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
保存并关闭配置文件,在终端中输入如下命令
sudo testparm
重新启动服务
sudo /etc/init.d/samba restart
查看磁盘大小
df -hl
du -sm
下面是相关命令的解释:
df -hl 查看磁盘剩余空间
df -h 查看每个根路径的分区大小
du -sh [目录名] 返回该目录的大小
du -sm [文件夹] 返回该文件夹总M数
更多功能可以输入一下命令查看:
df --help
du --help
[root@bsso yayu]# du -h --max-depth=1 work/testing
27M work/testing/logs
35M work/testing
[root@bsso yayu]# du -h --max-depth=1 work/testing/*
8.0K work/testing/func.php
27M work/testing/logs
8.1M work/testing/nohup.out
8.0K work/testing/testing_c.php
12K work/testing/testing_func_reg.php
8.0K work/testing/testing_get.php
8.0K work/testing/testing_g.php
8.0K work/testing/var.php
[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/
27M work/testing/logs/
[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/*
24K work/testing/logs/errdate.log_show.log
8.0K work/testing/logs/pertime_show.log
27M work/testing/logs/show.log
安装流媒体服务Darwin Streaming Server
下载软件http://dss.macosforge.org/downloads/DarwinStreamingSrvr5.5.5-Linux.tar.gz
修改
if [ $INSTALL_OS = "Linux" ]; then
/usr/sbin/useradd -M qtss > /dev/null 2>&1
else
/usr/sbin/useradd qtss > /dev/null 2>&1
fi
将-M修改成-m
streamingadminserver.pl运行服务
rtsp://127.0.0.1/sample_100kbit.mp4
DSS 支持的视频文件需要特别的工具对视频 hint 一下,然后就可以在 RTSP 上面用,请下载 mp4box http://www.videohelp.com/tools/mp4box 使用,mp4box同时支持mp4和3gp。
下载到到解压出后会有个叫 mp4box.exe ,用它在命令行下面运行
C:\mp4box sample.mp4 -hint
ubuntu 安装mp4box
git clone https://github.com/gpac/gpac.git
cd gpac
git pull
./configure --static-mp4box --use-zlib=no
make -j4
sudo make install
查进程
ps aux | grep -i xxx
查端口
sudo netstat -ntulp | grep xxx
vs2010代码格式化快捷键ctrl+k,f 引用alt+.
windows 拷贝命令
xcopy /e /y C:\Users\Administrator\Documents F:\Save
del/e/q C:\Users\Administrator\Documents\xxx.xxx
selinux 权限问题
查看kerner log
adb shell
cat /proc/kmsg | grep "avc"
例:
scontext=u:r:system_app:s0 tcontext=u:object_r:media_data_file:s0 tclass=dir permissive=0
system_app media_data_file dir
修改/external/sepolicy/下文件
system_app.te
添加allow system_app media_data_file:dir open;
Git将本地仓库上传到远程仓库:
1.本地创建项目xxx git init初始化
2.远程创建项目xxx git --bare init初始化
3.git remote add origin git://x.x.x.x/xxx.git
4.git push origin master
windows映射远程盘符到本地盘符
e.g. net use Y: \\192.168.10.2\zhangshaobin 123123 /user:zhangshaobin
启动network
netsh wlan start hostednetwork
vmliux(out\target\product\sp9832a_3h10_volte\obj\KERNEL\vmliux)
将tag push到远程仓库
git push --tags
android 7.0 编译
编译办法:
比如说编译sp7731c_1h10_32v4_native-user
执行如下命令:
source build/envsetup.sh
lunch sp7731c_1h10_32v4_native-user
kheader
IDH_PROP_ZIP=<oprietories-sp7731c_1h10_32v4_native-user.zip的路径> make -jN
IDH_PROP_ZIP=proprietories-sp9832a_2h11_4mvoltesea_tee-user.zip make -j32
360 查看apk版本路径
adb shell "dumpsys package com.qiku.music | grep -rn versionName"
修改MySQL varchar类型字段的排序规则
SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, '(', CHARACTER_MAXIMUM_LENGTH, ') CHARACTER SET UTF8 COLLATE utf8_unicode_ci', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END), ';')
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'db_dfsl'
AND DATA_TYPE = 'varchar'
AND
(
CHARACTER_SET_NAME != 'utf8'
OR
COLLATION_NAME != 'utf8_unicode_ci'
);
database需要改成实际数据库名字
编译去掉OTA编译
diff --git a/alps/build/core/main.mk b/alps/build/core/main.mk
index 6d1c8a3..168dd27 100755
--- a/alps/build/core/main.mk
+++ b/alps/build/core/main.mk
@@ -964,8 +964,7 @@ droidcore: files \
$(INSTALLED_CACHEIMAGE_TARGET) \
$(INSTALLED_VENDORIMAGE_TARGET) \
$(INSTALLED_FILES_FILE) \
- $(INSTALLED_FILES_FILE_VENDOR) \
- $(BUILT_TARGET_FILES_PACKAGE)
+ $(INSTALLED_FILES_FILE_VENDOR)
备份ubuntu系统:
sudo tar -cvpzf sysbackup.tgz --exclude=/proc --exclude=/lost+found --exclude=/home/code/sysbackup.tgz --exclude=/home/code/repositories_20180416.tgz --exclude=/mnt --exclude=/repositories --exclude=/sys --exclude=/media /
tar 是用来备份的程序
c - 新建一个备份文档
v - 详细模式, tar程序将在屏幕上实时输出所有信息。
p - 保存许可,并应用到所有文件。
z - 采用‘gzip’压缩备份文件,以减小备份文件体积。
f - 说明备份文件存放的路径, Ubuntu.tgz 是本例子中备份文件名。
“/”是我们要备份的目录,在这里是整个文件系统。
在档案文件名“backup.tgz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,例如“/proc”、“/lost+ found”、“/sys”。当然,“backup.tgz”这个档案文件本身必须排除在外,否则你可能会得到一些超出常理的结果。如果不把“/mnt”排除在外,那么挂载在“/mnt”上的其它分区也会被备份。另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西, 必须把“/media”也排除在外.
备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。
在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。
恢复ubuntu系统:
如果原来的Ubuntu系统已经崩溃,无法进入。则可以使用Ubuntu安装U盘(live USB)进入试用Ubuntu界面。
切换到root用户,找到之前Ubuntu系统的根目录所在磁盘分区(一般电脑上的磁盘分区(假设分区名称为sdaX)均可以在当前Ubuntu系统的根目录下的media目录下(即/media)找到。目录通常为当前根目录下 cd /media/磁盘名称/分区名称)。进入该分区,输入以下指令来删除该根目录下的所有文件:
sudo rm -rf /media/磁盘名称/分区名称*
将备份文件”backup.tgz”拷入该分区;
sudo cp -i backup.tgz /media/磁盘名/分区名sdaX
进入分区并将压缩文件解压缩,参数x是告诉tar程序解压缩备份文件。
sudo tar -xvpfz backup.tgz
重新创建那些在备份时被排除在外的目录;
sudo mkdir proc lost+found mnt sys media
或者这样:
mkdir proc
mkdir lost+found
mkdir mnt
mkdir sys
数据库备份/恢复命令
mysqldump -h localhost -uroot -p databasename > ./backupfile.sql 备份
mysql -h localhost -uroot -p databasename < backupfile.sql 恢复
备份MySQL数据库的命令
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql
备份MySQL数据库为带删除表的格式
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql
直接将MySQL数据库压缩备份
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz
备份MySQL数据库某个(些)表
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
同时备份多个MySQL数据库
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
仅仅备份数据库结构
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
备份服务器上所有数据库
mysqldump –all-databases > allbackupfile.sql
还原MySQL数据库的命令
mysql -hhostname -uusername -ppassword databasename < backupfile.sql
还原压缩的MySQL数据库
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename
将数据库转移到新服务器
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
gerrit git review默认配置
apt-get install git-review
vi /etc/git-review/git-review.conf
[updates]
check = false
[gerrit]
host = 192.168.10.3
port = 29418
defaultbranch = master
defaultremote = origin