유용한 서버 명령어

다음은 Easy Redmine 서버 관리자가 애플리케이션의 공통 백엔드 관리에 사용할 명령 목록입니다. 모든 Linux 배포 및 구성에 대한 완전하고 상세한 가이드를 제공할 수는 없지만, 이 문서가 합리적인 범위에서 가이드를 제공 할 수 있기를 바랍니다. 

환경 및 구성에 대한 경험에서 나온 피드백을 환영합니다. 따라서 동종 관리자를 위한 몇 가지 팁이 있다고 생각되면 지원에 알려주세요. 확인(및 귀하의 동의) 후 여기에 게시할 수 있습니다.

상황 명령어 결과 참고
애플리케이션이 시작되지 않음
  • sudo service unicorn restart
  • sudo service apache2 restart
  • sudo service nginx restart
  • sudo service easy restart
  • systemctl restart puma@APPLICATION_NAME.service
  • unicorn 재시작
  • apache 재시작
  • nginx 재시작
  • older VMs
  • newer VMs (from 03/2019)
웹서버에 따라 선택 실행
마이그레이션 오류 (내부 오류 발생 할 수 있음) bundle exec rake db:migrate redmine:plugins:migrate RAILS_ENV=production redmine 및 redmine plugins 마이그레이션 플러그인들은 /plugins 디렉토리 하위에 위치
마이그레이션 오류 (내부 오류 발생 할 수 있음) bundle exec rake easyproject:install RAILS_ENV=production Easy Redmine 설치 DB 마이그레이션 후에 실행. 수동 설치의 경우 설치를 업데이트(나중에 서버 재시작)
easy 플러그인 삭제 bundle exec rake easyproject:uninstall:all_plugins RAILS_ENV=production uninstalls/unmigrates easy plugins (with prompt) 플러그인 위치 : /plugins/easyproject/easy_plugins  자세히
redmine 플러그인 삭제 bundle exec rake redmine:plugins:migrate NAME=easy_gantt VERSION=0 uninstalls/unimgrates plugins 플러그인 위치 :  /plugins
종속성 문제 bundle update gems 업데이트  
물리적 서버 재시작 reboot 물리적 서버 재시작  
DB 연결 안됨 systemctl restart mysql / systemctl restart postgresql DB 서버 재시작  
Production log 모니터링 tail -f  [redmine root]/log/production.log 애플리케이션 로그 실시간 모니터링 내부 오류나 기타 기능 장애를 추적하는 경우 유용
Rails 콘솔

rails c
or
rails c -e production
or
RAILS_ENV=production rails c

rails 콘솔 실행
ruby 명령어의 경우,  앱을 시작할 수 있는지 확인
서버에 대한 권한 부족(일반) sudo chown -R [linux user]:[linux group] [redmine root] 올바른 그룹 및 소유권 설정 Easy Redmine의 올바른 사용자와 폴더를 추가해야 함
서버에 대한 권한 부족(VM) chown easy:easy -R $(eval echo "~easy") 올바른 그룹 및 소유권 설정 Easy Software에서 만든 VM
서버에 대한 권한 부족 sudo chmod -R 775 [redmine‘s root] 올바른 권한 추가 다른 레벨은 여기
대량 업데이트 (rails 예제)

rails c production
ActiveRecord::Base.connection.execute(“update issues set estimated_hours=5 where estimated_hours >= 5“)
exit

사용자 지정 sql 쿼리 실행(rails 콘솔) 위험책임! 사용자 지정 쿼리에 주의, 응용 프로그램의 GUI서 금지되거나 호환되지 않는 변경을 유발 할 수 있음. 심각한 결과와 함께 응용 프로그램의 오작동을 초래 할 수 있음.
대량 업데이트 (mysql 예제)

mysql -u user -p password -h host
mysql
show databases;
use databasename;
update issues set estimated_hours=5 where estimated_hours >= 5;

  • 사용자 지정 sql 쿼리 실행(mysql 콘솔)
  • 존재하는 db 목록
  • 위험책임! 하단 참고
  • Easy Software 의 VMs은 자격증명이 필요없음
backups
  • mysqldump -u user -ppassword -h host databasename > mydump.sql
  • bundle exec rake db:drop db:create RAILS_ENV=production
  • mysql -u user -ppassword -h host databasename < mydump.sql
  • db dump
  • database 재생성
  • db import
MySQL의 경우
Project 구조가 어긋남 rails c production
Project.rebuild_tree!
exit
프로젝트 구조 재구성 - 상위,하위 구조 수정
  • DB 마이그레이션 후에 발행 할 수 있음. 프로젝트 구조(URL: /projects)가 이동경로와 일치 하지 않습니다. (하위 프로젝트에 액세스 할 때)
  • 자세한 설명은 여기.
다른 엔터티의 구조 재지정 (예) Issue.rebuild_tree!;
IssueCategory.rebuild_tree!;
EasyKnowledgeCategory.rebuild_tree!
일감 재구성
일감카테고리 재구성
지식관리 카테고리 재구성
 
DB 환경설정 파일 (일반) cat [redmine root]/config/database.yml db 환경설정  
email 환경설정 (일반) cat [redmine root]/config/configuration.yml email 환경설정  
CRON 확인/수정  (자동작업) crontab -e crontab 수정 추가 정보는 여기
자원관리 데이터 누락 bundle exec rake easy_gantt_resources:reallocate_resources RAILS_ENV=production 시간 할당 재계산 DB 마이그레이션 후나, 자원관리를 설치한 경우 필요할 수 있음.
정보 (서버) top 프로세스 목록과 시스템 정보 linux 명령어
디스크 공간 부족 df 장치의 여유공간 확인 linux 명령어
Easy DMS 캐시 사용되지 않음 ruby [redmine root]/plugins/redmine_dmsf/extra/xapian_indexer.rb   DMS 사용자만 해당, cron으로 실행해야 함
텍스트 편집을 textile에서 HTML로 전환 bundle exec rake easyproject:textile:migrate_all RAILS_ENV=production 텍스트 형식이 textile에서 HTML로 마이그레이션 됨  
새로운 통화 적용 bundle exec rake easyproject:currency_update_tables RAILS_ENV=production

시스템 재시작 후 통화 활성화 됨

 
새로운 통화 적용 후 재계산 bundle exec rake easyproject:currency_recalculate_all RAILS_ENV=production 기존 항목이 새로운 통화로 재계산됨  
인건비 수동 재계산 bundle exec rake easyproject:easy_money:recalculate_time_entry_expenses_on_project RAILS_ENV=production 인건비는 현재 임율 및 임율계층에 따라 재계산 됨 명령 후 프로젝트 ID를 입력, 입력하지 않으면 모든 프로젝트에 대해서 재계산되며, 이 경우 시간이 오래 걸리고 모든 사용자의 실행 속도가 느려질 수 있는 점을 감안
SQLite 에서 MySQL 로 전환

Download the tool sqlite3-to-mysql.py
sqlite3 SQLITE3_DUMP_FILE.sqlite3 .dump | python sqlite3-to-mysql.py | mysql -u root -p sqlite3_convert

  전체 사용 설명서는 여기.

중요: 이 명령은 권한있는 서버 관리자가 사용해야 하며, 각 작업의 최종 위험과 영향을 인식해야 합니다. 명령의 잘못된 사용으로 인한 시스템 오류는 명령을 실행하는 서버 관리자의 책임입니다. Easy Software의 지원이 제한적일 수 있습니다. 서버 지원 요청(제공 가능한 경우)은 항상 실제 시간당 요금으로 청구됩니다.

Easy Redmine 30일 무료 체험

사용자 지역에서 일일 백업, SSL 보안, 모든기능 사용