Làm cách nào để kiểm tra những gì đang ngăn MBP tắt / khởi động lại một cách duyên dáng và khắc phục nó? [Bây giờ với các mục nhật ký]


12

Và hy vọng bản chỉnh sửa thực sự cuối cùng: Sau khi nâng cấp lên Mountain Lion, vấn đề dường như đã được khắc phục, hy vọng là vĩnh viễn.

Chỉnh sửa cuối cùng: Vấn đề không xảy ra mọi lúc, đôi khi tôi phải chờ vài ngày để nó xảy ra. Vì vậy, rất khó để kiểm tra trong các điều kiện khác nhau (ví dụ như chế độ an toàn hoặc với một số phần mềm bị tắt) và tôi đã quyết định rằng không đáng để dành nhiều ngày để theo dõi các điều kiện khác nhau để khắc phục điều này. Đề xuất của Graham Perrin là hữu ích nhất để tìm thông tin cụ thể về các vấn đề khởi động lại / khởi động lại, không được tìm thấy trong nhật ký mục đích chung.

Một số mục nhật ký nằm trong Chỉnh sửa ở phía dưới:

MacBook Pro 15 inch giữa năm 2010, chạy OS X 10.7.4. Đôi khi, khi cố gắng khởi động lại hoặc tắt máy, nó sẽ không hoạt động - màn hình chuyển sang màu xám, bánh xe quay hiển thị, nhưng máy không tắt nguồn nên sau vài phút tôi phải tắt máy bằng cách nhấn nguồn cái nút.

Nó không xảy ra mọi lúc và tôi không thể liên quan đến bất kỳ phần mềm nào được sử dụng trong phiên có vấn đề. Trong thực tế, khi kiểm tra điều này, đôi khi điều này sẽ xảy ra khi tôi cố gắng tắt máy ngay sau khi khởi động nó.

Làm thế nào để kiểm tra những gì đang ngăn chặn tắt / khởi động lại duyên dáng? Tôi giả sử rằng tôi phải xem trong một số tệp nhật ký, nhưng tôi không chắc chắn cái nào và cái gì cần tìm.

Chỉnh sửa: Đã thêm cài đặt khởi động / tắt máy dài dòng trong nvram theo đề xuất của Graham Perrin, và cuối cùng máy bị kẹt khi khởi động lại. Tôi thấy một số mục dài dòng trên màn hình và sau khi khởi động lại đã tìm thấy chúng trong /var/log/launchd-shutdown.log. Dường như WindowServer có thể có liên quan đến nó. Dưới đây là phần cuối của tệp nhật ký đó với 3 cột đầu tiên bị xóa (cột đầu tiên có số nguyên tăng dần, cột thứ hai có các mục "1" và thứ ba - "com.apple.launchd"):

234 com.apple.WindowServer   Dispatching kevent callback.
234 com.apple.WindowServer   Job has not died after being killed 2 seconds ago. Simulating exit.
234 com.apple.WindowServer   Dispatching kevent callback.
234 com.apple.WindowServer   EVFILT_PROC event for job.
1 com.apple.launchd         KEVENT[0]: udata = 0x107827a90 data = 0x0 ident = 234 filter = EVFILT_PROC flags= 0x0 fflags = NOTE_EXIT
234 com.apple.WindowServer   Reaping
234 com.apple.WindowServer   Simulated exit: <rdar://problem/9359725>
234 com.apple.WindowServer   Exited 22.016701 seconds after the first signal was sent
0 com.apple.WindowServer     Exited while shutdown in progress. Processes remaining: 0/0
0 com.apple.WindowServer   Job was last to exit during shutdown of: System.
0 com.apple.WindowServer    Total rusage: utime 0.000000 stime 0.000000 maxrss 0 ixrss 0 idrss 0 isrss 0 minflt 0 majflt 0 nswap 0 inblock 0 oublock 0 msgsnd 0 msgrcv 0 nsignals 0 nvcsw 0 nivcsw 0
0 com.apple.WindowServer  Closing receive right for com.apple.windowserver.active
0 com.apple.WindowServer  Mach service deleted: com.apple.windowserver.active
0 com.apple.WindowServer  Closing receive right for com.apple.windowserver
0 com.apple.WindowServer   Mach service deleted: com.apple.windowserver
0 com.apple.WindowServer    Removed
1 com.apple.launchd      System: No submanagers left.
1 com.apple.launchd    System: Removing.
1 com.apple.launchd   System: Removing job manager.
1 com.apple.launchd    System: Userspace shutdown finished at: Wed Aug  1 08:53:12 2012
1 com.apple.launchd   System: Userspace shutdown took approximately 22 seconds.
1 com.apple.launchd   VM statistics (now - orig): Free: 28472 Active: -21833 Inactive: -1038 Reactivations: 0 PageIns: 25 PageOuts: 0 Faults: 1654 COW-Faults: 335 Purgeable: -849 Purges: 0
1 com.apple.launchd   System: Stray process at shutdown: PID 234 PPID 1 PGID 234 WindowServer
1 com.apple.launchd       System: About to call: reboot(RB_HALT).

Kết nối bất kỳ đĩa được sử dụng thông thường, thực hiện bất kỳ kết nối máy chủ tệp thường sử dụng, sau đó xin vui lòng chạy mountlệnh. Bao gồm kết quả trong câu hỏi của bạn có thể giúp thu hẹp mọi thứ.
Graham Perrin

Không có kết nối máy chủ hoặc tệp máy chủ thường được sử dụng, tôi đang kết nối ổ đĩa USB vài lần mỗi tháng, nhưng tôi không có bất kỳ thử nào ngay bây giờ. Tôi đã chạy 'mount' mà không có bất kỳ đĩa nào được kết nối, nhưng không có gì tanh.
lupincho

Xin vui lòng, phiên bản nào của Little Snitch? Là vấn đề có thể tái tạo với khởi động an toàn, hoặc không có Little Snitch?
Graham Perrin

LS ổn định mới nhất (2.5.3), không phải là bản xem trước của phiên bản 3. Nhưng điều này cũng xảy ra với các phiên bản 1-2 trước đó. Tôi không thể kiểm tra hợp lý việc này mà không có LS hoặc ở chế độ an toàn, vì điều này không xảy ra mọi lúc, đôi khi phải mất nhiều ngày để xảy ra và tôi không thể chạy máy như thế trong thời gian dài. Tôi đoán, tôi sẽ sống với điều này ngay bây giờ, và sẽ nâng cấp lên Mountain Lion và xem điều gì sẽ xảy ra. Nhưng đề xuất của bạn là hữu ích và cụ thể nhất, do đó bạn nhận được tiền thưởng.
lupincho

Cảm ơn! Dựa trên kế hoạch nâng cấp HĐH của bạn, tôi đã thêm một phần vào câu trả lời của mình. Các câu trả lời ngắn nhất là bây giờ mà so với 10.7.4, 10,8 nên được cả hai (a) ít có khả năng đòi hỏi lực lượng; và (b) dễ chẩn đoán hơn trong trường hợp dùng lực.
Graham Perrin

Câu trả lời:


6

Bổ sung các câu trả lời khác


Quan sát chế độ dài dòng trong khi khởi động lại hoặc tắt

Mac OS X: Cách khởi động ở chế độ một người dùng hoặc dài dòng

- nếu bạn bắt đầu ở chế độ dài, thì khởi động lại hoặc tắt sẽ tương tự như vậy.

Gợi ý: nếu mọi thứ trong chế độ dài dòng dường như không tiến triển vượt quá một điểm nhất định, có thể cho phép năm phút trước:

  • buộc khởi động lại (Command-Control-power); hoặc là
  • buộc phải tắt máy (nhấn và giữ phím nguồn).

Nếu khởi động lại bắt buộc không thành công, đó có thể là một đầu mối khác cho nguyên nhân của (các) vấn đề.

Một câu hỏi liên quan, mặc dù không hướng đến vấn đề: Bất cứ ai cũng có thể giải thích các tin nhắn tắt máy dài dòng?

Trường hợp định hướng vấn đề ở đây sẽ dễ giải quyết hơn đối với lupincho. Ít lá trà hơn.

Để bắt đầu ở chế độ dài dòng mà không cần nhập Command-V

Một ưu tiên có thể được lưu trữ trong NVRAM. Nhập lệnh sau trong Terminal và chuẩn bị nhập mật khẩu quản trị viên của bạn:

sudo nvram boot-args="-v"

Sự khởi đầu tiếp theo của hệ thống sẽ dài dòng.


sysdiagnose

Trước mỗi lần khởi động lại hoặc tắt máy, trong Terminal:

sudo sysdiagnose

Nó tốn thời gian, nhưng bạn không cần điều tra kết quả của tất cả các lần chạy. Chỉ chú ý nếu có vấn đề phát sinh.

Đối với một trường hợp như lupincho:

  • việc chạy sysdiagnosecó thể tiết lộ một vấn đề trước khi khởi động lại hoặc tắt
  • kết quả cuối cùng của sysdiagnose có thể quan tâm sau một buộc khởi động lại hoặc tắt.

Cụ thể hơn: nếu một bước chạy sysdiagnosekhông tiến triển vượt quá một điểm nhất định, biết rằng điểm đó có thể giúp đạt được ý nghĩa của vấn đề tiềm ẩn.

Trong quá trình chạy, bạn có thể sử dụng tổ hợp phím sau, lặp đi lặp lại, để xem liệu mọi thứ có đang tiến triển không:

  • Kiểm soát-T

Đối với allmemoryphần sysdiagnosethường lệ, ước tính hai phút của Apple có thể không chính xác. Kiên nhẫn.

Nếu bạn nghi ngờ rằng sysdiagnosekhông tiến triển vượt quá một điểm nhất định, thì hãy khóa:

  • Kiểm soát-C

Nếu việc sử dụng Control-C lặp đi lặp lại không thành công sysdiagnose, thì (theo kinh nghiệm của tôi với Mountain Lion), gần như chắc chắn rằng một nỗ lực khởi động lại hoặc tắt hệ điều hành sẽ thất bại.


Giám sát tắt máy

Trong Finder, đi đến:

/private/var/log/shutdown_monitor.log

Tệp này thường trống, nhưng có thể chứa các mục quan tâm sau khi tắt máy có vấn đề. (Tôi có ít kinh nghiệm trong lĩnh vực này.)

Nếu quá trình đi lạc duy nhất khi tắt máy là WindowServer

Không có gì bất thường khi có các quá trình đi lạc khi tắt máy. Một người đi lạc có thể có vấn đề chỉ khi nó không bị giết.

Nếu bạn nghi ngờ rằng WindowServer không bị giết và việc đi lạc cụ thể này là nguyên nhân dẫn đến lỗi tắt máy: hãy tự hỏi liệu có phần mềm bên thứ ba nào sử dụng quy trình WindowServer không chuẩn.

Nhìn nhanh về chế độ xem GrabFS của WindowServer trên Mountain Lion, với hai màn hình:

nhập mô tả hình ảnh ở đây

Nếu Lion giống nhau, thì cảm giác ruột của tôi là nguyên nhân gây ra lỗi tắt máy nằm ngoài WindowServer.


Đoán, dựa trên kết quả của launchctl

Trong khi máy đang chạy bình thường, đáp ứng gì với lệnh sau?

sudo launchctl list | grep  --invert-match com.apple

Tự hỏi liệu có phần mềm không phải của Apple có liên quan đến vấn đề này không. Phần mềm chống vi-rút, chống phần mềm độc hại?


Sau khi nâng cấp từ Lion lên Mountain Lion

Nhằm mục đích cho:

/private/var/log/com.apple.launchd/launchd-shutdown.system.log

Có vẻ như mặc định là một bản ghi cho mỗi lần tắt, tối đa là hai bản ghi nên cũng có:

/private/var/log/com.apple.launchd/launchd-shutdown.system.log.1

Sau bất kỳ khởi động lại bắt buộc hoặc buộc phải tắt, bạn có thể chọn để dành một bản sao gần đây nhất của hai. Nếu bắt buộc phải có nhiều hơn một lần, bạn có thể so sánh các tệp để xem liệu một mẫu có xuất hiện hay không.

Nói chung là

Đừng loại trừ khả năng xảy ra sự cố với phần mềm của bên thứ ba, thậm chí là phát hành chất lượng. Little Snitch có thể được viết tốt và được tôn trọng rộng rãi nhưng:

  • khi các vấn đề như câu hỏi trong câu hỏi này trở nên mở rộng hoặc quá khó hiểu, bất kỳ phần mở rộng hạt nhân không phải của Apple nào cũng đáng được chú ý.

Tôi đã thử nghiệm Build 12A269 của OS X 10.8 trong khoảng hai tuần trước khi phát hành, đặc biệt chú ý đến việc tắt các hành vi trong các tình huống khó khăn . Mặc dù tôi chưa xem bất kỳ video nào từ WWDC 2012, tôi có cảm giác rằng Apple đã làm việc rất chăm chỉ để ngăn chặn sự cần thiết của vũ lực trong tất cả các tình huống khó khăn nhất.

Dựa trên câu trả lời của David DelMonte

Ít nhất là trên Mountain Lion, tôi thấy tải của Little Snitch 3.0 Preview 2 (3857) rất sớm - trước khi bắt đầu đăng nhập tắt máy . Nếu những thứ liên quan đến KEXT này tương tự muộn về thời gian tắt máy , thì có thể một vấn đề sẽ không rõ ràng trong các tệp nhật ký thông thường trên đĩa.


Nếu bạn phát hiện ra nguyên nhân của vấn đề - với Sư tử hoặc Sư tử núi - tôi sẽ rất vui được biết.

Trong khi đó, với lời cảm ơn lớn cho tiền thưởng, một ý nghĩ kết thúc:

kextstat -l | grep --invert-match com.apple

1
Cảm ơn, đã bật chế độ dài dòng bằng lệnh nvram. Tuy nhiên, ngay cả sau khi khởi động lại, không có shutdown_monitor.log. Có các tập tin launchd-shutdown.log và launchd-shutdown.log.1 (có vẻ như chỉ giữ lại hiện tại và 1 trước đó, không giống như các bản ghi khác), nhưng chúng đã ở đó trước đó và tôi đã xem chúng trước đó. Tôi sẽ kiểm tra các thông báo tắt chế độ dài dòng, hy vọng tôi có thể thấy nơi tắt / khởi động lại bị kẹt.
lupincho

Nếu một vấn đề tái diễn, chụp ảnh hoặc hai trong số các chi tiết. Đừng lo lắng quá nhiều về sự tập trung, v.v., tôi sẽ nhận ra những điểm chính ngay cả với một số mờ. Tôi có linh cảm về những gì sai trong trường hợp của bạn, phần mới sysdiagnosecủa câu trả lời này có thể phù hợp nhất.
Graham Perrin

Lưu ý bên lề: ở đây với Mountain Lion tôi có /private/var/log/kernel-shutdown.log(với thông tin hữu ích cho tôi) nhưng không /private/var/log/launchd-shutdown.log.
Graham Perrin

Cảm ơn gợi ý 'sysdiagnose', chỉ cần chạy nó, đã ổn, sẽ thử lại. Như bạn đã nói, phải mất một thời gian, nếu không tôi có thể đặt nó vào hook logout để chạy mọi lúc.
lupincho

Tự động hóa rất hấp dẫn, nhưng tôi không nên tạo sysdiagnosemột mục đăng xuất. Trong trường hợp cạnh, tự động hóa có thể làm cho một tình huống khó khăn tồi tệ hơn.
Graham Perrin

2

Chuyển đến Ứng dụng -> Tiện ích và mở Bảng điều khiển

Hãy xem tệp system.log, bạn có thể tìm thấy thứ gì đó ở đó.


Tôi không thấy có gì lạ ở đó.
lupincho

Câu trả lời tốt của Revolver. +1. Bạn có thể sao chép và dán vào câu hỏi của mình không, các mục system.log mà bạn thấy sau khi bạn yêu cầu tắt máy - và có thể vài phút trước khi .. Dán chúng vào câu hỏi ban đầu của bạn ..
David DelMonte

Tôi đã đi qua system.log nhiều lần trong quá khứ và không tìm thấy điều gì bất thường so với tắt máy duyên dáng. Sẽ đợi lần sau khi điều này xảy ra và sẽ kiểm tra lại nhật ký. Tôi nên làm rõ rằng tôi biết về nhật ký mục đích chung, sẽ cập nhật điều đó trong bài viết gốc của tôi.
lupincho

2

pmset -g assertions được tóm tắt các xác nhận quyền lực:

$ pmset -g assertions
Assertion status system-wide:
   PreventUserIdleDisplaySleep             0
   CPUBoundAssertion                       0
   DisableInflow                           0
   ChargeInhibit                           0
   PreventSystemSleep                      0
   PreventUserIdleSystemSleep              1
   ExternalMedia                           1
   DisableLowPowerBatteryWarnings          0
   EnableIdleSleep                         1
   NoRealPowerSources_debug                0
   UserIsActive                            0
   ApplePushServiceTask                    0

Listed by owning process:
  pid 153: [0x00000099012c023b] PreventUserIdleSystemSleep named: "com.apple.audio.'AppleUSBAudioEngine:Apple Inc.:Display Audio:15261930:2,1'.noidlesleep" 
  pid 19: [0x00000013012c0235] ExternalMedia named: "com.apple.powermanagement.externalmediamounted" 

Bạn có thể thấy đường dẫn của một quá trình với ps up $pid:

$ ps up 153
USER          PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
_coreaudiod   153   0.0  0.2  2475000   6740   ??  Ss   Fri05PM  12:17.71 /usr/sbin/coreaudiod

Tôi chạy nó và không thấy gì. Vấn đề là sau khi tôi bắt đầu tắt / khởi động lại, tôi không thể chạy bất kỳ lệnh nào. Ngoài ra, vấn đề không xuất hiện luôn, vì vậy tôi sẽ phải kiểm tra vấn đề này thường xuyên hoặc viết một tập lệnh để lưu thông tin trong một tệp để sau khi tắt / khởi động lại có vấn đề, tôi có thể quay lại tệp đó và xem có gì xuất hiện không . Nhưng đó có vẻ là một điểm khởi đầu tốt, cảm ơn rất nhiều!
lupincho

1

Tôi đã từng gặp vấn đề này và đã tìm ra cách khắc phục hiệu quả với tôi. Mặc dù tôi không trực tiếp trả lời câu hỏi của bạn (cách kiểm tra nguyên nhân gây ra sự cố), nhưng đây là một cách khắc phục có thể đáng để thử:

  1. Điều hướng đến "Macintosh HD> Thư viện"
  2. Xóa thư mục có tên "Java"
  3. Thùng rác
  4. Tắt
  5. Khi bạn chạy mọi thứ liên quan đến Java, bạn sẽ được nhắc cài đặt lại Java, hãy làm điều đó.

Sau đó, thời gian tắt máy sẽ được cải thiện. Lưu ý: Tôi vẫn bị tắt máy chậm khi tắt máy ngay sau khi hệ thống khởi động, vì vậy sau khi bạn làm theo các bước và muốn kiểm tra, hãy đợi vài phút sau khi hệ thống khởi động trước khi tắt.


Nó thật thú vị; đã làm điều đó, hãy xem những gì xảy ra. Vấn đề là nó không xảy ra mọi lúc, vì vậy cách duy nhất để xác minh là chờ vài ngày và nếu nó không xảy ra lần nữa, điều này có thể có nghĩa là nó đã được sửa.
lupincho

Nó không hoạt động, chỉ có một vấn đề tắt máy.
lupincho

1
  1. Bạn có thiết bị ngoại vi nào được kết nối (USB, FW, v.v.) không?

Nếu vậy, sẽ rất thú vị khi ngắt kết nối mọi thứ và xem vấn đề có tồn tại không.

  1. Bạn đã thử sửa chữa quyền và kiểm tra tính toàn vẹn của tệp chưa?

Hy vọng những sự giúp đỡ này.


Tôi đã sửa chữa quyền. Không có thiết bị ngoại vi, thậm chí không có cáp ethernet. Sẽ thêm thông tin đó vào câu hỏi.
lupincho

Thiết bị ngoại vi - luôn luôn tốt để xem xét khi (như trong câu hỏi của lupincho) có mùi hương của một vấn đề với I / O. Quyền - IMHO không bao giờ có khả năng ngăn chặn việc tắt HĐH. Sự tan rã - có thể, nhưng với tôi câu hỏi ở dạng hiện tại của nó có mùi nhiều hơn với một vấn đề với phần mềm. (Lưu ý bên lề, về tính toàn vẹn: Tôi có thể sử dụng phần mềm nguồn mở hoặc miễn phí nào với phần cứng Mac để xác minh tính toàn vẹn của mọi khối đĩa nơi Core Storage được sử dụng? - quá nhiều công nghệ hiện tại, cuối cùng nó sẽ ngưng tụ nhiều thứ đơn giản hơn.)
Graham Perrin

1

Một số ý tưởng khác:

  1. Tạo một tài khoản người dùng khác. Chỉ đăng nhập như tài khoản thử nghiệm này. Nếu bạn không gặp vấn đề gì, nó có thể là một cái gì đó trong phần mềm người dùng của bạn. Nếu bạn có vấn đề, có thể đó là phần cứng.

  2. Cố gắng tạo lại vấn đề chỉ bằng cách sử dụng năng lượng pin.

  3. Làm theo các bước cho bộ điều khiển quản lý hệ thống của Apple -

Đặt lại Bộ điều khiển quản lý hệ thống (SMC) Đặt lại SMC trên các thiết bị di động Mac bằng pin bạn có thể tháo

Tắt máy tính. Ngắt kết nối bộ điều hợp nguồn MagSafe khỏi máy tính, nếu nó được kết nối. Tháo pin. Nhấn và giữ nút nguồn trong 5 giây. Nhả nút nguồn. Kết nối lại pin và bộ chuyển đổi điện MagSafe. Nhấn nút nguồn để bật máy tính.


Bình chọn chủ yếu cho ý tưởng của bạn (1). Đối với ý tưởng (2), với các triệu chứng như được mô tả hiện tại, cá nhân tôi sẽ không nghi ngờ bất kỳ sự khác biệt nào với năng lượng pin một mình. Tuy nhiên, các vấn đề như lupincho rất khó chẩn đoán nếu không truy cập trực tiếp vào nên đây không phải là ý kiến ​​tồi. Ý tưởng (3), các vấn đề được giải quyết bằng cách thiết lập lại là (đối với tôi) cực kỳ hiếm gặp nhưng một lần nữa, đó không phải là ý tưởng tồi - thực hiện nhanh chóng và đơn giản để điều này cũng giúp tôi có được phiếu bầu.
Graham Perrin

1

Tôi không nhận ra bạn có Little Snitch đang chạy. Tôi chỉ giải quyết một vấn đề tương tự cho một người bạn, bằng cách loại bỏ LS. Tôi đề nghị bạn thử điều đó. Để loại bỏ đúng, tải xuống trình cài đặt LS một lần nữa. Chạy trình cài đặt, nhưng chọn gỡ cài đặt.

Tôi cũng tò mò tại sao bạn muốn sử dụng ứng dụng này ..



Xin vui lòng: máy tính của bạn của bạn đã chạy Lion hay Mountain Lion? Phiên bản nào của Little Snitch đã được gỡ cài đặt?
Graham Perrin

1
Đó là Sư tử. Tôi không biết phiên bản LS .. xin lỗi.
David DelMonte

1
Không có bằng chứng nào cho thấy LS gây ra điều đó và thật không may, bởi vì vấn đề không xảy ra mỗi lần, việc kiểm tra điều này với LS bị loại bỏ sẽ mất vài ngày trong đó tôi không thể mất LS. Đối với lý do để chạy LS: có quá nhiều chương trình gọi điện về nhà và đó chỉ là một cấp độ kiểm soát khác cho lưu lượng đi. Điều cuối cùng tôi sẽ làm là nâng cấp lên phiên bản 3 khi nó được phát hành chính thức.
lupincho

Đối với mục đích khắc phục sự cố, Little Snitch có thể được đối xử khác với các KEXT bên thứ ba khác vì ít nhất hai lý do: (i) độ chính xác của tải và (ii) vị trí của nó trong miền Hệ thống tại /System/Library/Extensions. Với tín dụng cho David tôi đã thêm một phần vào câu trả lời của tôi.
Graham Perrin

0

Bạn gái của tôi đã đơn thuần xóa các thư mục tương tự bằng cách kéo và thả thư mục vào thùng rác và đổ rác. Tuy nhiên, tôi đã tìm thấy song song một lần nữa trong thư mục Thư viện và có một tập lệnh shell (tệp .sh) để gỡ cài đặt đúng cách. Điều này đã làm việc và giải quyết các vấn đề khởi động dài của chúng tôi.

Tôi đề cập đến điều này bởi vì song song là nguyên nhân được biết đến của nhiều khởi động chậm và có vẻ như việc gỡ cài đặt không dễ dàng như trang web của họ chỉ ra (chỉ cần kéo và thả thư mục).

Những con đường mòn hạnh phúc, hy vọng điều này sẽ giúp ai đó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.