2014年5月19日 星期一
Update timezone on Ubuntu Server
1. Check Timezone
$ cat /etc/timezone
Etc/UTC
2. sudo dpkg-reconfigure tzdata
select Asia
select Taipei
Refer: http://www.christopherirish.com/2012/03/21/how-to-set-the-timezone-on-ubuntu-server/
2014年5月14日 星期三
Redmine - Implementation
- System installation
- Basic installation
- standard installation
- Ubuntu Linux(or MS Windows)
- Apache
- MySQL (or Postgre SQL)
- Redmine
- Ruby & Rails
- bitnami installation
- packed installer
- Virtual Machine (*)
- VMWare and VirtualBox are all workable.
- Email setup
- Modify configuration.yml under /opt/bitnami/apps/redmine/htdocs/config
- Fill up the SMTP information (our SMTP server or Email)
- Subversion integration
- Link the exist repository
- Link between Revision and Issue
- Standard link
- Go to specified revision under Repository page
- Add the Issue id releated.
- Subversion message log
- #XXX will be translated to a link refer to the Issud ID XXX
- Issue comment log
- rXXX will be translated to a link refer to the Revision ID XXX.
- System backup/restore
- Backup items
- Redmine database
- For MySQL:
- mysqldump -u root -p XXX bitnami_redmine > sqldump.sql
- Attached files
- rsync -a /opt/bitnami/apps/redmine/htdocs/files /mnt/storage/redmine/files
- Work Flow
- Issue reporting flow
- Bug fix flow
- Reporter creates an issue with “New” state and assign to TaskOwner
- TaskOwner assigns the issue to the Developer (TaskOwner may be the issue owner).
- Developer changes the state to “In Progress” when handling.
- Developer changes the state to “Resolved” or “Rejected” then assigned to Verifier.
- Resolved: Solution provided for verification.
- Verifier changes the state to “Closed” and changes the assignee to NULL if the solution has been verified.
- Verifier changes the state to “ReOpen” and assign back to Developer if the solution is not workable.
- Rejected: Invalid testing procedure or Work As Design issue.
- Verifier changes the assignee to NULL if he/she agree with that.
- Verifier changes the state to “ReOpen” and assign back to Developer if the “Rejected” reason if not acceptable.
- Reporter/Verifier has right to change state from “Closed” to “ReOpen” and assign to Developer if the same issue happens again.
- Project management of a development flow
- TaskOwner Creates ToDo list
- Creates issues with "Feature" category
- Setting constraints between issues.
- Fills up the estimated start/end date and working hours of the issue
- Checks the Gantt Chart
- TaskOwner Create Roadmap
- Create Versions and assign feature issues to specified Version
- Team work (TaskOwner)
- Assign specified issue to Developer
- Update the start/end date of the issue and related issues.
- Checks the Gantt Chart.
Redmine - Project Management & Issue Tracking system
- Issue Tracking system comparison
- Not Free
- JIRA (project management feature as well)
- basecamp (project management feature as well)
- Cost Free
- Trac (project management feature as well)
- Written by Python
- Redmine (project management feature as well)
- Written by Ruby & Rails
- Mantis
- Bugzilla
- Roles in Redmine (For our design flow)
- Manager
- Project administrator (Permission Controller)
- Task Owner
- Main Developer, Version creator.
- Developer
- Issue fixer
- Reporter
- Main issue reporter
- Verifier
- Solution verifier
- Issue state in Redmine (For our design flow)
- New
- In Progress
- Resolved
- Solution provided
- Feedback
- Needs more informaiton
- Closed (issue finished)
- Solution verified
- Rejected (issue finished)
- Due to some reason, the issue has been terminated
- ReOpen
- Issue happens again.
2014年4月13日 星期日
Using VirtualBox raw disk on Win7
- Offline the Physical Disk 0 and clear the read-only flag
- run diskpart.exe
- run "SELECT DISK 0" -- 0 is the physical disk I would like to use.
- run "OFFLINE DISK"
- run "ATTRIBUTES DISK CLEAR READONLY"
- run "ATTRIBUTES DISK" to check the readonly flag has been cleared.
- Create the raw disk in the Virtualbox Host - Ubuntu-Local
- Open up a command prompt.
- cd C:\Program Files\Oracle\VirtualBox
- VBoxManage internalcommands createrawvmdk -filename "G:\Ubuntu.vmdk" -rawdisk "\\.\PhysicalDrive0"
- VBoxManage storageattach "Ubuntu-Local" --storagectl "IDE" --port 0 --device 0 --type hdd --medium G:\Ubuntu.vmdk
(Noted: You are able to create this by VirtualBox GUI, but be sure to run as an administrator when launching VirtualBox GUI) - Run VirtualBox as an administrator
2014年3月25日 星期二
Linux - data transfer between kernel/user space
put_user(x, ptr)
- Write a simple value into user spacex - Value to copy to user spaceptr - Destination address in user spaceget_user(x, ptr)
- Get a simple variable from user spacex - Variable to store resultptr - Source address in user spacecopy_to_user(void __user *to, const void *from, unsigned long n);
- Copy a block of data into user space- copy_from_user(void *to, const void __user *from, unsigned long n);
- Copy a block of data from user space
2014年3月18日 星期二
Android build instruction
- build
- m - build all modules from the top of the tree
- mm - build all of the modules in current directory
- mmm - build all of the modules in the supplied directory
- make
- make systemimage - system.img
- make ramdisk - ramdisk.img
- make userdataimage - userdata.img
- make snod - build system.img quickly without checking the dependency
- misc
- croot - change directory to the top of the tree
- cgrep - grep on all local c/c++ files
- jgrep - grep on all local java files
- resgrep - grep on all local res/*.xml files
- godir - go to directory containing a file.
- printconfig - print the current build configuraiton
2014年3月17日 星期一
Linux init.rc (android)
Trigger sequence
"early-init" -> "init" -> "early-fs" -> "fs" -> "post-fs" -> "early-boot" -> "boot"
At the end of "boot" trigger, start corresponding services
class_start core
class_start main
訂閱:
文章 (Atom)